All Field Notes
Field note 03

Evals before scale

Decide what "good enough" means, measure it on real cases, and write the release rule down before the results come in.

The problem

Agent demos are convincing. Ten good examples in a meeting say nothing about the thousand emails a week the system will see in production, and nothing about the rare cases that carry the most risk.

Without an eval set, every model or prompt change is a judgment call, and the loudest opinion in the room wins.

How it works

  1. Golden datasetlabeled by experts
  2. Run candidate
  3. Score + sliceper category
  4. LLM judgechecked vs people
  5. Release rule
  6. Promote or hold
AgentToolGateHuman

A golden dataset from real work

Historical cases labeled by the specialists who do the job, with rare and high-risk cases over-represented on purpose. It grows every week from approvals, edits and rejections at the human gate.

Slice, do not average

Report results per category and per risk level. A version that is better on average and worse on closures is not better.

LLM-as-judge, with a judge for the judge

A model scores free-text output against a rubric, which makes evaluating drafts affordable. A sample of its scores is compared to specialist ratings every run, and disagreements drive rubric changes.

The release rule comes first

Promotion criteria are agreed with risk partners before the eval runs: minimum accuracy per slice, no regression on high-risk categories, judge agreement above a floor. The eval then answers a yes-or-no question instead of starting a debate.

See it run

Pick a scenario and step through it. When the run reaches a decision, you make the call.

Illustrative run · scripted example

A new classifier version beats the old one on average. The eval run shows where it does not.

    Where it breaks

    A stale golden set

    If the eval set stops reflecting real traffic, the system can pass every test and still fail in production. Refresh it from the human gate continuously.

    Teaching to the test

    Iterating on prompts until the golden set passes overfits to it. Keep a held-out slice nobody tunes against.

    Trusting the judge blindly

    An LLM judge shares blind spots with the model it is grading. Its agreement with people has to be measured, not assumed.

    In practice

    I have defined evaluation methods for agentic work built on golden datasets and LLM-as-judge scoring, so agent quality is measured before anyone talks about scaling.

    The same discipline applies to request classification: each new model version is scored per category against labeled examples before it routes real requests.