Inferensys

Prompt

Rubric with Justification Requirement Prompt Template

A practical prompt playbook for building evaluation rubrics that require LLM judges to output score justifications, evidence citations, and uncertainty flags alongside numeric scores.
AI evaluator reviewing output quality on laptop, comparison metrics visible, casual evaluation session.
PROMPT PLAYBOOK

When to Use This Prompt

Define the job, ideal user, required context, and constraints for the Rubric with Justification Requirement prompt.

This prompt is for evaluation engineers, compliance leads, and AI audit teams who need automated model-graded scores that are explainable, traceable, and defensible. The core job-to-be-done is converting a subjective quality assessment into a structured, evidence-backed judgment that a human reviewer or auditor can quickly verify. Unlike a standard rubric that outputs only a numeric score, this prompt forces the LLM judge to produce a justification, cite specific evidence from the evaluated output, and flag its own uncertainty. This is essential when scores feed into regulated workflows, customer-facing quality guarantees, or internal governance reports where a naked number is insufficient.

Use this prompt when the cost of an unexplained score is high—for example, when grading AI outputs for compliance with legal or safety policies, when scoring candidate responses in a high-stakes evaluation pipeline, or when building a dataset of graded examples that will be audited later. The prompt is designed to be wired into an automated evaluation harness where each justification is logged alongside the score, enabling downstream spot-checks, inter-rater reliability analysis, and audit trail construction. It is not a lightweight replacement for a simple pass/fail check; it adds tokens, latency, and complexity that are only justified when explainability is a hard requirement.

Do not use this prompt for high-throughput, low-risk scoring where speed and cost are the primary constraints. If you are grading thousands of short-form outputs where a numeric score is sufficient and human review is unlikely, a standard rubric without justification will be faster and cheaper. Similarly, avoid this prompt when the evaluation criteria are purely mechanical and can be checked with deterministic code—a regex or schema validator is more reliable than an LLM judge for format compliance. Finally, if the justification itself could leak sensitive information from the evaluated output, ensure your logging and storage practices redact PII before persisting the judge's response.

Before implementing, you must define the evaluation dimensions, the scoring scale, and the expected structure of the justification. The prompt template expects you to provide these as inputs. You should also prepare a small set of 5-10 human-annotated examples that demonstrate the desired relationship between scores, justifications, and evidence. These examples will be used to calibrate the judge and to build a regression test suite that gates any future changes to the rubric. The next section provides the copy-ready template you will adapt with your specific criteria.

PRACTICAL GUARDRAILS

Use Case Fit

Where the rubric-with-justification prompt template delivers value and where it introduces risk. Use these cards to decide if this prompt fits your evaluation pipeline before you invest in integration.

01

Good Fit: Audit-Ready Evaluation Pipelines

Use when: you need every automated score to be explainable to auditors, compliance reviewers, or external stakeholders. Guardrail: require justification fields in the output schema and run a secondary check that justifications cite specific evidence, not generic restatements of the score.

02

Bad Fit: High-Throughput Real-Time Scoring

Avoid when: latency budgets are under 500ms or you're scoring thousands of items per minute. Justification generation adds significant token output and reasoning time. Guardrail: use a lightweight pass/fail rubric without justification for real-time paths, and reserve this template for offline audit samples.

03

Required Inputs: Ground-Truth Evidence or Source Material

Risk: justifications become hallucinated rationalizations when the judge lacks access to the source material being evaluated. Guardrail: always pass the original source context, reference answer, or evidence document alongside the output being scored. Never ask a judge to justify a score from memory.

04

Operational Risk: Justification Quality Drift

What to watch: over time, justifications may become shorter, vaguer, or pattern-matched to scores without real reasoning. Guardrail: periodically sample justifications and run a justification-quality check prompt that grades specificity, evidence linkage, and whether the justification actually supports the assigned score.

05

Operational Risk: Uncertainty Flag Fatigue

