InterviewsVector
Arc 9
Failure labAdvanced115 min estimateOriginal publication

Calibrate LLM Judges

Treat an LLM judge as a fallible, versioned measurement instrument: define its rubric, compare it with governed human references, perturb irrelevant features, repeat decisions, and escalate where validity breaks.

Authorship
InterviewsVector
Published / updated
2026-09-22 / 2026-09-22
Review status
Artifact tests passing · primary sources recorded

Original InterviewsVector teaching. Executable artifacts are deterministic illustrative audits with focused tests and recorded primary or official sources; they do not certify dataset quality, judge validity, product safety, or release fitness.

The decision in one pass

An LLM judge is useful only for a bounded task distribution and rubric that you have measured. Build a human reference set with qualified independent reviewers, retained disagreement, adjudication, and an abstention path. Bind the judge model, prompt, rubric, decoding, candidate identities, and input presentation. On the same cases, compare judge verdicts with human labels; swap candidate order to expose position effects, vary irrelevant length while holding quality judgment fixed to probe verbosity preference, include outputs from the judge family and other generators to probe self-preference, and repeat identical trials to measure variance. Report metrics by slice and difficulty, not only overall agreement, and do not interpret agreement as human correctness. Set thresholds and escalation before viewing results. Recalibrate after model, prompt, rubric, candidate mix, language, or task drift. Route high-stakes cases, ties, malformed evidence, and out-of-scope inputs to humans or deterministic checks. Never let the judge grade its own fitness using the same unprotected evidence.

Why this matters

Model judges can scale review and express nuanced rubrics, but they also share failure modes with the systems they score. A judge may prefer the first answer, longer prose, familiar style, or its own model family; it may vary across identical calls and agree with humans only on easy cases. Without calibration, the evaluation pipeline can reward artifacts of presentation while presenting precise-looking numbers as objective quality.

You will be able to

  • Specify a bounded judge task, rubric, version identity, abstention behavior, and authority limit.
  • Build governed human references and distinguish agreement measurement from human infallibility.
  • Measure order sensitivity, repetition variance, verbosity preference, and self-preference with controlled probes.
  • Slice calibration by task, language, difficulty, candidate family, and risk instead of relying on one aggregate.
  • Define thresholds, escalation, monitoring, and recalibration triggers for production evaluator use.

Your Vector Loop for this lab

  1. 01

    Model

    Map the judged construct, rubric, human reference process, candidate families, presentation variables, model version, and downstream authority.

  2. 02

    Derive

    Derive agreement, position, repetition, verbosity, self-preference, slice, abstention, and escalation measurements before collecting verdicts.

  3. 03

    Build

    Build content-bound human references and repeated counterbalanced observations with deterministic integer-rate calculations.

  4. 04

    Stress

    Swap positions, perturb irrelevant length, expose generator identity, repeat identical trials, weaken references, cross scopes, and bypass constructors.

  5. 05

    Operate

    Monitor agreement and bias metrics by slice and version, reference drift, abstention, cost, latency, overrides, and downstream decision errors.

  6. 06

    Defend

    Defend where the judge may assist, where it must abstain, and why a local calibration pass neither replaces humans nor proves absence of bias.

Treat the judge as a measurement instrument

A judge prompt converts an input, candidate output, and rubric into a verdict. That is a measurement procedure, not an oracle. Its validity is local to the construct, task distribution, candidate range, language, context, and version tested. A judge calibrated on short English support answers does not automatically transfer to code patches, medical advice, long tool trajectories, or adversarial policy decisions.

Instrument componentVersion explicitlyDrift consequence
judge model and provider behaviormodel snapshot and serving settingsverdict distribution may move
rubric and promptexact text, examples, output schemaconstruct or scoring boundary changes
presentationcandidate order, labels, context, truncationirrelevant features influence preference
candidate populationsystems, styles, languages, difficultyagreement may not transfer
human referencereviewers, policy, adjudication, datecalibration target itself changes

Build a human reference the judge cannot define

Use reviewers qualified for the task and policy, label independently, blind candidate identity where feasible, allow ties and abstentions, and retain individual votes before adjudication. Include the context a production reviewer would need. The reference should be assembled independently of the judge under test; otherwise the judge can teach humans its own preferences and manufacture agreement.

  • Write operational rubric dimensions with positive, negative, and boundary examples before reviewing candidate scores.
  • Measure inter-reviewer disagreement and investigate whether it concentrates by slice, difficulty, or policy ambiguity.
  • Adjudicate with a named process and preserve original votes, reasons, and invalid-case flags.
  • Keep a protected calibration partition distinct from judge-prompt development and threshold tuning.
  • Treat human labels as governed evidence with uncertainty, not metaphysical truth.

judge–human agreement ≠ human accuracy ≠ construct validity

Agreement is necessary evidence for some uses, but both parties can share a blind spot and a valid construct can admit plural judgments. Pair agreement with task outcomes, perturbation tests, and domain review.

Change irrelevant features and demand stable judgment

