Concepts / Increased Costs and Latency of AI Judges

Increased Costs and Latency of AI Judges

AI judges are probabilistic, so the same judge can score the same input differently when its prompt changes or when it is run again, which undermines reproducibility.

  • Programming

A Score That Moves Without the App Changing

Imagine you are evaluating a chatbot. For each answer it gives, you use an AI judge to score how faithful the answer is to the context it was given, meaning how well the answer sticks to that context. You run the evaluation on Monday and get a number. You run it again on Tuesday on the same answer and get a different number. Nothing in the chatbot changed. So what does the number actually mean?

What do you think happens?

You score the same answer twice with the same AI judge. What do you expect to happen?

  • Both runs return exactly the same score, because the judge is a fixed function

  • The two scores can differ, because AI judges are probabilistic

  • The second score is always more accurate than the first

Reveal answer
Answer:

The two scores can differ, because AI judges are probabilistic.

AI judges are probabilistic, like other AI applications. Their outputs are not fixed functions of their inputs in the way an arithmetic formula is. The same judge can therefore give different scores for the same input across runs, which is why the number needs to be interpreted carefully.

This article follows one chain of reasoning. First, you will trace what happens when the same judge scores the same input more than once. Second, you will see why two tools that share a criterion name still produce numbers that cannot be lined up. Third, you will trace how a change on the judge side can masquerade as a change in the application. Finally, you will practice the checks that should happen before you trust a score trend.

Scoring the Same Answer Twice

A trustworthy evaluation method should give consistent results. If you score the same answer twice and get different numbers, you cannot be sure what the number means, and you cannot reproduce a result that someone else reports. This is the reproducibility problem. The source explains it directly: because AI judges are probabilistic, the same judge can score the same input differently when its prompt changes or when it is run again.

Run 1score 4 (illustrative)Run 2score 5 (illustrative)Run 3score 3 (illustrative)Run 4score 4 (illustrative)rerun on same inputrerun on same inputrerun on same input
When the same judge scores the same input on several runs, what varies between the runs, and how far apart can the scores spread? The scores shown are illustrative, not measured values.

Read the diagram as a sequence. The input never changes between runs, and neither does the criterion. What varies is the judge's output on each pass. The spread between the highest and lowest scores is the amount of noise you would have to see through before a real difference between two systems could be claimed. A single run tells you one draw from that spread, not the judge's verdict.

Why Tools Disagree on Faithfulness

Back to the chatbot. Two tools you are considering, MLflow and Ragas, both offer a built-in faithfulness criterion. It is tempting to assume that a faithfulness score is a faithfulness score, so that results from both tools could sit in one report. The source identifies this assumption as the misconception to correct: a shared criterion name does not guarantee a shared measurement.

The reason is that criterion names are not standardized. Many human-designed metrics follow a standard definition, but AI-as-a-judge metrics generally do not. The open source tools MLflow, Ragas, and LlamaIndex all include a built-in criterion called faithfulness, which asks how faithful a generated output is to the given context. Their instructions to the judge and their scoring systems differ from one another, so their scores cannot be compared directly.

Judging approachgraded judgment of thewhole outputJudging approachstatement by statementJudging approachlenient about partialsupportVerdict rulegraded score for the outputas a wholeVerdict ruleone unsupported claimchanges that statement'sverdictVerdict ruleone supporting passage isenough for YES
How do the three tools differ in how their judge is instructed and what counts as a supported verdict? Each column is one tool's faithfulness criterion.

Read down each column. The MLflow prompt asks for a graded judgment about the output as a whole. The Ragas prompt works statement by statement, so a single unsupported claim changes the verdict for that statement. The LlamaIndex prompt is lenient about partial support, so a single supporting passage is enough for a YES. Each design answers a slightly different question, even though all three are labeled faithfulness. The differences go beyond the number of points on a scale, so you cannot fix the mismatch by simply rescaling one tool's numbers.

For the chatbot, this means a faithfulness score from MLflow and one from Ragas are answers to two different questions about the same answer. A report that mixes them would be combining measurements that were never defined the same way. If you want to compare the tools, you need to run them on the same data and report each result with its tool and configuration attached, rather than treating the labels as interchangeable.

When the Judge Changes, Not the App

The third problem is about time. An application evolves, but its evaluation ideally stays fixed so that metrics can track the application's changes from one period to the next. The difficulty is that AI judges are themselves AI applications, so they can also change over time. Their prompts get edited, their underlying models get swapped, and their behavior shifts. When that happens, a change in the scores may reflect the judge rather than the application.

