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.