ProbeControlled changeFailure signal
positionswap A/B presentation while preserving candidate identitycanonical winner changes
repetitionrerun identical request and settingsverdict changes beyond allowed variance
verbositycompare a human-preferred concise answer with an inferior longer answerjudge selects length over quality
self-preferenceinclude judge-family and external outputs with human labelsjudge over-selects its family against reference
stylealter formatting or tone without changing rubric contentverdict follows surface form

Counterbalancing requires canonical candidate identities. If `a` means the left slot in one run and the same literal `a` means a different response after swapping, the analysis will confuse position with quality. Record the stable candidate, its generator, token count, content digest, displayed position, repetition, and verdict separately.

Probe a judge before trusting its score

Compare declared human labels with repeated pairwise verdicts while swapping answer position, length, and generator identity. Isolate disagreement, position flips, variance, verbosity preference, and self-preference without calling a live judge.

Diagnose the judge before trusting its grade

Compare synthetic model-judge behavior with held-out human labels. Identify whether position, verbosity, disagreement, or a bounded calibration result should control the next step.

Calibration probe

The labels and agreement rates are illustrative. A calibrated judge supplies evidence; it does not replace accountable review.

Judge-calibration evidence
SignalDecision contractObserved evidence
A shown firstOrder should not change the preferred answerA wins 78 of 100 pairs
B shown firstOrder should not change the preferred answerB wins 69 of 100 pairs
Human referenceStable adjudicated labelA is preferred in 61 pairs
Order sensitivityAbsolute flip rate ≤ 0.050.31

Synthetic evidence only. The decision remains hidden until you check a prediction.

What is the defensible next step?

Choose an outcome before checking the evidence contract.

Measure failure modes separately before composing policy

Overall agreement can remain high while a small critical slice fails or position effects cancel in aggregate. Report confusion matrices or preference outcomes, ties, abstentions, agreement, and bias probes by task, language, risk, candidate family, length gap, and quality gap. Include support and uncertainty. Prespecify thresholds on a calibration set, then verify them on protected evidence rather than choosing the friendliest metric after inspection.

bias_rate = failures_on_valid_controlled_opportunities / controlled_opportunities

Define the denominator. A verbosity-bias rate should use cases where the human reference prefers the shorter candidate; it is not the fraction of all judged answers that happen to be long.

Audit declared agreement without calling a judge

judge_calibration.py
1def audit_calibration(contract: object, snapshot: object) -> CalibrationReport:
2 """Measure declared judge behavior without calling a judge or mutating inputs."""
3 checked_contract = _rebuild_contract(contract)
4 checked_snapshot = _rebuild_snapshot(snapshot)
5 if checked_snapshot.scope != checked_contract.scope:
6 raise ValueError("snapshot belongs to another scope")
7 if checked_snapshot.contract_content_id != checked_contract.content_id:
8 raise ValueError("snapshot is not bound to this contract content")

Expected output

example=illustrative_only
calibration_id=judge-calibration@sha256:27575a4cb05907995935c4ba3c8e7e96c9614d1504a90442d48060067f7ce2f1
cases=4;observations=16
human_agreement_bps=10000
position_flip_bps=0;repeat_variance_bps=0
verbosity_bias_bps=0;self_preference_bps=0
decision=PASS_CALIBRATION
claim=LOCAL_DECLARED_LABEL_AUDIT_NOT_JUDGE_VALIDATION

Verify: python3 -m unittest discover courses/ai-engineering/reference-impl/judge_calibration

The invented snapshot has four adjudicated human references and sixteen observations: both candidate orders with two repetitions per case. Stable candidate identities let the harness calculate integer basis-point rates for human agreement, position flips, repeated-run variance, verbosity errors on eligible opportunities, and self-preference when the human reference favors the other generator.

The harness reconstructs frozen records, copies caller-owned collections, enforces exact order/repetition coverage, stable candidate metadata, judge identity, review support, content and scope binding, exact integer and boolean types, string-subclass rejection, bounded values, unique keys, and constructor-bypass defenses. Its perfect fixture is deliberately illustrative. It calls no model, authenticates no reviewer, estimates no confidence interval, validates no provider, and does not prove that the judge is unbiased or production-ready.

Limit judge authority and route uncertainty

ConditionSafe dispositionWhy
deterministic propertyuse code or a trusted parseravoid probabilistic judgment where a specification exists
in-scope calibrated comparisonuse judge with logged evidence and auditsscalable assistance is supported locally
tie, abstention, malformed outputretry within policy or send to humansilence is not a negative label
high-stakes or novel slicerequire qualified human or independent controlcalibration does not cover the decision
calibration driftpause automated use and recalibratehistorical thresholds no longer support authority

The judge should emit bounded structured evidence, not directly release models, deny users, or rewrite labels. Downstream policy owns how verdicts combine with deterministic checks and human review. Log rubric and judge versions, candidate identities, presentation order, verdict, abstention, latency, cost, and escalation outcome with privacy-aware retention.

Recalibrate when the measurement environment changes

