Inferensys

Prompt

Unsupported Statement Detection and Classification Prompt Template

A practical prompt playbook for using Unsupported Statement Detection and Classification Prompt Template in production AI workflows.
Operations team reviewing AI workflow automation on laptop, workflow builder visible, casual office setup.
PROMPT PLAYBOOK

When to Use This Prompt

Defines the operational context, ideal user, and boundaries for the Unsupported Statement Detection and Classification Prompt Template.

This prompt is designed for verification pipeline operators who need to programmatically distinguish between a claim that has been proven false and one that simply lacks sufficient evidence. Its core job is to classify a single, atomic claim against a provided evidence set into one of four structured verdicts: SUPPORTED, UNSUPPORTED, CONTRADICTED, or UNVERIFIABLE. The ideal user is an engineer or AI system architect integrating this classification step into a larger automated fact-checking or content verification workflow, where a clean, auditable decision is required before routing the claim to downstream reporting, human review queues, or user-facing displays.

Use this prompt only when your system has already completed two critical upstream tasks: extracting a discrete, self-contained claim from source content and retrieving a candidate set of relevant evidence. It is not a substitute for open-ended question answering, multi-hop reasoning across disparate evidence sources, or generating natural-language explanations for end users without further processing. The prompt assumes the input claim is atomic and the evidence set is pre-retrieved and provided in full. It will not search for new evidence, weigh source authority beyond what is described in the provided text, or resolve complex temporal or logical contradictions that require chaining multiple inference steps.

Do not deploy this prompt in scenarios where the claim itself is ambiguous, compound, or spans multiple factual assertions. In those cases, use a claim decomposition prompt first to break the input into atomic units. Similarly, avoid using this prompt as a direct user-facing explanation generator; the raw verdict and rationale are designed for machine consumption and internal routing, not for public disclosure without additional framing and uncertainty disclosure. For high-stakes domains such as healthcare, legal compliance, or financial reporting, always route UNSUPPORTED and CONTRADICTED verdicts to a human review step before any downstream action is taken.

PRACTICAL GUARDRAILS

Use Case Fit

Where the Unsupported Statement Detection prompt works, where it breaks, and the operational preconditions required before deploying it into a verification pipeline.

01

Good Fit: Post-Retrieval Verification Pipelines

Use when: you have already retrieved a candidate evidence set and need to classify a pre-extracted claim against that evidence. The prompt excels at distinguishing 'proven false' from 'not yet proven.' Guardrail: Never use this prompt as a retrieval trigger. It assumes evidence is already gathered; missing evidence is a signal, not a failure.

02

Bad Fit: Open-Domain Truth Seeking

Avoid when: the model must search the open web or its own parametric knowledge to verify a claim. This prompt is designed for closed-set evidence evaluation. Guardrail: Pair with a strict RAG retrieval step. If the evidence set is empty, route to an 'Evidence Exhaustion Declaration' prompt instead of allowing the model to hallucinate a verdict.

03

Required Inputs: Atomic Claims and Source Sets

Risk: Feeding the prompt a complex paragraph instead of a single verifiable claim leads to mixed verdicts and confusion. Guardrail: Pre-process all inputs through a Claim Extraction prompt. The input must be one atomic claim and a structured list of sources with IDs. Never pass raw documents directly.

04

Operational Risk: Silent Null Handling

Risk: The model returns a verdict without evidence mapping, or suppresses the UNSUPPORTED label to appear more helpful. This creates false confidence in production dashboards. Guardrail: Implement a post-processing validator that rejects any output missing an explicit evidence_gap field when the verdict is UNSUPPORTED or UNVERIFIABLE.

05

Operational Risk: Confidence Inflation on Low Evidence

Risk: The model assigns a moderate confidence score to an UNSUPPORTED claim because the surrounding text sounds authoritative. Guardrail: Apply a hard rule in the application layer: if the verdict is UNSUPPORTED, cap the confidence score at a maximum of 0.4 before surfacing it to users or downstream systems.

06

Scalability: Batch Processing and Cost

