Skip to main content
Evaluations run metric-based quality checks on your AI outputs. Unlike Failure Analysis which classifies root causes, evaluations give you numeric scores for specific quality dimensions.

Quick start


Full evaluate() signature

Dataset item format


Available metrics

Heuristic metrics (fast, no LLM needed)

LLM-based metrics (uses LLM judge)

LLM-based metrics use OpenAI GPT-4o by default. You can use your own key via the openai_api_key parameter or VALIQOR_OPENAI_API_KEY env var. See BYOK.

Evaluate from a trace

If you have a captured trace, evaluate it directly:
evaluate_trace() takes a trace dict (the full JSON object), not a trace ID string. Load the trace data first using client.trace_query.get_full_trace() or from a local file.

Async evaluation

For large datasets (≥20 rows or ≥5 LLM metrics), use explicit async:
Even with evaluate() (not async), the backend may decide to process asynchronously for large datasets. The SDK handles this transparently — it auto-polls until the result is ready.

Reading results

Overall score

Per-metric scores

Per-item details


Compare runs


Project metrics management


CLI


Evaluation Model →

How LLM judges score, thresholds, and metric details.

Failure Analysis →

Go beyond metrics — find root causes.