Error analysis
CoreRead your system's real outputs and turn failures into a labelled taxonomy. The highest-leverage activity in AI engineering.
Concepts
Look at your dataReview 100+ real traces by hand; criteria can't be theorized, only discovered (Shankar).
The single highest-leverage activity in AI engineering is also the least glamorous: sit down and read your system's real outputs, one trace at a time. You cannot decide what to measure by theorizing in a meeting. The failure modes that actually matter only become visible once you have read a hundred or more real interactions. Teams that skip this step reliably build elaborate metrics that miss the failures their users actually hit.
Sources
Open and axial codingFree-label failures, then group them into a structured taxonomy.
A technique borrowed from qualitative research. First you open-code: read each failing trace and write a short, free-form label for what went wrong, with no fixed categories. Then you axial-code: cluster those labels into a structured taxonomy of failure modes. The output is a concrete, prioritized list of what your evaluators need to catch, grounded in evidence rather than guesswork.
Sources
Theoretical saturationKeep reading traces until new ones stop adding failure modes.
The stopping rule for error analysis. You keep reading and coding traces until new ones stop revealing new failure modes; at that point you have a representative picture and further reading has diminishing returns. In practice this is often around a hundred traces, but the real number is whatever it takes to reach saturation for your system.
Sources
Technologies
Annotation toolingA spreadsheet or trace viewer to label outputs fast.
The interface you use to review and label traces quickly. It can be as simple as a spreadsheet, but a purpose-built viewer that shows the full input, output, and context with one-keystroke labeling dramatically speeds up error analysis. Many teams build a small custom annotation app, because off-the-shelf tools rarely fit their data exactly.
Sources
Langfuse / BraintrustCapture traces and attach human labels in one place.
Platforms that capture production traces and let you attach human labels and datasets in one place, turning ad-hoc review into a repeatable workflow. They store the traces error analysis depends on and double as the home for your eval datasets and judge runs.
Sources
In production
The discipline that separates a shipped system from a demo.
Spend 60-80% hereMost of the work is understanding failures, not building automated checks (Husain).
A reframing of where the work is. Across experienced teams, most development effort on an AI product goes into understanding failures by looking at data, not into building automated checks or tweaking prompts. If you are spending the bulk of your time on anything else, you are probably optimizing the wrong thing.
Sources
Two experts, one verdictA good eval case is one where two domain experts independently agree pass/fail (Anthropic).
A quality bar for eval cases. A good evaluation task is one where two domain experts, judging independently, would reach the same pass/fail verdict. If they disagree, the criterion is ambiguous and no automated judge will do better; tighten the definition before you try to automate it.
Sources