What to watch: judges may over-flag uncertainty on borderline cases or under-flag when confidence is misplaced. Guardrail: calibrate uncertainty flags against human adjudication on a held-out set. Set explicit criteria for when uncertainty must be raised, such as conflicting evidence or missing source material.

06

Integration Pattern: Human Review Escalation

Use when: the justification reveals low confidence, flags missing evidence, or produces a score near a critical decision boundary. Guardrail: route any output where the uncertainty flag is true or the justification contains phrases like 'insufficient evidence' or 'cannot determine' to a human review queue before the score is used downstream.

PROMPT PLAYBOOK

Copy-Ready Prompt Template

A reusable prompt template that requires LLM judges to output score justifications, evidence citations, and uncertainty flags alongside numeric scores.

This prompt template is the core contract for an explainable, audit-grade LLM judge. It forces the model to produce not just a score, but a structured justification, a direct citation to the source material, and an explicit uncertainty flag. This design is critical for compliance, audit, and debugging workflows where a numeric score alone is a black box. The template uses square-bracket placeholders for all dynamic inputs, making it safe to copy directly into your application code or a prompt management system. Adapt the [RUBRIC_DIMENSIONS], [OUTPUT_SCHEMA], and [CONSTRAINTS] to match your specific evaluation task.

text
You are an expert evaluator. Your task is to score a piece of AI-generated content against a provided rubric. You must produce a structured output that includes your score, a detailed justification, a direct citation from the source material, and an uncertainty flag.

## EVALUATION INPUT
[INPUT_TEXT]

## EVALUATION CONTEXT
[SOURCE_MATERIAL]

## RUBRIC DIMENSIONS
[RUBRIC_DIMENSIONS]

## SCORING SCALE
[SCORING_SCALE]

## OUTPUT SCHEMA
You must respond with a single JSON object that strictly follows this schema:
{
  "score": <number>,
  "justification": "<string explaining the score, referencing specific rubric criteria and evidence>",
  "evidence_citation": "<a direct, verbatim quote from the SOURCE_MATERIAL that supports the justification>",
  "uncertainty_flag": "<one of: 'none', 'low', 'high'>",
  "uncertainty_reason": "<explain why the flag was set, e.g., ambiguous source, conflicting evidence, edge case>"
}

## CONSTRAINTS
[CONSTRAINTS]

## EXAMPLES
[EXAMPLES]

## INSTRUCTIONS
1. Read the INPUT_TEXT and SOURCE_MATERIAL carefully.
2. Apply each RUBRIC_DIMENSION to the INPUT_TEXT.
3. Determine a score based on the SCORING_SCALE.
4. Write a justification that explicitly connects the score to the rubric criteria and the evidence.
5. Extract a direct, verbatim quote from the SOURCE_MATERIAL as your evidence_citation. If no single quote is sufficient, use the most relevant one and note the limitation in the uncertainty_reason.
6. Set the uncertainty_flag to 'high' if the evidence is contradictory, missing, or highly ambiguous. Set it to 'low' if there is minor ambiguity. Set it to 'none' only if the evidence is clear and directly supports the score.
7. Output only the JSON object. Do not include any other text.

To adapt this template, start by defining your [RUBRIC_DIMENSIONS] and [SCORING_SCALE] with precise, non-overlapping language. The [CONSTRAINTS] field is where you should inject rules like 'If the source material is empty, set the uncertainty_flag to high and score as 0.' The [EXAMPLES] block is not optional for high-stakes use; provide at least one few-shot example for each uncertainty level to calibrate the judge's behavior. When wiring this into an application, validate the output JSON against the schema before accepting the score. A common failure mode is the model providing a paraphrased justification in the evidence_citation field instead of a verbatim quote; a post-processing check for exact substring matches in the source material can catch this and trigger a retry.

IMPLEMENTATION TABLE

Prompt Variables

Required inputs for the Rubric with Justification Requirement prompt. Each placeholder must be populated before the prompt is sent to the judge model. Missing or malformed variables are the most common cause of invalid evaluation output.