Risk: Running this prompt on thousands of claims without deduplication or prioritization wastes compute and budget. Guardrail: Use a pre-flight triage step to filter out duplicate or trivial claims. Route only high-severity or high-visibility claims through the full classification prompt; use a lighter prompt for bulk low-priority scans.

PROMPT PLAYBOOK

Copy-Ready Prompt Template

A single-turn classification prompt that produces a structured verdict on whether a statement is supported by provided evidence, with explicit evidence gap documentation.

This prompt template is designed for verification pipeline operators who need to distinguish 'proven false' from 'not yet proven.' It forces the model to classify a statement against a provided evidence set into one of four categories: SUPPORTED, UNSUPPORTED, CONTRADICTED, or UNVERIFIABLE. The output is structured JSON suitable for downstream processing, audit logging, and human review routing. Use this template when you have a discrete claim and a bounded set of source evidence—not for open-ended research or retrieval-augmented generation where the evidence set is dynamically assembled.

text
SYSTEM:
You are a verification classifier. Your task is to determine whether a statement is supported by the provided evidence. You must classify the statement into exactly one of four categories and provide a structured JSON output. Do not answer the statement. Do not provide your own knowledge. Only reason from the provided evidence.

CLASSIFICATION RULES:
- SUPPORTED: The evidence directly and unambiguously confirms the statement. All key factual assertions in the statement are backed by at least one source in the evidence.
- UNSUPPORTED: The evidence does not contain information that confirms or contradicts the statement. The statement may be true, but the provided evidence is insufficient to verify it.
- CONTRADICTED: The evidence directly and unambiguously refutes the statement. At least one source in the evidence explicitly contradicts a key factual assertion.
- UNVERIFIABLE: The statement contains claims that cannot be verified with the type of evidence provided (e.g., subjective opinions, future predictions, or claims requiring evidence outside the provided set's scope).

OUTPUT SCHEMA:
{
  "verdict": "SUPPORTED | UNSUPPORTED | CONTRADICTED | UNVERIFIABLE",
  "confidence": 0.0-1.0,
  "rationale": "Brief explanation of the classification decision, citing specific evidence items.",
  "evidence_gaps": ["List of specific factual assertions in the statement that lack supporting evidence."],
  "supporting_evidence": ["List of evidence items that support the verdict, with source references."],
  "contradicting_evidence": ["List of evidence items that contradict the statement, with source references."],
  "requires_human_review": true/false,
  "human_review_reason": "Explanation if human review is required, otherwise null."
}

CONSTRAINTS:
- If confidence is below [CONFIDENCE_THRESHOLD], set requires_human_review to true.
- If the evidence set is empty or contains no relevant information, classify as UNSUPPORTED with confidence 0.0.
- Never invent evidence. If you cannot find supporting or contradicting evidence, say so explicitly.
- For UNSUPPORTED verdicts, suppress confidence: maximum confidence is [UNSUPPORTED_MAX_CONFIDENCE].
- For UNVERIFIABLE verdicts, explain why the claim type exceeds the evidence scope.

USER:
Statement: [STATEMENT]

Evidence:
[EVIDENCE]

Classify the statement according to the rules above. Return only valid JSON.

Adaptation notes: Replace [STATEMENT] with the claim to verify and [EVIDENCE] with the source text block, including source identifiers for traceability. Set [CONFIDENCE_THRESHOLD] based on your risk tolerance—0.7 is a common starting point for auto-verification. Set [UNSUPPORTED_MAX_CONFIDENCE] to prevent over-confident unsupported verdicts; 0.4 is recommended. For batch processing, wrap this in a loop that feeds one statement-evidence pair per call. For production pipelines, always validate the output JSON against the schema before accepting the verdict. If the model returns a verdict outside the four allowed values or omits required fields, trigger a retry or fallback to human review. This template works best with models that have strong instruction-following and JSON output capabilities (GPT-4, Claude 3.5 Sonnet, or equivalent). Weaker models may require few-shot examples added to the system prompt.

IMPLEMENTATION TABLE

Prompt Variables

Required inputs for the Unsupported Statement Detection and Classification prompt. Validate each variable before sending to prevent silent nulls, hallucinated evidence, and misclassified verdicts.

PlaceholderPurposeExampleValidation Notes

[CLAIM]

The discrete factual assertion to evaluate for evidence support

The company reduced carbon emissions by 40% in 2023 compared to 2020 baseline

Must be a single atomic claim. Reject if compound, ambiguous, or contains nested assertions. Max 500 characters.

[EVIDENCE_SET]

The collection of source documents, passages, or data records available to verify the claim

Source A: 2023 Sustainability Report, p.12; Source B: EPA filing Q4-2023; Source C: Press release Jan 2024

Must contain at least one source with provenance metadata. Reject if empty or all sources lack date/author/identifier. Max 10 sources per call.

[VERIFICATION_CONTEXT]

Domain, temporal scope, and any jurisdictional or regulatory constraints that affect evidence standards

Corporate sustainability reporting, FY2023, US jurisdiction, GRI standards apply

Required for domain-specific evidence weighting. Must specify domain and time period. Null allowed if no domain constraints.

[EVIDENCE_SUFFICIENCY_THRESHOLD]

Minimum requirements for a claim to be marked SUPPORTED rather than UNSUPPORTED

Require at least 2 independent sources, both published within 18 months of claim date, at least 1 primary source

Must specify minimum source count, recency window, and source type requirements. Reject if threshold is undefined or impossible to satisfy with available evidence.

[OUTPUT_SCHEMA]

The expected structure for the classification verdict and evidence gap documentation

JSON with fields: verdict, confidence_score, supporting_sources, contradictory_sources, evidence_gaps, rationale

Must define required fields and enum values for verdict. Reject if schema allows ambiguous or untyped fields.

[CONFIDENCE_CALIBRATION_RULES]

Rules for suppressing confidence scores when evidence is insufficient or contradictory

Confidence must be <=0.3 for UNSUPPORTED, <=0.1 for UNVERIFIABLE, >=0.7 for SUPPORTED with 2+ corroborating sources

Must specify confidence ranges per verdict type. Reject if rules allow high confidence on UNSUPPORTED or UNVERIFIABLE verdicts.

[CONTRADICTION_HANDLING]

Instructions for resolving or flagging conflicting evidence within the evidence set

If sources disagree on quantitative values, flag as CONTRADICTED and document both values with source attribution

Must specify whether contradiction triggers CONTRADICTED verdict or downgrades to UNSUPPORTED. Reject if contradiction handling is undefined.

[NULL_EVIDENCE_BEHAVIOR]

Explicit instruction for what to output when evidence set is empty or contains no relevant information

Return verdict UNVERIFIABLE with confidence 0.0 and evidence_gaps: ['No evidence provided for evaluation']

Must prevent silent null returns. Reject if behavior allows returning SUPPORTED or UNSUPPORTED without evidence.

PROMPT PLAYBOOK

Implementation Harness Notes

Wire this prompt into your verification pipeline with validation, retries, logging, and human review guardrails.

This prompt is designed to be called as a single step within a broader verification pipeline, not as a standalone chat interaction. The model should be invoked with response_format set to json_object (OpenAI) or the equivalent structured output mode for your provider (e.g., Anthropic's tool use with a strict schema, Gemini's controlled generation). The output contract expects a JSON object with a verdict field constrained to the enum [SUPPORTED, UNSUPPORTED, CONTRADICTED, UNVERIFIABLE] and an evidence_gaps array documenting missing or conflicting sources. Do not allow the model to return free text or a verdict outside this enum.

After receiving the model response, validate the JSON structure immediately in your application layer. Check that verdict is present and matches the allowed enum values, that evidence_gaps is an array, and that each gap object contains the required claim_fragment, gap_type, and missing_evidence_description fields. If validation fails, construct a retry prompt that appends the raw model output and the specific validation error message to the original prompt context. Limit retries to one attempt to avoid infinite loops and escalating costs. If the retry also fails validation, route the entire claim record—including the raw model output, validation errors, claim ID, and evidence set hash—to a human review queue. Never silently accept a malformed verdict.

For high-stakes domains such as finance, healthcare, or legal, configure your pipeline to automatically escalate any verdict of UNSUPPORTED or CONTRADICTED to human review before publishing or acting on the result. These verdicts carry significant downstream risk and require human judgment to confirm the evidence gap is real and not a retrieval or parsing failure. Log every verdict with the claim ID, evidence set hash, model version, timestamp, and final routing decision (auto-accepted, retried, or escalated). This audit trail is essential for debugging pipeline regressions and demonstrating due diligence to compliance reviewers.

IMPLEMENTATION TABLE

Expected Output Contract

The model must return a JSON object matching this schema. Reject any output that does not conform.

Field or ElementType or FormatRequiredValidation Rule

verdict

enum: SUPPORTED | UNSUPPORTED | CONTRADICTED | UNVERIFIABLE

Must be exactly one of the four allowed enum values. Reject on any other string.

claim_id

string

Must match the [CLAIM_ID] provided in the input. Non-empty string required.

evidence_summary

string

Must be a non-empty string. If verdict is UNSUPPORTED or UNVERIFIABLE, must explain the evidence gap.

evidence_gaps

array of objects

Each object must contain gap_type (string) and description (string). Array may be empty only if verdict is SUPPORTED.

gap_type

enum: MISSING_SOURCE | INSUFFICIENT_DETAIL | CONFLICTING_EVIDENCE | STALE_EVIDENCE | NO_ACCESS | OTHER

Must be one of the allowed enum values. Reject on any other string.

gap_description

string

Must be a non-empty string describing the specific evidence gap. Minimum 10 characters.

confidence_score

number

Must be a float between 0.0 and 1.0 inclusive. If verdict is UNSUPPORTED or UNVERIFIABLE, must be ≤ 0.4.

contradicting_sources

array of objects

If present, each object must contain source_id (string) and contradiction_detail (string). Required when verdict is CONTRADICTED.

source_id

string

true when contradicting_sources present

Must match a [SOURCE_ID] from the provided evidence set. Reject on unmatched IDs.

contradiction_detail

string

true when contradicting_sources present

Must be a non-empty string explaining the contradiction. Minimum 20 characters.

human_review_recommended

boolean

Must be true if verdict is UNSUPPORTED, CONTRADICTED, or UNVERIFIABLE. Must be false if verdict is SUPPORTED and confidence_score ≥ 0.85.

review_reason

string

true when human_review_recommended is true

Must be a non-empty string explaining why human review is needed. Minimum 20 characters.

search_exhaustion_declared

boolean

Must be true if all provided sources have been examined. Must be false if additional sources could resolve the gap.

sources_examined_count

integer

Must equal the count of [SOURCE_ID] values actually examined. Must be ≥ 0.

processing_timestamp

string (ISO 8601)

Must be a valid ISO 8601 datetime string. Reject on unparseable formats.

PRACTICAL GUARDRAILS

Common Failure Modes

Production verification pipelines break when unsupported claims are handled silently or confused with false claims. These failure modes target the most common breakdowns in classification, confidence, and evidence exhaustion.

01

Silent Null Classification

What to watch: The model returns no verdict or an empty string instead of UNSUPPORTED when evidence is missing. This causes downstream systems to treat the claim as unprocessed rather than unverified. Guardrail: Add a post-processing validator that rejects any output missing a required verdict field and triggers a retry with an explicit 'You must return a verdict' instruction.

02

UNSUPPORTED vs. CONTRADICTED Confusion

What to watch: The model classifies a claim as CONTRADICTED when evidence is simply absent, or marks it UNSUPPORTED when contradictory evidence exists. This misclassification corrupts audit trails and confidence signals. Guardrail: Include few-shot examples that clearly distinguish 'no evidence found' from 'evidence disproves the claim,' and add an eval check that verifies the distinction on a golden set of borderline cases.

03

Confidence Inflation on Unsupported Claims

What to watch: The model assigns moderate or high confidence to an UNSUPPORTED verdict, misleading downstream consumers into thinking the system is certain the claim is false. Guardrail: Enforce a confidence ceiling rule in the prompt (e.g., 'Confidence for UNSUPPORTED claims must not exceed 0.4') and validate it in the harness before the output leaves the pipeline.

04

Premature Evidence Exhaustion

What to watch: The model declares a claim UNSUPPORTED after searching only a subset of available sources, missing evidence that exists in unsearched repositories. Guardrail: Require the prompt to document search scope explicitly before declaring exhaustion, and add a pre-flight check that confirms all configured source sets were queried.

05

Unverifiable Claim Misrouting

What to watch: Claims that are inherently unverifiable (opinions, predictions, subjective statements) are classified as UNSUPPORTED instead of UNVERIFIABLE, triggering unnecessary evidence searches and wasting compute. Guardrail: Add a pre-classification step that identifies subjective or future-tense claims and routes them directly to UNVERIFIABLE before evidence retrieval begins.

06

Batch Drift Under Load

What to watch: Classification accuracy degrades when processing large batches, with later claims receiving less rigorous evidence matching or defaulting to UNSUPPORTED due to context window fatigue. Guardrail: Implement batch chunking with overlapping context windows, and run a consistency eval comparing early-batch and late-batch classifications on equivalent-difficulty claims.

IMPLEMENTATION TABLE

Evaluation Rubric

How to test output quality before shipping. Run these checks on a golden dataset of 50+ labeled claim-evidence pairs.

CriterionPass StandardFailure SignalTest Method

Verdict Accuracy

Verdict matches ground truth label for ≥90% of golden set claims

Verdict mismatch rate exceeds 10%

Compare [VERDICT] field against labeled golden dataset using exact match

Evidence Gap Documentation

[EVIDENCE_GAP] field is non-null and contains ≥1 specific missing evidence item for all UNSUPPORTED verdicts

Null or empty [EVIDENCE_GAP] on any UNSUPPORTED claim

Parse [EVIDENCE_GAP] field; assert non-null and array length ≥1 for all UNSUPPORTED rows

Silent Null Prevention

No null or empty [VERDICT] values in output across full golden set

Any null, empty string, or missing [VERDICT] field

Schema validation check: assert [VERDICT] is present and matches enum values

Confidence Suppression

[CONFIDENCE] ≤ 0.5 for all UNSUPPORTED and UNVERIFIABLE verdicts

[CONFIDENCE] > 0.5 on any claim lacking sufficient evidence

Parse [CONFIDENCE] as float; assert value ≤ 0.5 when [VERDICT] is UNSUPPORTED or UNVERIFIABLE

Enum Discipline

[VERDICT] contains only allowed values: SUPPORTED, UNSUPPORTED, CONTRADICTED, UNVERIFIABLE

Any verdict string outside the four allowed enum values

Enum membership check on [VERDICT] field against allowed set

Contradiction Detection

CONTRADICTED verdict includes [CONTRADICTING_EVIDENCE] with ≥1 citation to source passage

CONTRADICTED verdict with null or empty [CONTRADICTING_EVIDENCE]

Assert [CONTRADICTING_EVIDENCE] array length ≥1 and contains [SOURCE_ID] when [VERDICT] is CONTRADICTED

Unverifiable Classification

UNVERIFIABLE verdict assigned when claim is inherently uncheckable, not merely missing evidence in current source set

UNVERIFIABLE used interchangeably with UNSUPPORTED across golden set

Manual review of 20 UNVERIFIABLE samples; assert claim type is opinion, future prediction, or subjective

ADAPTATION OPTIONS

Adapt This Prompt

How to adapt

Start with the base template and a single model call. Use a simple JSON schema with the four verdicts (SUPPORTED, UNSUPPORTED, CONTRADICTED, UNVERIFIABLE) and a free-text evidence gap field. Skip structured logging and eval harnesses initially. Run 20-30 claims through manually and spot-check verdict accuracy.

code
[SYSTEM]: You are a claim verifier. For each claim, return a JSON object with "verdict" and "evidence_gap_summary".

[INPUT_CLAIM]: [CLAIM_TEXT]
[AVAILABLE_EVIDENCE]: [EVIDENCE_SNIPPETS]

Watch for

  • Verdicts defaulting to UNSUPPORTED when evidence is thin but present
  • Missing null handling when evidence snippets are empty
  • Overly verbose evidence gap summaries that don't isolate the specific missing fact
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.