Trigger recalibration after judge model or prompt changes, rubric revisions, candidate-family shifts, new languages, material length changes, product-policy updates, or unexplained production disagreement. Use a stable anchor set for comparability and fresh protected cases for leakage resistance. Investigate metric movement by slice before changing the threshold; a global threshold adjustment can hide that one population is no longer measured reliably.

  • Monitor judge–human agreement, position consistency, repeated-run stability, verbosity and self-preference opportunities, ties, and abstentions by slice.
  • Track human overrides and downstream errors so calibration predicts the decisions it is meant to support.
  • Budget reviewer capacity for ambiguous and high-risk cases; automation that creates an unserviceable escalation queue will fail open in practice.
  • Retain a rollback to deterministic checks or human review when cost, latency, drift, or provider change violates the operating contract.

Operate at three altitudes

Production lens

  • — Bind judge model, prompt, rubric, decoding, candidates, presentation, human reference, and threshold policy to every calibration and production verdict.
  • — Monitor agreement, ties, abstention, order consistency, repetition stability, verbosity and self-preference probes, overrides, latency, and cost by meaningful slice.
  • — Keep deterministic checks and qualified human review in the control plane; judge verdicts are evidence inputs with explicit authority limits.

Staff lens

  • — Approve model-judge use per decision and task distribution, not as a platform-wide claim that one model is a universal evaluator.
  • — Fund protected human-reference creation and recurring calibration as ongoing operations; cheap verdict generation does not make valid labels free.

Interview defense

A team wants to replace most human evaluation with an LLM judge. How would you validate and operate it?

I would bound the exact construct, tasks, languages, candidate families, rubric, and downstream authority. Qualified humans would independently label a protected reference set with ties, abstentions, retained disagreement, and adjudication. I would content-bind judge model, prompt, decoding, presentation, and candidates. On paired cases I would measure judge–human agreement by slice, swap candidate order, repeat identical trials, test concise human-preferred answers against inferior verbose ones, and compare judge-family outputs with external outputs for self-preference. I would report denominators and uncertainty, choose thresholds and escalation before protected results, and reserve deterministic checks for specifiable properties. The judge would emit evidence, not release decisions. I would monitor drift, overrides, abstention, cost, and production disagreement and recalibrate on model, rubric, task, language, or candidate-distribution changes.

Expect the interviewer to press on

  • — How do you distinguish position bias from sampling variance?
  • — What does high judge–human agreement fail to prove?
  • — When is a deterministic grader preferable to an LLM judge?

Misconceptions to remove

“A strong general model is automatically a strong judge.”

Judge validity is local to the rubric, task, candidate distribution, presentation, and version. It must be measured against independent evidence.

“High agreement with humans proves objective correctness.”

Agreement can coexist with shared blind spots, ambiguous constructs, or biased references. Preserve disagreement and connect calibration to task outcomes.

“Swapping answer order once removes position bias.”

Counterbalancing reveals sensitivity; it does not guarantee a corrected verdict. Repeat, measure, slice, and define escalation for inconsistent cases.

Check your model

1. Why record stable candidate identities separately from displayed position?

Otherwise an A/B swap can relabel the underlying answers and make a position flip indistinguishable from a genuine preference change.

2. What is the denominator for the artifact's verbosity-bias rate?

Controlled observations where the human reference prefers the shorter candidate. The error is selecting the longer candidate on those opportunities.

3. When must a judge be recalibrated?

After material changes to judge model or prompt, rubric, candidate population, task or language mix, policy, presentation, or observed production agreement.

Prove the mechanism

Extend the harness with an explicit `abstain` verdict and a maximum abstention threshold. Decide how abstentions affect agreement and bias denominators, add tests for missing and excessive abstention, and keep the result claim strictly local to declared observations.

Add a production constraint

Design a protected calibration study for a multilingual pairwise judge. Specify sampling, reviewer qualifications, counterbalancing, repeats, candidate-family controls, slice thresholds, uncertainty, multiple-comparison caution, escalation, and a rollout plan that cannot let the candidate judge grade its own promotion.

Artifact: Calibrated judge agreement harness

courses/ai-engineering/reference-impl/judge_calibration/judge_calibration.py

Download reference implementation

Primary references and next links

References

  1. 1. Judging LLM-as-a-Judge with MT-Bench and Chatbot Arena

    Zheng et al.. Primary paper studying human agreement and limitations including position, verbosity, and self-enhancement biases.

  2. 2. G-Eval

    Liu et al.. Primary paper evaluating an LLM-based NLG grader against human judgments and discussing preference for LLM-generated text.

  3. 3. Judging the Judges

    Shi et al.. Primary systematic study of repetition stability, position consistency, and preference fairness in LLM judges.

  4. 4. Self-Preference Bias in LLM-as-a-Judge

    Wataoka et al.. Primary study proposing a quantitative self-preference measure and investigating familiarity as a possible mechanism.

Continue through the graph

Glossary: LLM-as-a-judge · human reference · position bias · verbosity bias · self-preference · repetition stability · counterbalancing · calibration drift