PlaceholderPurposeExampleValidation Notes

[RUBRIC_DIMENSIONS]

Defines the quality dimensions to score, each with levels, anchors, and weight

Accuracy: 1-5 scale where 5=Fully correct, 1=Completely incorrect; Completeness: 1-5 scale where 5=All required elements present, 1=Missing critical elements

Must contain at least 2 dimensions. Each dimension requires a name, scale range, and anchor descriptions for min and max values. Parse check: confirm JSON array of dimension objects

[JUSTIFICATION_REQUIREMENTS]

Specifies what the judge must include in each justification: evidence citations, reasoning steps, uncertainty flags

For each score, cite the specific passage from [SOURCE_MATERIAL] that supports your judgment. If no evidence exists, flag as UNSUPPORTED. If evidence is partial, flag as PARTIAL with confidence 0-100.

Must define at least 3 required justification elements. Must include citation format specification. Must define uncertainty flag conditions. Schema check: confirm structured requirements object

[SOURCE_MATERIAL]

The ground-truth or reference content against which outputs are evaluated

Original policy document section 4.2: 'All refund requests must be processed within 5 business days of receipt.'

Can be null if evaluating without ground truth, but justification requirements must then specify how to handle missing evidence. If provided, must be plain text or structured passages with identifiers. Null allowed only when [EVALUATION_TYPE] is reference-free

[OUTPUT_TO_EVALUATE]

The model-generated content being scored against the rubric

The refund will be processed within 3-5 days after we receive your request.

Required. Must be non-empty string. Length should be within model context limits after accounting for rubric and source material. Pre-validate: check for empty or whitespace-only input

[SCORING_TYPE]

Determines whether scoring is numeric, categorical, or binary per dimension

numeric

Must be one of: numeric, categorical, binary. Controls output schema validation rules. If numeric, scores must be integers within dimension ranges. If categorical, must match defined level labels. If binary, must be PASS or FAIL

[EVIDENCE_GROUNDING_RULES]

Defines how strictly justifications must be tied to source material

Every claim in the justification must map to a specific line or passage in [SOURCE_MATERIAL]. Direct quotes require line numbers. Paraphrased claims require passage references. Claims without source mapping are invalid.

Must specify citation granularity (line, passage, section). Must define what constitutes an unsupported claim. Must specify whether partial evidence is acceptable. Parse check: confirm rules object with citation_format and unsupported_claim_policy fields

[UNCERTAINTY_THRESHOLD]

The confidence level below which the judge must flag a score as uncertain

70

Must be integer between 0 and 100. Scores with confidence below this threshold will trigger uncertainty flags in output. Validation: check range and type. Default to 70 if not specified but warn in logs

[OUTPUT_SCHEMA]

The exact JSON structure the judge must return, including score fields, justification fields, and metadata

{"scores": [{"dimension": string, "score": number, "confidence": number, "justification": string, "evidence_citations": string[], "uncertainty_flag": boolean}], "overall_score": number, "evaluation_metadata": {"judge_model": string, "timestamp": string}}

Required. Must be valid JSON Schema or example structure. Every field in schema must have a corresponding requirement in [JUSTIFICATION_REQUIREMENTS]. Schema check: validate JSON parse, confirm required fields present, confirm field types match [SCORING_TYPE]

PROMPT PLAYBOOK

Implementation Harness Notes

How to wire the justification-requirement rubric prompt into an evaluation pipeline with validation, retries, and audit logging.

This prompt is designed to be called by an LLM judge service that evaluates another model's output. The judge receives the original input, the candidate output, and the rubric with justification requirements. The prompt template should be treated as a function: evaluate(input, output, rubric) -> {score, justification, evidence, uncertainty}. The calling application must supply all square-bracket placeholders before sending the request. Do not use this prompt for real-time user-facing scoring where latency is critical—justification generation adds tokens and time. Reserve it for offline evaluation, regression testing, audit sampling, and compliance review workflows where explainability is required.

