Evaluation and Objectives¶
Evaluators¶
evaluators ¶
Built-in evaluator helpers and optional third-party integrations.
MetricScorer
module-attribute
¶
MetricEvaluator ¶
MetricEvaluator(name: str, scorer: MetricScorer, *, status: ValueStatus = EXACT)
Adapt one synchronous or asynchronous numeric scorer to an evaluator.
Source code in src/tunarag/evaluators.py
evaluate
async
¶
evaluate(output: Any, example: Any) -> Sequence[MetricValue]
Score one adapter output and evaluation example.
Source code in src/tunarag/evaluators.py
fingerprint ¶
Return stable configuration used by study and cache identity.
RagasEvaluator ¶
RagasEvaluator(metrics: Sequence[Any], sample_mapper: RagasSampleMapper, *, metric_prefix: str = 'ragas.', llm: Any = None, embeddings: Any = None, raise_exceptions: bool = False)
Evaluate one sample with optional RAGAS metrics without hard coupling.
Source code in src/tunarag/evaluators.py
evaluate
async
¶
evaluate(output: Any, example: Any) -> Sequence[MetricValue]
Map and evaluate exactly one sample through RAGAS's async API.
Source code in src/tunarag/evaluators.py
fingerprint ¶
Return secret-safe semantic integration configuration.
Source code in src/tunarag/evaluators.py
Objectives¶
objective ¶
Objective aggregation for quality, cost, and latency metrics.
ObjectiveDirection ¶
ObjectiveTerm
dataclass
¶
ObjectiveTerm(metric: str, weight: float = 1.0, direction: ObjectiveDirection = MAXIMIZE, minimum: float | None = None, maximum: float | None = None)
One weighted metric contribution to an objective score.
direction
class-attribute
instance-attribute
¶
direction: ObjectiveDirection = ObjectiveDirection.MAXIMIZE
ObjectiveResult
dataclass
¶
ObjectiveResult(score: float | None, status: ValueStatus)
Aggregated score and confidence state.
Objective
dataclass
¶
Objective(terms: tuple[ObjectiveTerm, ...])
Combine metric observations into a benefit-oriented weighted score.
evaluate ¶
evaluate(metrics: Sequence[MetricValue]) -> ObjectiveResult