Jump to content

Connect Leeroopedia MCP: Equip your AI agents to search best practices, build plans, verify code, diagnose failures, and look up hyperparameter defaults.

Implementation:Explodinggradients Ragas RagasTracer Callbacks

From Leeroopedia


Knowledge Sources
Domains Tracing, Callbacks
Last Updated 2026-02-10 00:00 GMT

Overview

Callback and tracing system for Ragas evaluations built on LangChain's callback infrastructure, enabling hierarchical trace collection.

Description

This module provides RagasTracer (a LangChain BaseCallbackHandler) that traces chain execution, recording parent-child relationships and run metadata. ChainRun and MetricTrace models store trace data. The new_group function creates callback manager groups for evaluation chains. parse_run_traces converts hierarchical traces into flat metric trace lists.

Usage

Use RagasTracer as a callback handler when running evaluations to collect execution traces for debugging or observability.

Code Reference

Source Location

Signature

def new_group(
    name: str,
    inputs: Dict[str, Any],
    callbacks: Callbacks,
    tags: Optional[List[str]] = None,
    metadata: Optional[Dict[str, Any]] = None,
) -> Tuple[CallbackManagerForChainRun, CallbackManagerForChainGroup]:
    ...

@dataclass
class RagasTracer(BaseCallbackHandler):
    traces: Dict[str, ChainRun] = field(default_factory=dict)
    def on_chain_start(self, serialized, inputs, *, run_id, parent_run_id=None, tags=None, metadata=None, **kwargs):
        ...
    def on_chain_end(self, outputs, *, run_id, **kwargs):
        ...
    def to_jsons(self) -> str:
        ...

def parse_run_traces(traces: Dict[str, ChainRun], parent_run_id: Optional[str] = None) -> List[Dict[str, Any]]:
    ...

Import

from ragas.callbacks import RagasTracer, new_group, parse_run_traces

I/O Contract

Inputs

Name Type Required Description
name str Yes Name for the evaluation chain group
inputs Dict[str, Any] Yes Initial inputs for the chain
callbacks Callbacks Yes LangChain callback configuration

Outputs

Name Type Description
new_group returns Tuple[CallbackManagerForChainRun, CallbackManagerForChainGroup] Callback managers for the chain
to_jsons returns str JSON-serialized traces
parse_run_traces returns List[Dict[str, Any]] Flat list of metric traces

Usage Examples

from ragas.callbacks import RagasTracer

# Create tracer and use it during evaluation
tracer = RagasTracer()
# Pass tracer as a callback to evaluation functions
# After evaluation, inspect traces:
print(tracer.to_jsons())

Related Pages

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment