Skip to main content
evaluate() returns an EvalRunResult — a summary per metric, one result per case, and where the run reported.

Summary

summary() prints one line per metric:
A boolean score passes or fails on its own value. A numeric score needs a threshold to be judged — without one it’s averaged, and pass=k/n is left off.
Token counts and cost aren’t in the local summary — the platform prices them from the run’s spans and shows them in the UI.

Per-case results

Each item carries case_id, input, output, expected, scores, trace_id, duration_ms, and any error or scorer_errors. A case that hit an error is errored; use case_status(item) / caseStatus(item) to check. The run also exposes counts (case_count, errored, not_scored), the candidate_version it was labelled with, upload_state with the run’s dashboard_url, and dataset — the exact dataset version the run measured.
Evaluation run results table with each case's input, output, expected value and scorer columns

Evaluation run: each case's input, output, expected answer and scores

Upload later

Save a run and upload it afterwards, for when the run happens somewhere without credentials.
upload() rebuilds the reporting destination from the saved run, and keeps its scorers’ thresholds — so a later upload records the same pass and fail results as the original run.

Reading a run later

EvalRunResult is what the process that ran the eval holds. Once the run has reported, the CLI reads it back from anywhere — including a run somebody else started.

Next steps

From the Terminal

Read datasets, evaluations, and past runs with the CLI.

Running Evals

Every option of evaluate(), and where a run reports.

Datasets

Pull a dataset version to reproduce a past run.