Skip to main content

Opik integration adapter for Metrics Computation Engine

Project description

MCE Opik Adapter

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

Installation

Install via MCE extras:

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

Prerequisites

Supported Opik Metrics

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

Metric Name Description
Hallucination Evaluates whether the model response contains hallucinations
Sentiment Measures the sentiment of a model response

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

Usage

Basic Usage

import asyncio
from mce_opik_adapter.adapter import OpikMetricAdapter
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 Opik metrics
registry = MetricRegistry()

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

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

Using with MCE REST API

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

{
  "metrics": [
    "opik.Hallucination",
    "opik.Sentiment"
  ],
  "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_opik_adapter-0.1.4.tar.gz (388.1 kB view details)

Uploaded Source

Built Distribution

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

mce_opik_adapter-0.1.4-py3-none-any.whl (9.2 kB view details)

Uploaded Python 3

File details

Details for the file mce_opik_adapter-0.1.4.tar.gz.

File metadata

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

File hashes

Hashes for mce_opik_adapter-0.1.4.tar.gz
Algorithm Hash digest
SHA256 9acd581c2aa85a5aeb6fa86ddf7134f0046b3706cd1702a06e6aeef0c06f5b1a
MD5 4d61530257fdd0142456a810cf013bf7
BLAKE2b-256 70096248661c10c6c12605e9125bc3d00732918f1f2c211d6d426f2c290cb397

See more details on using hashes here.

File details

Details for the file mce_opik_adapter-0.1.4-py3-none-any.whl.

File metadata

File hashes

Hashes for mce_opik_adapter-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 7fcdcab86518e3ed3b115a1228a101ebd4ffdb4da05f53b012154ba52357df3e
MD5 fb7d3caed918e70645f60346c357e23e
BLAKE2b-256 9a027344ea40fe855d4b48017933566af0ba8922907317432b11710e156b2869

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