Wiring the prompt into an application requires a structured output contract. Configure your model API call with JSON mode or a strict function-calling schema that enforces the output shape: score (numeric or categorical), justification (string), evidence (array of strings with source citations), and uncertainty (object with level and reason fields). On the application side, validate the response before accepting it: check that score falls within the defined scale, that justification is non-empty and references specific rubric dimensions, that evidence items point to actual source spans, and that uncertainty.level matches a predefined enum (e.g., low, medium, high). If validation fails, retry once with the validation errors injected into the prompt as additional context. After two failures, log the raw response and escalate for human review rather than silently accepting a malformed score.

Model choice matters. Use a model with strong instruction-following and reasoning capabilities for the judge role—frontier models like GPT-4, Claude 3.5 Sonnet, or Gemini 1.5 Pro are appropriate. Smaller or faster models often produce justifications that sound plausible but fail evidence-matching checks. Temperature should be set low (0.0–0.2) to reduce variance in scoring and justification quality. If your evaluation pipeline processes high volumes, consider batching evaluations and using a separate async worker queue. Store every evaluation result—including the prompt version, model version, timestamp, raw response, and validation outcome—in an audit log for downstream review. This is especially important for compliance use cases where score justifications may be challenged or reviewed by auditors.

Retry and failure handling must distinguish between format failures and content failures. A format failure (missing JSON field, wrong type) can be retried with stricter schema instructions. A content failure (justification contradicts the score, evidence is fabricated) should not be retried—it indicates the judge model is not reliable for that evaluation task and may require rubric simplification, model upgrade, or human fallback. Implement a justification quality check as a secondary validation step: use a lightweight classifier or regex-based check to verify that the justification text references the specific rubric dimensions and evidence items it claims to use. If the justification is generic or circular (e.g., 'scored 4 because it deserves a 4'), flag the evaluation for human review.

Integration with existing eval frameworks is straightforward. If you use Braintrust, LangSmith, or Arize, wrap this prompt as a custom scorer that returns the structured JSON. The score field maps to your metric, while justification and evidence fields become metadata for trace inspection. For CI/CD pipelines, gate deployment on a minimum percentage of evaluations passing both score thresholds AND justification quality checks. A passing score with a hallucinated justification is a silent failure that undermines the audit trail. Finally, periodically sample and manually review a subset of justifications against the original outputs to detect judge drift—LLM judges can develop systematic biases over time, and justification requirements help surface those biases faster than numeric scores alone.

PRACTICAL GUARDRAILS

Common Failure Modes

When a rubric requires justifications, the judge can fail in predictable ways. These are the most common failure modes and how to prevent them before they corrupt your evaluation pipeline.

01

Vague Justifications

What to watch: The judge outputs generic statements like 'The response was good' or 'The answer is mostly correct' without citing specific evidence from the output or the rubric criteria. This makes scores unverifiable and defeats the purpose of requiring justifications. Guardrail: Include a minimum specificity requirement in the prompt. Require the judge to quote the specific output text, name the rubric dimension, and explain why the evidence matches the score level chosen.

02

Score-Justification Mismatch

What to watch: The justification describes a high-quality output but the numeric score is low, or vice versa. The judge's reasoning and its final score are inconsistent, indicating a failure in the model's internal logic. Guardrail: Add a self-consistency check instruction. After the judge produces the score and justification, prompt it to verify that the justification's severity and sentiment directly support the assigned numeric value. Flag mismatches for human review.

03

Evidence Hallucination

What to watch: The justification cites a quote or fact that does not exist in the original output being evaluated. The judge fabricates evidence to support its score, creating a false audit trail. Guardrail: Implement a post-hoc grounding check. Use a separate, lightweight prompt or string-matching function to verify that every quoted string in the justification is a substring of the original output. Reject or flag justifications with unverifiable citations.

04

Uncertainty Omission

