Reading Results
AgentEvaluator().run(...) returns an AgentEvalResult. Set an output_dir and it also writes a
run bundle to disk. The object and the bundle hold the same data — use the object for programmatic
follow-up, and the bundle (especially report.html) to inspect or share a run.
The result object
The summary
result.summary (an AgentEvalSummary):
-
summary.scores.scores— the aggregates. Each is named<metric.type>.<output>(andview.<name>for a view), withmean,min,max, andstd_dev. This is what the guides print: -
summary.metric_coverage— per metric output, how many trials weretotal/scored/ failed / missing, so you can tell a low mean from low coverage. -
summary.task_count,summary.trial_count,summary.score_count.
Per-metric scores
Each entry in result.scores carries: id, run_id, task_id, trial_id, metric_type, status
(e.g. completed / failed), outputs (the metric’s named outputs), diagnostics, and metadata.
Use these to drill from an aggregate down to the individual (task, metric) that produced it.
Trials
Each entry in result.trials carries: id, task_id, status (completed / partial / failed),
output (the agent’s final answer), evidence (trajectory, final state, logs), and metadata. Trials
are the durable, scorer-agnostic record — they can be re-scored offline later.
The run bundle
Set output_dir and run() writes these files (the same data, on disk):
report.html is the fastest way to eyeball a run or hand it to someone else; the .jsonl files are
convenient for loading scores and trials into your own tooling.
report.html is written only when AgentEvalRunConfig.write_dashboard is True (the default). Set
write_dashboard=False to emit just the JSON/JSONL artifacts and skip the HTML; the .json and
.jsonl files are always written whenever output_dir is set.