Use this prompt when your grounded QA system retrieves multiple passages that directly contradict each other on a material fact, and you need the model to surface the conflict to the user rather than silently picking a side or hallucinating a compromise. The ideal user is an AI engineer or product developer building a customer-facing assistant, internal research tool, or support copilot where source fidelity is a hard requirement. The job-to-be-done is not just answering a question—it is maintaining user trust by making retrieval conflicts transparent and actionable. This prompt is designed for production RAG pipelines where the retrieved context is already in the prompt window, and the model's task is to analyze, cite, and clarify, not to perform the retrieval itself.
Prompt
RAG Source Conflict Clarification Prompt

When to Use This Prompt
Define the job, reader, and constraints for the RAG Source Conflict Clarification Prompt.
This prompt is not appropriate when the retrieved passages are merely different in emphasis or style rather than factually contradictory. Do not use it for low-stakes creative generation, summarization of opinion pieces, or scenarios where the user expects a single synthesized answer without source interrogation. It is also the wrong tool when the contradiction stems from a broken retrieval step—if your vector search is returning irrelevant chunks, fix retrieval before adding a conflict resolution layer. The prompt assumes that the input context contains at least two passages with identifiable, citable contradictions. If your system cannot reliably surface conflicting passages, you will get false-positive conflict reports that erode user confidence.
Before deploying this prompt, ensure your evaluation harness includes checks for source attribution accuracy, conflict framing neutrality, and clarification question specificity. A common failure mode is the model inventing a conflict where passages are actually complementary, or framing one source as 'correct' and the other as 'wrong' without evidence. Wire the prompt into an application flow that logs conflict instances, tracks whether users respond to clarification questions, and measures whether resolution rates improve over time. If the domain is regulated—such as healthcare, legal, or financial advice—always route the final answer through human review and never let the model resolve the conflict autonomously. Start with a high retrieval similarity threshold to surface only clear contradictions, then tune downward based on production data.
Use Case Fit
Where the RAG Source Conflict Clarification Prompt works and where it introduces risk. Use this to decide if the prompt fits your production architecture before integrating it.
Strong Fit: Multi-Source Research Assistants
Use when: your system retrieves from multiple documents, databases, or APIs that may contain contradictory facts. Guardrail: The prompt excels at surfacing conflicts with source attribution, turning a hallucination risk into a user-facing clarification moment.
Strong Fit: Regulated or High-Stakes QA
Use when: answer accuracy is critical and presenting a false consensus is worse than admitting uncertainty. Guardrail: The conflict summary and targeted question create an audit trail, supporting human review workflows before a final answer is committed.
Poor Fit: Single-Source or Homogeneous Knowledge Bases
Avoid when: all context comes from a single authoritative document or a tightly curated dataset with no contradictions. Guardrail: The prompt will waste context budget searching for conflicts that don't exist, adding latency and unnecessary clarification turns.
Required Input: Ranked, Cited Retrieval Results
Risk: The prompt cannot detect conflicts if the retriever provides unranked, uncited, or truncated passages. Guardrail: Ensure your RAG pipeline passes at least two top-ranked passages with source identifiers and relevance scores. The prompt depends on this metadata to frame the conflict neutrally.
Operational Risk: Clarification Loop Fatigue
Risk: If every minor discrepancy triggers a clarification question, users will abandon the session. Guardrail: Implement a materiality threshold. Only surface conflicts where the factual difference would change the answer. Log clarification rates and set an upper bound per session.
Operational Risk: Source Bias Amplification
Risk: The prompt may frame the conflict as two equally valid viewpoints when one source is outdated or low-authority. Guardrail: Include source freshness and authority metadata in the prompt context. Instruct the model to note when one source is significantly more recent or authoritative rather than presenting a false balance.
Copy-Ready Prompt Template
A reusable prompt template for generating a source conflict summary and a targeted clarification question when retrieved passages contradict each other.
This prompt template is designed to be dropped into a RAG pipeline immediately after the retrieval step. It instructs the model to act as a neutral arbiter when presented with conflicting source passages. Instead of hallucinating a resolution or arbitrarily picking a winner, the model must produce a structured conflict report that cites the disagreeing sources verbatim and then formulate a single, precise clarification question. The goal is to surface the contradiction to the user transparently and gather the minimum information needed to resolve it, preserving user trust and avoiding wasted turns.
codeYou are a precise research assistant. Your task is to analyze the provided source passages and the user's question. If the sources contradict each other on a material fact, you must not answer the user's question directly. Instead, you must produce a conflict summary and a single clarification question. USER QUESTION: [USER_QUESTION] RETRIEVED SOURCES: [RETRIEVED_SOURCES] INSTRUCTIONS: 1. **Analyze:** Determine if the sources contain a direct contradiction on a fact relevant to the user's question. A contradiction exists only if two or more sources make mutually exclusive claims. 2. **If No Contradiction:** If the sources are consistent or address different aspects, output a JSON object with a single key "status" and the value "no_conflict". Do not answer the question. 3. **If Contradiction Exists:** Output a JSON object with the following structure: * `status`: "conflict" * `conflict_summary`: A concise, neutral summary of the point of disagreement. Frame it as "Source A states X, while Source B states Y." Do not infer which source is correct. * `source_a_claim`: A direct quote from the first source that supports its claim. * `source_b_claim`: A direct quote from the second source that supports its contradictory claim. * `clarification_question`: A single, targeted question for the user that would resolve the contradiction. The question must be answerable without the user needing to see the original sources. Do not ask "Which source is correct?" CONSTRAINTS: * Never fabricate a resolution. Your only job is to identify and report the conflict. * Cite sources exactly. Do not paraphrase the conflicting claims. * The clarification question must be specific to the factual disagreement. * Output only the valid JSON object. No other text. OUTPUT SCHEMA: { "status": "conflict", "conflict_summary": "string", "source_a_claim": "string", "source_b_claim": "string", "clarification_question": "string" }
To adapt this template, replace the [USER_QUESTION] and [RETRIEVED_SOURCES] placeholders with your application's runtime variables. The [RETRIEVED_SOURCES] should be a pre-formatted string containing the text of each passage, clearly delimited with identifiers (e.g., [Source 1] ... [Source 2] ...). This prompt is designed for a single LLM call. For high-stakes applications, you should validate the output JSON against the schema and check that the source_a_claim and source_b_claim strings are exact substrings of the [RETRIEVED_SOURCES] input. If validation fails, a retry loop with a failure reason appended to the prompt is a standard recovery pattern. Always log the raw prompt, the model's output, and the validation result to monitor the frequency and nature of source conflicts in your system.
Prompt Variables
Required inputs for the RAG Source Conflict Clarification Prompt. Each placeholder must be populated before the prompt is assembled and sent to the model. Validation notes describe how to check the input at runtime before incurring inference cost.
| Placeholder | Purpose | Example | Validation Notes |
|---|---|---|---|
[USER_QUERY] | The original user question that triggered retrieval and produced conflicting sources. | What is the company's policy on remote work for new hires? | Must be a non-empty string. Check length > 0. Reject if only whitespace or control characters. Log the raw query for traceability. |
[RETRIEVED_SOURCES] | The full set of retrieved passages or documents that contain conflicting information. Each source must include a unique identifier and the raw text. | [{"source_id": "doc-42", "text": "New hires must work on-site for the first 6 months."}, {"source_id": "doc-87", "text": "All employees are eligible for remote work from day one."}] | Must be a valid JSON array with at least 2 objects. Each object requires a non-empty 'source_id' string and a non-empty 'text' string. Reject if fewer than 2 sources or if any source is missing required fields. |
[CONFLICT_DESCRIPTION] | A brief, neutral summary of the contradiction detected between sources, generated by a prior conflict detection step. | Source doc-42 states a 6-month on-site requirement for new hires. Source doc-87 states remote work eligibility begins on day one. | Must be a non-empty string. Should reference at least two source_ids present in [RETRIEVED_SOURCES]. If the conflict description cannot be generated, abort the clarification prompt and escalate to a human reviewer. |
[MAX_CLARIFICATION_QUESTIONS] | An integer constraint limiting the number of clarification questions the prompt may generate. Prevents question loops. | 1 | Must be a positive integer. Typical value is 1. If > 3, log a warning about potential user friction. Reject if null or non-integer. |
[OUTPUT_SCHEMA] | The strict JSON schema the model must adhere to for its response, defining the conflict summary, cited sources, and clarification question. | {"type": "object", "properties": {"conflict_summary": {"type": "string"}, "disagreeing_sources": {"type": "array", "items": {"type": "string"}}, "clarification_question": {"type": "string"}}, "required": ["conflict_summary", "disagreeing_sources", "clarification_question"]} | Must be a valid JSON Schema object. Validate with a schema parser before injection. The 'required' array must include at least 'conflict_summary', 'disagreeing_sources', and 'clarification_question'. |
[NEUTRALITY_CONSTRAINT] | A boolean flag that, when true, instructs the model to frame the conflict without favoring any single source. Critical for unbiased clarification. | Must be a strict boolean (true or false). If set to false, log a warning and require explicit approval from a review step, as biased framing can mislead users. | |
[CITATION_FORMAT] | A template string defining how sources should be cited in the output, ensuring consistent attribution. | [{source_id}] | Must be a non-empty string containing the placeholder '{source_id}'. Validate that the format string is parseable and does not contain unescaped control characters. Reject if missing the placeholder. |
Common Failure Modes
What breaks first when resolving source conflicts and how to guard against it.
Neutrality Collapse
What to watch: The model takes sides in a source conflict, framing one source as 'correct' and the other as 'outdated' or 'wrong' without evidence. This destroys user trust and hides real ambiguity. Guardrail: Require the prompt to present both sources symmetrically using parallel structure ('Source A states X, while Source B states Y') and forbid evaluative language like 'more reliable' or 'better supported' unless explicitly grounded in metadata.
Hallucinated Source Attribution
What to watch: The model fabricates a conflict by citing a source that doesn't contain the claimed contradiction, or misattributes a statement to the wrong source. This creates phantom disagreements that waste user attention. Guardrail: Include a strict instruction that every cited claim must be traceable to a verbatim excerpt. Add a post-generation validation step that checks each citation span against the original retrieved passage before surfacing the conflict to the user.
False Conflict Flagging
What to watch: The model reports a conflict where none exists because it fails to recognize that sources address different scopes, time periods, or conditions. This triggers unnecessary clarification questions that annoy users. Guardrail: Add a pre-clarification check requiring the model to identify the specific dimension of disagreement (factual, temporal, definitional, or scope-based) and suppress the conflict flag if the sources can be reconciled by noting differing contexts.
Over-Clarification Spiral
What to watch: The model asks a clarification question, receives a user answer, but then asks another clarification question about the same conflict instead of resolving it. This creates a frustrating loop that burns context budget. Guardrail: Implement a clarification budget (maximum one question per conflict) and require the model to commit to an answer with disclosed assumptions if the user's clarification doesn't fully resolve the ambiguity. Track clarification count in dialogue state.
Leading Question Bias
What to watch: The clarification question subtly favors one source by framing the options asymmetrically ('Do you want to use the more recent data, or the older report?'). This biases the user toward the model's preferred resolution. Guardrail: Require clarification questions to present options with structurally identical framing and neutral labels (Option A / Option B). Add an eval check that scores option symmetry using pairwise comparison of adjective use and value-laden language.
Missing Abstention Trigger
What to watch: When sources conflict and the user provides a clarification that still doesn't resolve the underlying factual dispute, the model confidently picks a side instead of acknowledging continued uncertainty. This produces a definitive-sounding but unreliable answer. Guardrail: Include an explicit abstention condition: if the conflict persists after one clarification round, the model must state that the evidence remains divided, present both positions, and recommend deferring to a human reviewer or primary source.
Evaluation Rubric
Use this rubric to test the RAG Source Conflict Clarification Prompt before shipping. Each criterion targets a specific failure mode in conflict detection, source attribution, or clarification framing. Run these checks against a golden dataset of conflicting and non-conflicting source pairs.
| Criterion | Pass Standard | Failure Signal | Test Method |
|---|---|---|---|
Conflict Detection Accuracy | Prompt correctly identifies contradictory claims between sources when factual disagreement exists | Prompt reports 'no conflict' when sources directly contradict each other, or reports a conflict when sources are complementary | Run against 50 source pairs with known conflict labels; require F1 >= 0.90 |
Source Attribution Fidelity | Every conflicting claim is cited to the exact source passage that made it, with no misattribution | A claim is attributed to Source A when Source B made it, or a claim appears without any source citation | Parse output citations against ground-truth source spans; require exact match on source ID and claim alignment |
Conflict Framing Neutrality | Conflict summary describes disagreement without favoring one source, using neutral language like 'Source A states X while Source B states Y' | Summary uses evaluative language such as 'Source A is more reliable' or 'Source B is incorrect' before user resolution | LLM-as-judge review on 30 conflict summaries; require >= 95% pass rate on neutrality rubric |
Clarification Question Specificity | Clarification question targets the exact point of contradiction and can be answered with a specific fact or preference | Question is generic such as 'Can you clarify?' or asks about information already present in the sources | Human review of 20 clarification questions; require >= 90% rated as 'specific and resolvable' |
No Fabricated Resolution | Prompt never invents a resolution, synthesizes a middle ground, or declares one source correct without user input | Output contains phrases like 'the most likely answer is' or 'Source A is probably right' when sources conflict | Scan output for resolution language patterns; require zero instances in conflict-present cases |
Abstention When Conflict Unresolvable | Prompt abstains from answering the substantive question and only outputs the conflict summary and clarification question | Output includes a direct answer to the user's question alongside or instead of the conflict clarification | Check that answer field is null or contains explicit abstention marker when conflict is detected; require 100% compliance |
Evidence Completeness | All conflicting source passages are represented in the conflict summary; no conflicting source is omitted | One source's claim is summarized while the contradictory source's claim is missing from the output | Compare output source citations to all sources flagged as conflicting in ground truth; require recall >= 0.95 |
Clarification Question Count | Prompt generates exactly one clarification question per conflict cluster, avoiding question bombardment | Output contains multiple clarification questions for a single conflict, or chains follow-up questions before user responds | Count clarification questions per output; require count = 1 when conflict is detected |
Implementation Harness Notes
How to wire the RAG Source Conflict Clarification Prompt into a production application with validation, retries, and human review gates.
This prompt is designed to sit inside a retrieval-augmented generation pipeline after the retrieval step but before the final answer synthesis. When your retriever returns multiple passages with contradictory claims, the prompt produces a structured conflict summary and a targeted clarification question instead of letting the model silently pick a side or hallucinate a reconciliation. The implementation harness must catch the conflict signal early, route it to the user or a review queue, and prevent the system from proceeding to answer generation until the conflict is resolved.
Wire the prompt as a decision gate in your RAG pipeline. After retrieval, run a lightweight contradiction detector (e.g., an NLI model or a keyword-based overlap check) to flag candidate conflicts. If flagged, invoke this prompt with the conflicting passages and the user's original query. Parse the output against a strict schema: expect fields like conflict_summary, source_a_citation, source_b_citation, disagreeing_claim, and clarification_question. Validate that every citation maps back to a real retrieved passage ID. If the output fails schema validation or contains citations to non-existent sources, retry once with a stricter constraint message. After two failures, escalate to a human reviewer with the raw passages and the failed outputs logged. For high-stakes domains (healthcare, legal, finance), always require human approval before surfacing the clarification question to the end user.
Model choice matters here. Use a model with strong instruction-following and citation discipline (e.g., GPT-4o, Claude 3.5 Sonnet) rather than a smaller or faster model that may drop citations or invent source mappings. Set temperature low (0.0–0.2) to reduce creative paraphrasing of the conflict. Log every invocation: the retrieved passage IDs, the conflict detection score, the raw prompt, the model output, the validation result, and whether the clarification was shown to the user or escalated. This audit trail is essential for debugging false-positive conflict flags and for demonstrating source-grounded behavior to compliance reviewers. Avoid the temptation to skip the conflict gate for latency reasons—surfacing a contradictory answer is far more expensive than a single clarification turn.
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 frontier model and a small set of synthetic conflicting passages. Focus on getting the conflict summary structure and citation format right before adding validation logic.
Replace the [OUTPUT_SCHEMA] placeholder with a simple JSON template:
json{ "conflict_summary": "string", "source_a": {"id": "string", "claim": "string"}, "source_b": {"id": "string", "claim": "string"}, "clarification_question": "string" }
Watch for
- The model resolving the conflict instead of surfacing it
- Missing source IDs when passages aren't explicitly labeled
- Clarification questions that are open-ended rather than targeted
- Overly verbose conflict summaries that bury the contradiction

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