What to watch: The judge assigns a definitive score and writes a confident justification for an ambiguous or borderline case where a human would be uncertain. The required uncertainty flag is missing or set to 'none' incorrectly. Guardrail: Explicitly define uncertainty triggers in the prompt. Instruct the judge to set a high-uncertainty flag when evidence is contradictory, the output falls exactly on a score boundary, or the rubric criteria are only partially met. Audit a sample of low-uncertainty scores.

05

Rubric Criterion Neglect

What to watch: The justification focuses on general quality, style, or helpfulness but ignores the specific, constrained criteria defined in the rubric (e.g., a 'conciseness' rubric is scored based on 'tone'). The judge defaults to a generic helpfulness evaluation. Guardrail: Structure the output schema to require a separate justification field for each rubric dimension. This forces the judge to address every criterion explicitly rather than producing a single, unfocused block of text.

06

Overly Deferential Justification

What to watch: The justification uses hedging language like 'could be considered,' 'might be seen as,' or 'arguably' to avoid making a decisive call, especially on negative criteria. This leads to score inflation and reduces the distinction between score levels. Guardrail: Add a tone directive to the prompt. Instruct the judge to use declarative, definitive language based on the evidence. Prohibit hedging phrases in the justification unless the rubric explicitly defines a borderline case that warrants it.

IMPLEMENTATION TABLE

Evaluation Rubric

Use this rubric to test whether the LLM judge produces valid, explainable, and trustworthy scores with justifications. Each criterion targets a specific failure mode in automated evaluation pipelines.

CriterionPass StandardFailure SignalTest Method

Justification Presence

Every score dimension includes a non-empty justification string

Missing or null justification for any scored dimension

Parse output JSON; assert justification field is present and string length > 0 for each dimension in scores

Evidence Citation

Justification references specific source text or output excerpt when scoring groundedness or factuality

Vague language like 'the output is good' without quoting source material

Regex check for quoted text or section references in justification; human spot-check 20 samples

Uncertainty Flag Output

uncertainty_flags array is present and contains objects with dimension, reason, and confidence fields when judge is unsure

Missing uncertainty_flags field entirely or flags present without confidence values

Schema validation against expected uncertainty object shape; assert confidence is float between 0.0 and 1.0

Score-Justification Consistency

Numeric score aligns with justification text direction (positive justification maps to high score, negative to low)

Score of 5/5 with justification describing major errors, or score of 1/5 with praise-only justification

LLM-as-judge meta-evaluation: another judge checks alignment; flag >10% inconsistency rate across test set

Refusal Handling

Judge outputs score: null and refusal_reason string when input violates safety policy or is unevaluable

Judge assigns a low score instead of refusing, or refuses without providing a reason

Test with 5 known policy-violating inputs; assert score is null and refusal_reason is non-empty for all

Partial Credit Application

Judge applies partial credit rules defined in rubric when output is partially correct

Binary 0-or-full-credit scoring on dimensions where rubric specifies partial credit levels

Test with 10 partially correct outputs; assert score distribution uses intermediate values, not just extremes

Confidence Calibration

confidence field correlates with actual score accuracy against human ratings

High confidence (≥0.9) on scores that disagree with human raters by >1 point on a 5-point scale

Compare judge confidence against human-judge agreement on 50-item calibration set; flag if high-confidence errors exceed 10%

Output Schema Validity

Full JSON output validates against expected schema with all required fields present

Missing scores array, malformed uncertainty_flags, or extra unexpected top-level keys

JSON Schema validation in test harness; reject any output that fails structural validation

ADAPTATION OPTIONS

Adapt This Prompt

How to adapt

Start with the base template and a single scoring dimension. Remove the [UNCERTAINTY_FLAGS] and [EVIDENCE_CITATION] fields from the output schema to speed up iteration. Use a lightweight model call without structured output enforcement—just ask for the justification in prose.

code
Score the [OUTPUT] against [CRITERION] on a 1–5 scale.
Provide a 2-sentence justification.

Watch for

  • Justifications that restate the score without reasoning
  • Missing evidence when the score is extreme
  • Inconsistent scoring between runs on the same input
Prasad Kumkar

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.