跳转到主要内容

Installation

pip install "rail-score-sdk" langfuse

Usage

from rail_score_sdk import RailScoreClient
from langfuse import Langfuse

rail = RailScoreClient(api_key="YOUR_RAIL_API_KEY")
langfuse = Langfuse()

def evaluate_and_log(prompt: str, response: str, trace_id: str):
    # Score the response
    result = rail.eval(content=response, mode="basic")

    # Log RAIL scores as Langfuse scores
    for dim, scores in result.dimension_scores.items():
        langfuse.score(
            trace_id=trace_id,
            name=f"rail_{dim}",
            value=scores.score,
            comment=f"Confidence: {scores.confidence}",
        )

    langfuse.score(
        trace_id=trace_id,
        name="rail_overall",
        value=result.rail_score.score,
    )

    return result

RAILLangfuse wrapper

from rail_score_sdk.integrations import RAILLangfuse

client = RAILLangfuse(
    rail_api_key="YOUR_RAIL_API_KEY",
    langfuse_public_key="pk-lf-...",
    langfuse_secret_key="sk-lf-...",
    auto_score=True,  # Automatically log scores for every eval
)
RAIL dimension scores appear as individual score entries in Langfuse traces, making it easy to filter and compare responsible AI quality across sessions.