Skip to main content

RAGAS integration adapter for Metrics Computation Engine

Project description

MCE Ragas Adapter

A Python adapter library that integrates Ragas metrics as third-party plugins for the Metric Computation Engine (MCE). This adapter enables seamless use of Ragas's LLM evaluation metrics within the MCE framework for evaluating agentic applications.

Installation

Install via MCE extras:

pip install "metrics-computation-engine[ragas]"

Prerequisites

Supported Ragas Metrics

The following Ragas metrics are supported by this adapter (use with the ragas. prefix in service payloads):

Metric Name Description
TopicAdherenceScore Evaluates whether the model response adheres to the intended topic

For requests to support additional Ragas metrics, please file an issue in our repo: agntcy/telemetry-hub.

Usage

Basic Usage

import asyncio
from mce_ragas_adapter.adapter import RagasMetricAdapter
from metrics_computation_engine.models.requests import LLMJudgeConfig
from metrics_computation_engine.registry import MetricRegistry

# Initialize LLM configuration
llm_config = LLMJudgeConfig(
    LLM_BASE_MODEL_URL="https://api.openai.com/v1",
    LLM_MODEL_NAME="gpt-4o",
    LLM_API_KEY="your-api-key-here"
)

# Create registry and register Ragas metrics
registry = MetricRegistry()

# Method 1: Direct registration with metric name
registry.register_metric(RagasMetricAdapter, "TopicAdherenceScore")

# Method 2: Using get_metric_class helper with prefix
from metrics_computation_engine.util import get_metric_class
metric, metric_name = get_metric_class("ragas.TopicAdherenceScore")
registry.register_metric(metric, metric_name)

Using with MCE REST API

When using the MCE as a service, include Ragas metrics in your API request:

{
  "metrics": [
    "ragas.TopicAdherenceScore"
  ],
  "llm_judge_config": {
    "LLM_API_KEY": "your-api-key",
    "LLM_MODEL_NAME": "gpt-4o",
    "LLM_BASE_MODEL_URL": "https://api.openai.com/v1"
  },
  "data_fetching_infos": {
    "batch_config": {
      "time_range": { "start": "2024-01-01T00:00:00Z", "end": "2024-12-31T23:59:59Z" }
    },
    "session_ids": []
  }
}

Contributing

Contributions are welcome! Please follow these steps to contribute:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature-branch).
  3. Commit your changes (git commit -am 'Add new feature').
  4. Push to the branch (git push origin feature-branch).
  5. Create a new Pull Request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mce_ragas_adapter-0.1.3.tar.gz (223.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mce_ragas_adapter-0.1.3-py3-none-any.whl (13.5 kB view details)

Uploaded Python 3

File details

Details for the file mce_ragas_adapter-0.1.3.tar.gz.

File metadata

  • Download URL: mce_ragas_adapter-0.1.3.tar.gz
  • Upload date:
  • Size: 223.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for mce_ragas_adapter-0.1.3.tar.gz
Algorithm Hash digest
SHA256 37751f8d54a378509f94c981216b0f60dcef5f53e4038a0d5e07ba96f294c1f9
MD5 f6a91fa1eeb434307064de7dd22ec90a
BLAKE2b-256 88a4ea1f4eac168f11ad078882fe216f344a308dc03c6e8dc45f8172abeacfea

See more details on using hashes here.

File details

Details for the file mce_ragas_adapter-0.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for mce_ragas_adapter-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 0141e46441153e81ff7feb3da3633283fbc0f5d73f582416683e5a3ad43316c4
MD5 49a7616a238266d7eaf182a3db7f2f96
BLAKE2b-256 443e12b1a9d140a8bbad97da4cc48e0148521e0eb0c764c1261a5bda86b12ae3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page