This prompt is designed for evaluation infrastructure teams who need to replace an existing LLM judge with a new candidate. The replacement could be a different model, an updated prompt, a new rubric, or a reconfigured judge instance. The core job is to produce an equivalence report that compares score distributions, measures agreement with the existing judge fleet, and identifies edge-case handling gaps before the switch goes live. Use this when the cost of a silent score break is high and when downstream systems depend on stable, reproducible evaluation signals.
Prompt
Judge Replacement Candidate Evaluation Prompt Template

When to Use This Prompt
Determine if a candidate judge can replace an existing one without breaking score continuity in production evaluation pipelines.
The ideal user is an AI engineer or evaluation lead who already has a production judge fleet generating scores, a candidate judge they want to introduce, and a representative sample of items that both judges can score. You need access to historical score distributions from the existing judge, the candidate's scores on the same items, and any per-item metadata that might explain divergence (item difficulty, content length, domain category). Without this data, the prompt cannot produce a meaningful equivalence report. The prompt assumes you have already run both judges on the same evaluation set and collected their outputs—it does not orchestrate the scoring itself.
Do not use this prompt when you are designing a new evaluation rubric from scratch, when you lack historical judge data for comparison, or when the candidate judge operates on a fundamentally different scoring scale that cannot be meaningfully compared. This prompt is also inappropriate for one-off quality checks or ad-hoc spot comparisons—it is built for structured replacement decisions where the cost of getting it wrong includes broken CI/CD gates, misleading model selection decisions, or silent regression in content quality metrics. If your sample size is too small to detect meaningful differences, run a sample-size sufficiency check before invoking this prompt. For high-stakes domains like healthcare, legal, or finance evaluation, always route the equivalence report through human review before approving the judge switch.
Use Case Fit
This prompt template is designed for rigorous, quantitative evaluation of a candidate judge against a baseline. It is not a general-purpose quality check. Use it when score continuity and fleet consistency are non-negotiable.
Good Fit: Judge Replacement with Back-Compat Requirements
Use when: You are swapping one LLM judge for another (e.g., model upgrade, cost reduction) and must prove the new judge's scores are statistically equivalent to the old judge's on a fixed dataset. Guardrail: The prompt requires a paired score dataset and explicit equivalence margins.
Bad Fit: Ad-Hoc Output Quality Spot Checks
Avoid when: You just want to know if an output is 'good' or 'bad' in isolation. This prompt performs a structured comparative analysis, not a single-output critique. Guardrail: Use a pass/fail or rubric-scoring prompt for individual quality assessment.
Required Input: Paired Score Dataset
Risk: The prompt will fail or hallucinate a comparison if it does not receive a structured list of items with scores from both the baseline and candidate judges. Guardrail: The application harness must validate the input schema (item ID, baseline score, candidate score) before invoking the prompt.
Operational Risk: Score Distribution Shift Without Regression Detection
Risk: The candidate judge might produce a similar average score but fail on specific edge cases, which a simple mean comparison would miss. Guardrail: The prompt explicitly requests a regression risk analysis and edge-case handling parity check, not just aggregate metrics.
Operational Risk: Misinterpreting Statistical Equivalence
Risk: A non-technical reviewer might see 'high agreement' and approve a judge that has introduced a systematic bias. Guardrail: The output format requires a clear, non-technical summary of risks and a go/no-go recommendation, making the decision auditable for stakeholders.
Bad Fit: Evaluating a Judge in Isolation
Avoid when: You have no baseline judge to compare against. This prompt's core logic is comparative; it cannot establish the absolute quality of a single judge. Guardrail: Use a human-gold-standard alignment prompt to calibrate a single judge before running a replacement comparison.
Copy-Ready Prompt Template
A reusable prompt for evaluating whether a candidate judge can replace an existing judge without breaking score continuity.
This template is designed to be pasted directly into your evaluation harness. It instructs an LLM to act as a meta-evaluator, comparing the scoring behavior of a new candidate judge against a baseline incumbent judge across a shared set of test items. The prompt produces a structured equivalence report, not a single pass/fail score. Populate every square-bracket placeholder before each run. The prompt assumes you have already collected paired scores from both judges on the same inputs.
textYou are an evaluation auditor responsible for assessing whether a candidate LLM judge can replace an incumbent judge in a production evaluation pipeline. Your task is to produce a structured equivalence report comparing the two judges. ## INPUT DATA - Incumbent Judge Scores: [INCUMBENT_SCORES] - Candidate Judge Scores: [CANDIDATE_SCORES] - Score Scale: [SCORE_SCALE] - Evaluation Rubric Used: [RUBRIC_TEXT] - Test Item Metadata (optional): [ITEM_METADATA] ## OUTPUT SCHEMA Return a JSON object with the following structure: { "agreement_metrics": { "percent_agreement": number, "cohens_kappa": number, "pearson_correlation": number, "mean_absolute_error": number }, "distribution_comparison": { "incumbent_mean": number, "candidate_mean": number, "mean_shift_detected": boolean, "variance_shift_detected": boolean, "distribution_notes": string }, "edge_case_analysis": { "high_disagreement_items": [ { "item_index": number, "incumbent_score": number, "candidate_score": number, "possible_cause": string } ], "systematic_bias_flags": [string] }, "replacement_risk_assessment": { "risk_level": "LOW" | "MEDIUM" | "HIGH" | "CRITICAL", "backward_compatibility_concerns": [string], "recommended_actions": [string] }, "confidence_in_assessment": "LOW" | "MEDIUM" | "HIGH", "requires_human_review": boolean } ## CONSTRAINTS - Do not invent scores or fabricate agreement metrics. Use only the provided input data. - If the sample size is fewer than 30 paired items, set confidence_in_assessment to "LOW" and flag this in recommended_actions. - Flag any systematic bias where the candidate consistently scores higher or lower than the incumbent by more than [BIAS_THRESHOLD] points on average. - For high_disagreement_items, include only items where the absolute score difference exceeds [DISAGREEMENT_THRESHOLD]. - If the rubric contains ordinal scales, use Cohen's Kappa with quadratic weighting. If continuous, use Pearson correlation. - Set requires_human_review to true if risk_level is "HIGH" or "CRITICAL", or if any systematic_bias_flags are present. ## EVALUATION INSTRUCTIONS 1. Compute all agreement metrics from the paired scores. 2. Compare score distributions for mean shift and variance shift. 3. Identify items with the largest score discrepancies and hypothesize causes based on the rubric and item metadata. 4. Assess replacement risk considering: score continuity, backward compatibility with historical evaluations, and edge-case handling parity. 5. If [HISTORICAL_BASELINE_SCORES] are provided, compare the candidate's score distribution against the historical baseline to detect regression risk. ## RISK LEVEL [RISK_LEVEL]
Adaptation guidance: Replace [INCUMBENT_SCORES] and [CANDIDATE_SCORES] with arrays of paired numeric scores. The [SCORE_SCALE] placeholder should describe the range and type (e.g., '1-5 Likert' or '0.0-1.0 continuous'). If you have historical score distributions from the incumbent judge across a larger dataset, populate [HISTORICAL_BASELINE_SCORES] to enable regression detection. Set [BIAS_THRESHOLD] and [DISAGREEMENT_THRESHOLD] based on your tolerance—typical starting values are 0.5 for Likert scales and 0.15 for continuous scales. For high-stakes evaluation pipelines where score continuity is critical, set [RISK_LEVEL] to "HIGH" to instruct the model to apply stricter thresholds and require human review for any flagged divergence.
Before deploying this prompt into an automated pipeline, validate the output schema against your downstream consumers. A common failure mode is the model returning risk_level as a lowercase string or adding extra fields not in the schema. Implement a JSON schema validator in your harness that rejects malformed responses and triggers a retry with the error message appended. For production use, log every equivalence report alongside the input score pairs so you can audit replacement decisions later. If the prompt flags requires_human_review: true, route the report to a human evaluator before proceeding with judge replacement.
Prompt Variables
Inputs the prompt needs to work reliably. Validate each before running the evaluation.
| Placeholder | Purpose | Example | Validation Notes |
|---|---|---|---|
[CANDIDATE_JUDGE_OUTPUTS] | The raw scores and rationales produced by the new judge being evaluated | {"score": 4, "rationale": "The response fully addresses the prompt but has minor formatting issues."} | Must be a valid JSON array of objects with 'score' and 'rationale' keys. Scores must be numeric and within the defined rubric scale. Rationales must be non-empty strings. |
[FLEET_JUDGE_OUTPUTS] | Aggregated scores and rationales from the existing judge fleet for the same items | {"judge_a": {"score": 4, "rationale": "..."}, "judge_b": {"score": 5, "rationale": "..."}} | Must be a valid JSON object where each key is a judge identifier and each value matches the output schema of [CANDIDATE_JUDGE_OUTPUTS]. At least 2 fleet judges required for agreement metrics. |
[EVALUATION_ITEMS] | The original prompts and model responses that both judges scored | {"prompt": "Explain quantum computing in 3 sentences.", "response": "Quantum computing uses qubits..."} | Must be a valid JSON array of objects with 'prompt' and 'response' keys. Items must be identical to those scored by the fleet. Mismatched items will invalidate the comparison. |
[RUBRIC_DEFINITION] | The scoring rubric both judges were instructed to follow | {"scale": [1, 2, 3, 4, 5], "criteria": [{"name": "Accuracy", "description": "..."}]} | Must be a valid JSON object with 'scale' and 'criteria' arrays. The candidate judge's scores must be interpretable within this rubric. Missing or ambiguous criteria will cause false divergence signals. |
[EQUIVALENCE_THRESHOLD] | The minimum acceptable agreement level for declaring the candidate judge equivalent to the fleet | {"kappa_min": 0.7, "percent_agreement_min": 0.85, "score_difference_max": 0.5} | Must be a valid JSON object with numeric thresholds. Values outside 0.0-1.0 for kappa and percent agreement are invalid. Thresholds that are too low risk accepting a degraded judge. |
[BACK_COMPAT_REQUIREMENTS] | Constraints requiring the new judge to not break historical score trends or downstream systems | {"max_score_distribution_shift": 0.1, "preserve_pass_fail_boundary": true, "forbidden_score_range": [1]} | Must be a valid JSON object. Boolean fields must be true or false. Numeric fields must be within valid ranges. Null allowed for optional constraints. |
[EDGE_CASE_ITEMS] | A curated set of difficult or ambiguous items to test judge behavior at the boundaries | {"adversarial_prompts": [...], "ambiguous_responses": [...], "out_of_scope_requests": [...]} | Must be a valid JSON object with arrays of items matching the [EVALUATION_ITEMS] schema. At least one edge-case category required. Empty arrays allowed if no edge cases are defined, but this weakens the evaluation. |
[HUMAN_ANNOTATION_SET] | Optional human-annotated ground truth scores for calibration against a gold standard | {"annotator_id": "human_expert_1", "scores": [{"item_id": "abc", "score": 4}]} | Must be a valid JSON object or null. If provided, scores must align with [RUBRIC_DEFINITION] scale. Annotator ID required for audit trail. Null allowed if human calibration is out of scope. |
Implementation Harness Notes
How to wire the Judge Replacement Candidate Evaluation prompt into an automated evaluation pipeline with validation, retries, and regression gates.
This prompt is designed to be a gate in your CI/CD or evaluation pipeline, not a one-off manual check. The core workflow involves collecting a representative sample of scored items from your production judge fleet, running both the incumbent judge and the replacement candidate on the same items, and then feeding the paired score distributions into this prompt for analysis. The output is a structured equivalence report that can be parsed by downstream automation to either approve the replacement, flag it for human review, or reject it outright based on configurable thresholds for score continuity, agreement, and edge-case parity.
To implement this in a pipeline, first define a sampling strategy that captures your production distribution: stratify by score range, input length, topic cluster, and known edge cases. Collect at least 200-500 paired judgments to achieve statistical significance for the agreement metrics. Store the raw scores, rationales, and metadata in a structured format (JSON Lines works well) so the prompt's [SCORE_DATASET] placeholder can be populated programmatically. Before invoking the LLM, run a pre-validation step to ensure the dataset meets minimum size requirements, contains both judge columns, and has no missing scores that would skew the comparison. If the dataset fails pre-validation, abort and alert the pipeline operator rather than sending incomplete data to the model.
The prompt expects a [REGRESSION_THRESHOLD] parameter—this is your team's policy decision, not a statistical output. Set this threshold based on your risk tolerance: a strict threshold (e.g., 0.95 agreement, <0.05 mean score drift) is appropriate for high-stakes evaluation surfaces like safety grading or compliance checks; a looser threshold (e.g., 0.85 agreement) may be acceptable for internal quality scoring where some drift is tolerable. Wire this threshold into your pipeline configuration so it can be adjusted per use case without modifying the prompt template. After the LLM returns the equivalence report, run a post-validation parser that extracts the structured fields—equivalence_decision, agreement_score, drift_magnitude, edge_case_parity, and risk_flags—and compares them against your threshold. If the decision is CONDITIONAL or REJECT, automatically escalate to a human review queue with the full report attached.
For retry and error handling, implement a simple retry loop: if the LLM response fails schema validation (missing required fields, malformed JSON, or incoherent decision values), retry up to two times with a slightly lower temperature setting (0.1 → 0.0) to reduce output variance. If all retries fail, log the raw response and escalate for manual triage. For observability, log every invocation with the prompt version hash, model used, dataset size, threshold value, and the final decision. This creates an audit trail that lets you answer 'why was this judge replaced?' months later. Finally, integrate this prompt into your regression test suite: before any judge replacement goes live, run a back-compatibility check where the new judge's scores on a golden dataset of 50-100 historically scored items are compared against the original scores, and only proceed if the equivalence report passes the same threshold gates.
Avoid running this prompt on tiny sample sizes (under 50 items) or on datasets with severe class imbalance where one score dominates—the agreement metrics will be misleadingly high due to prevalence. Also avoid treating the LLM's equivalence decision as the final word without human review when the risk_flags field contains DISTRIBUTION_SHIFT or EDGE_CASE_REVERSAL warnings. These flags indicate that even if aggregate metrics look acceptable, the replacement judge is systematically different on important subsets, and a human should inspect those specific cases before approving the swap.
Expected Output Contract
Fields, format, and validation rules for the JSON output of the Judge Replacement Candidate Evaluation Prompt Template. Use this contract to parse, validate, and store the equivalence report before downstream consumption.
| Field or Element | Type or Format | Required | Validation Rule |
|---|---|---|---|
equivalence_decision | string enum: equivalent | not_equivalent | conditional_equivalent | Must be one of the three enum values. If conditional_equivalent, conditions array must be non-empty. | |
score_distribution_comparison | object | Must contain candidate_mean, incumbent_mean, mean_difference, and distribution_overlap_score. distribution_overlap_score must be a float between 0.0 and 1.0. | |
agreement_with_fleet | object | Must contain pairwise_agreement_rate (float 0.0-1.0), fleet_consensus_rate (float 0.0-1.0), and outlier_flag (boolean). If outlier_flag is true, outlier_detail string is required. | |
edge_case_parity | array of objects | Each object must have edge_case_id (string), candidate_score (number), incumbent_score (number), parity_status (string enum: matched | minor_divergence | major_divergence), and divergence_note (string, required if parity_status is not matched). | |
regression_risk_assessment | object | Must contain risk_level (string enum: low | medium | high | critical), affected_criteria (array of strings, non-empty if risk_level is medium or higher), and back_compatability_score (float 0.0-1.0). | |
conditions_for_replacement | array of strings | Required if equivalence_decision is conditional_equivalent. Each string must describe a specific, verifiable condition. Null or empty array allowed only when equivalence_decision is equivalent or not_equivalent. | |
recommended_action | string enum: proceed_with_replacement | hold_for_calibration | reject_candidate | escalate_for_human_review | Must be one of the four enum values. If escalate_for_human_review, escalation_reason string is required. | |
confidence_interval | object | Must contain lower_bound (float), upper_bound (float), and confidence_level (float, typically 0.95). lower_bound must be less than upper_bound. All floats must be between 0.0 and 1.0. |
Common Failure Modes
What breaks first when evaluating a replacement judge candidate and how to guard against it.
Score Distribution Shift Without Agreement Drop
What to watch: The candidate judge produces scores with a different mean or variance than the incumbent, even when rank-order agreement looks acceptable. This breaks downstream thresholds, dashboards, and automated gates that assume stable score distributions. Guardrail: Always compare distribution moments (mean, variance, skew) alongside agreement metrics. Use a Kolmogorov-Smirnov test or simple histogram overlay before declaring equivalence.
Edge-Case Amnesia
What to watch: The candidate judge performs well on average cases but fails systematically on edge cases the incumbent handles correctly—boundary conditions, empty inputs, maximum-length outputs, or adversarial examples. Agreement metrics on balanced test sets mask this. Guardrail: Stratify your evaluation set by difficulty and edge-case category. Report per-stratum agreement, not just overall scores. Flag any stratum where agreement drops below threshold.
Rationale Hallucination
What to watch: The candidate judge produces plausible-sounding rationales that contradict its own score, reference non-existent output content, or fabricate criteria not in the rubric. This erodes trust even when scores match. Guardrail: Run a rationale consistency check that verifies each rationale sentence against the actual output text and the rubric criteria. Flag rationales with unsupported claims for human review.
Rubric Criterion Dropout
What to watch: The candidate judge silently skips one or more rubric criteria, producing scores based on a subset of the evaluation dimensions. Overall scores may coincidentally align while individual criterion scores diverge. Guardrail: Require per-criterion scoring in your output schema and compare criterion-level agreement separately. A judge that skips criteria is not a drop-in replacement regardless of total score correlation.
Position and Ordering Bias
What to watch: The candidate judge's scores shift based on output position in a list, comparison order in pairwise tasks, or the sequence of items in a batch. This introduces non-deterministic variance that breaks reproducibility. Guardrail: Randomize output ordering in your evaluation harness and measure score stability across permutations. Flag any judge whose scores vary significantly with presentation order.
Confidence-Calibration Mismatch
What to watch: The candidate judge reports high confidence on incorrect scores or low confidence on correct scores, breaking any downstream logic that gates on confidence thresholds. Agreement metrics alone won't catch this. Guardrail: Plot a calibration curve comparing confidence bins to actual correctness rates. Compute Expected Calibration Error. A replacement judge must match or exceed the incumbent's calibration, not just its accuracy.
Evaluation Rubric
Criteria for testing the quality of a judge replacement candidate's equivalence report before trusting it to approve a migration. Use this rubric to automate pass/fail gates in your evaluation pipeline.
| Criterion | Pass Standard | Failure Signal | Test Method |
|---|---|---|---|
Score Distribution Equivalence | Kolmogorov-Smirnov test p-value > 0.05 AND mean absolute difference < 0.15 on normalized scores | Report claims equivalence but p-value <= 0.05 or mean difference >= 0.15 | Extract reported statistics; re-run KS test on raw score pairs from [CANDIDATE_SCORES] and [REFERENCE_SCORES] |
Fleet Agreement Parity | Candidate's average pairwise agreement with other judges is within 0.05 of the reference judge's average agreement | Agreement delta > 0.05 without explicit flagging as regression risk | Compute pairwise agreement matrix from [JUDGE_SCORE_MATRIX]; compare candidate row mean to reference row mean |
Edge-Case Coverage | Report lists at least 5 edge-case categories with per-category pass rates; no category shows >10% pass rate drop | Fewer than 5 edge-case categories OR any category drop >10% without remediation note | Count edge-case sections in report; verify per-category pass rates against [EDGE_CASE_TEST_SET] |
Back-Compatibility Assertion | Report explicitly states whether score continuity is maintained for [LEGACY_EVAL_SET] with boolean pass/fail | Missing back-compatibility section OR boolean is absent OR claim unsupported by data | Parse report for back-compatibility section; validate boolean against re-scored [LEGACY_EVAL_SET] outputs |
Regression Risk Flagging | Any criterion where candidate underperforms reference by >5% is flagged with severity level and recommended action | Underperformance >5% exists but no flag OR flag lacks severity classification | Scan report for regression flags; cross-reference against per-criterion score deltas computed from [SCORE_COMPARISON_TABLE] |
Confidence Interval Reporting | All aggregate scores include 95% confidence intervals; intervals for equivalence claims do not cross decision boundary | Missing confidence intervals on any aggregate OR interval crosses equivalence threshold without escalation | Parse report for CI notation; verify interval bounds against [RAW_SCORE_DATA] using bootstrap resampling |
Rationale Traceability | Every pass/fail decision cites specific rubric criteria and score evidence; no unsupported assertions | Decision statement lacks criterion reference OR score evidence is missing or hallucinated | LLM-as-judge audit: feed report decisions to [RATIONALE_CHECK_JUDGE] with instruction to flag unsupported claims |
Human Review Escalation | Report routes to human review when equivalence confidence < 0.90 OR any edge-case category shows >15% degradation | Confidence < 0.90 or degradation >15% but no escalation recommendation present | Parse report for escalation flag; verify trigger conditions against computed confidence and degradation metrics |
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Adapt This Prompt
How to adapt
Use the base prompt with a single replacement candidate and a small sample of scored outputs. Skip formal statistical tests; focus on qualitative agreement patterns and obvious divergence. Replace [FLEET_SCORES] with scores from 2-3 existing judges and [CANDIDATE_SCORES] with the new judge's outputs.
Watch for
- Over-interpreting small sample sizes
- Missing systematic leniency/severity skew
- Assuming agreement means equivalence without checking edge cases

About the author
Prasad Kumkar
CEO & MD, Inference Systems
Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.
His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us