Consider a coherence score that rose from 90% last month to 92% this month. The natural reading is that the application became more coherent. That conclusion holds only if the judge is exactly the same in both months. The judge's prompt might have been replaced with a slightly better-performing version, or a small edit to the prompt might have made the judge more lenient. In either case, the 2-point rise could come entirely from the judge.

Application versionunchangedApplication versionunchangedJudge promptprompt v1Judge promptprompt v2Coherence score90%Coherence score92%evaluated byproducesevaluated byproduces
When the score trend moves after a judge or prompt update, which variable changed, and how can you tell whether the application or the judge caused the shift?

Trace the two columns. The application version stays the same, so the only variable that changed between the periods is the judge prompt. The 2-point rise is therefore not evidence about the application until the judge is shown to be the same. This is the pattern to watch for: a score trend moves, the application did not visibly change, and the judge did.

Mistakes When Reading Score Trends

  • Common mistake

    Treating a shared criterion name as a shared measurement

    What it looks like

    Mixing a faithfulness score from MLflow with a faithfulness score from Ragas in one report, as if they measured the same thing.

    Why it fails

    Each tool uses its own judge instructions and scoring system, so each answers a slightly different question.

    Do this instead

    Report each score with its tool, and compare tools only on the same data with the configuration stated.

  • Common mistake

    Assuming a stable score is a correct score

    What it looks like

    A judge gives the same score on every rerun, so the team concludes the score is accurate.

    Why it fails

    Consistency is not accuracy. A judge can repeat the same mistake reliably.

    Do this instead

    Check judge output against answers whose correct verdict is already known.

  • Common mistake

    Attributing a score shift to the application without checking the judge

    What it looks like

    Coherence rises from 90% to 92% after a judge prompt edit, and the team credits its own recent work.

    Why it fails

    A change in the judge or its prompt can look exactly like a change in the application.

    Do this instead

    Confirm the judge model and prompt are identical across both periods before interpreting the trend.

  • Common mistake

    Forgetting which judge produced an old score, which makes later comparisons impossible to trace

Checks Before Trusting a Trend

Because a trend can come from the judge as easily as from the application, it helps to work through a fixed sequence of checks before accepting it. The sequence below starts with recording what produced each score, then confirms the judge setup is the same across the periods being compared, and only then asks whether the movement is larger than the run-to-run variation you would expect anyway.

Record judge modeland promptfor every scoreSame judge and promptin both periods?Separate judge effectfrom applicationeffecttreat the shift asunexplainedCheck sampling andother judge settingshold them constantRepeat runs tomeasure spreadsame input, several rerunsTrend stands out fromthe spreadAccept the trend asprovisionalstill check against knownanswersDo not attribute tothe applicationyesnoyesno
In what order should you verify the judge version, the prompt, the sampling settings, and repeat runs before accepting a trend as real?

Read the flowchart as a gate. The first decision asks whether the judge and prompt are the same in both periods. If they are not, the shift cannot be credited to the application without further evidence. If they are, you still need to confirm that sampling and other judge settings did not move, and that repeated runs on the same input show a spread narrower than the movement you are about to interpret. Only then does the trend deserve to be treated as a signal, and even then it remains provisional until the judge has been checked against answers with known correct verdicts.

Practice: Auditing a Score Report

MEDIUM

Your team's faithfulness score rose from 80% to 85% after you changed the judge prompt. The application code did not change between the two periods. Before you report this as an improvement in the application, what do you check, and in what order?

Hints
  • Start by asking which variables changed between the two periods, and whether the judge was one of them.
  • Think about whether the judge model and prompt were recorded for each score, so you can confirm they match.
  • Even if the judge matches, ask whether repeated runs show that a 5-point movement stands out from the normal spread.
  • Consider whether you would compare the two tools' numbers if a second tool had been used in one period only.

A strong answer names the judge prompt as the changed variable, refuses to credit the application until the judge is shown to be identical across periods, and then describes the repeat-run check. It also notes that the score is only meaningful alongside the judge model and prompt that produced it.

Key Takeaways

  • AI judges are probabilistic, so the same judge can score the same input differently across reruns or after a prompt change, which threatens reproducibility.
  • Consistency is not accuracy: a stable judge can repeat the same mistake, so stability must be checked against known correct answers.
  • Criterion names such as faithfulness are not standardized. MLflow, Ragas, and LlamaIndex use different instructions and scoring systems, so their scores cannot be compared directly.
  • A change in the judge or its prompt can look like a change in the application, so every score should be tied to the judge model and prompt that produced it, and trends should be checked against judge stability before they are trusted.

More concepts starting with I