This prompt is for complex questions that cannot be answered by a single retrieved passage. Its job is to force the model to chain evidence across multiple documents, producing a step-by-step reasoning trace with intermediate findings, source references, and a final synthesized answer. The ideal user is an AI engineer or RAG system builder whose pipeline returns several related but non-overlapping passages, and the user question requires connecting facts across them—for example, 'What was the revenue impact of the acquisition mentioned in the Q3 report and the subsequent restructuring outlined in the internal memo?' This is not a prompt for simple factoid lookup, single-document summarization, or conversational chit-chat. It belongs in workflows where auditability of the reasoning path matters as much as the final answer, such as legal research, financial analysis, or clinical evidence review.
Prompt
Multi-Hop Reasoning Prompt over Retrieved Documents

When to Use This Prompt
Defines the ideal job-to-be-done, required inputs, and clear boundaries for deploying a multi-hop reasoning prompt over retrieved documents.
Before using this prompt, you must have a retrieval step that surfaces a set of candidate documents. The prompt expects a [CONTEXT] variable containing multiple passages with unique identifiers. It also requires a [QUESTION] that explicitly demands connecting information across sources. The output contract is strict: the model must produce a structured reasoning chain, not just a fluent answer. You should wire in validation checks that parse the output for intermediate steps, verify that each claim cites a source ID present in the input, and flag any 'dead ends' where the model states it cannot connect two pieces of evidence. If your use case involves regulated or high-risk domains, add a human review step before the final answer is shown to users. Do not use this prompt when a single document contains the full answer, when latency constraints prohibit multi-step reasoning, or when the retrieval set is too noisy to support logical chaining.
Start by testing this prompt against a golden dataset of 10-20 multi-hop questions where you know the correct evidence chain. Measure two things: answer correctness and reasoning trace validity. If the model skips intermediate steps or hallucinates connections between unrelated passages, tighten the [CONSTRAINTS] section to require explicit 'CONNECT' statements between each hop. Avoid the temptation to use this prompt as a general-purpose RAG template; its value is in forcing explicit, auditable reasoning for questions that genuinely require it. For simpler lookups, use a standard RAG citation prompt instead.
Use Case Fit
Where multi-hop reasoning prompts over retrieved documents deliver value and where they introduce risk.
Good Fit: Compound Questions Requiring Evidence Chaining
Use when: The user's question cannot be answered from a single passage. It requires connecting facts across multiple documents, such as 'What policy covers employees who filed incident reports in Q3?' Guardrail: Validate that each reasoning hop is grounded in a specific retrieved chunk with a citation before proceeding to the next hop.
Bad Fit: Single-Hop Lookup or Factoid Retrieval
Avoid when: The answer is explicitly stated in one document section. Multi-hop prompts add latency, cost, and hallucination risk without benefit. Guardrail: Implement a query complexity classifier before the RAG pipeline. Route simple lookups to a standard RAG prompt and reserve multi-hop reasoning for questions with bridging or comparative operators.
Required Inputs: High-Quality, Non-Redundant Evidence
Risk: Multi-hop reasoning amplifies retrieval errors. If the first hop is grounded in a hallucinated or irrelevant passage, the entire reasoning chain collapses. Guardrail: Enforce a minimum relevance threshold for each retrieved chunk. If the top-N results for any hop fall below the threshold, trigger a clarification request to the user instead of guessing.
Operational Risk: Cascading Latency and Token Explosion
Risk: Each reasoning step may require a sub-query, re-ranking, and a new inference call. This multiplies end-to-end latency and context window consumption, potentially degrading user experience under load. Guardrail: Set a hard limit on the number of reasoning hops (e.g., max 3). Implement a timeout circuit-breaker that returns a partial answer with cited gaps rather than failing silently.
Operational Risk: Dead-End Reasoning Paths
Risk: The model may confidently follow a logical path that leads to a contradiction or a missing piece of evidence, then hallucinate to close the gap. Guardrail: Include a 'dead-end detection' instruction in the prompt. If a required fact is missing after a search, the model must stop and output a structured DEAD_END marker with the specific missing information, rather than fabricating a link.
Bad Fit: Real-Time or Low-Latency Applications
Avoid when: The use case demands sub-second response times, such as voice assistants or live chat intercepts. Iterative retrieval and reasoning loops are too slow. Guardrail: Pre-compute entity relationships and store them in a graph database. Use the multi-hop prompt for offline knowledge base construction, and serve real-time traffic with fast graph lookups instead of live reasoning.
Copy-Ready Prompt Template
A reusable prompt for multi-hop reasoning that chains evidence across multiple retrieved documents, producing step-by-step traces with source references.
This template orchestrates a multi-hop reasoning workflow over a set of retrieved documents. It instructs the model to decompose a complex question into sub-questions, answer each using specific passages, and chain intermediate findings into a final answer. The prompt enforces explicit source grounding for every reasoning step, making it suitable for audit-heavy domains where traceability is non-negotiable. Use this template when a single document cannot answer the question and the model must synthesize information across two or more passages.
textYou are a precise reasoning assistant. Your task is to answer a complex question by chaining evidence across multiple retrieved documents. Follow these rules exactly. ## INPUT Question: [USER_QUESTION] Retrieved Documents: [DOCUMENTS] ## CONSTRAINTS - Decompose the question into sub-questions that must be answered in sequence. Each sub-question should depend on the answer to the previous one. - For each sub-question, identify the specific document(s) and passage(s) that provide the answer. Quote the relevant text. - If a sub-question cannot be answered from the provided documents, stop and report a dead-end. Do not guess. - After answering all sub-questions, synthesize a final answer that explicitly references the evidence chain. - If the final answer requires information not present in the documents, state that the answer is incomplete and explain what is missing. ## OUTPUT FORMAT Return a JSON object with this exact structure: { "reasoning_trace": [ { "step": 1, "sub_question": "string", "answer": "string or null", "source_document_ids": ["string"], "quoted_evidence": ["string"], "confidence": "high|medium|low", "dead_end": false } ], "final_answer": "string", "answerable": true, "missing_information": ["string"] } ## EXAMPLES [FEW_SHOT_EXAMPLES] ## RISK LEVEL [RISK_LEVEL]
Adaptation notes: Replace [USER_QUESTION] with the complex question requiring multi-hop reasoning. [DOCUMENTS] should contain the full set of retrieved passages, each with a unique identifier and the passage text. [FEW_SHOT_EXAMPLES] is optional but strongly recommended for production—include 1-3 examples showing a complete reasoning trace with dead-end handling. Set [RISK_LEVEL] to high if the domain is regulated (finance, healthcare, legal) to trigger additional validation and human review downstream. If your application cannot parse structured JSON reliably, replace the output format with a markdown template, but expect more post-generation repair work. Always validate that every step in the reasoning trace cites a document that actually exists in the input set—this is the most common failure point in production.
Prompt Variables
Required and optional inputs for the multi-hop reasoning prompt. Each variable must be populated before the prompt is assembled and sent to the model. Validation notes describe how to check that the input is well-formed before inference.
| Placeholder | Purpose | Example | Validation Notes |
|---|---|---|---|
[USER_QUESTION] | The complex question requiring evidence chaining across multiple passages | What caused the supply chain disruption in Q3 and how did it impact revenue across regions? | Non-empty string; minimum 10 characters; must contain at least one interrogative or causal indicator |
[RETRIEVED_DOCUMENTS] | The set of retrieved passages to reason over, each with a unique document ID | [{"doc_id": "d1", "text": "..."}, {"doc_id": "d2", "text": "..."}] | Valid JSON array; each object must have doc_id (string) and text (non-empty string); minimum 2 documents required for multi-hop |
[MAX_HOPS] | Upper bound on reasoning steps before the model must produce a final answer or declare a dead end | 5 | Integer between 2 and 10; must be less than or equal to the number of retrieved documents |
[CITATION_STYLE] | Format instruction for how sources should be referenced in the reasoning trace and final answer | inline_brackets | Must be one of: inline_brackets, footnote, doc_id_parenthetical, or none; if none, source attribution validation is skipped |
[CONFIDENCE_THRESHOLD] | Minimum confidence score required to accept an intermediate finding as valid for the next hop | 0.7 | Float between 0.0 and 1.0; findings below this threshold trigger dead-end detection or clarification request |
[DEAD_END_BEHAVIOR] | Instruction for what the model should do when no further evidence hop can be completed | return_partial_with_gaps | Must be one of: return_partial_with_gaps, ask_clarification, or abstain; determines output structure when reasoning cannot complete |
[OUTPUT_SCHEMA] | The expected JSON structure for the final output including reasoning trace, findings, and citations | {"reasoning_steps": [], "final_answer": "", "gaps": [], "confidence": 0.0} | Valid JSON schema string; must include fields for reasoning_steps (array), final_answer (string), gaps (array), and confidence (float) |
[MAX_TOKENS] | Token budget for the model response to prevent runaway reasoning traces | 4096 | Integer between 512 and 16384; must accommodate the expected number of hops plus final answer; monitor for truncation in traces |
Implementation Harness Notes
How to wire the multi-hop reasoning prompt into a production RAG application with validation, retries, and observability.
The multi-hop reasoning prompt is not a standalone artifact—it is a component inside a retrieval-augmented generation pipeline that must be orchestrated with care. In production, this prompt typically sits after a retrieval step that returns a candidate document set and before a final answer synthesis or user-facing response. The harness is responsible for assembling the prompt with the correct [QUESTION], [RETRIEVED_DOCUMENTS], and [REASONING_INSTRUCTIONS], then parsing the model's structured reasoning trace for downstream use. Because multi-hop reasoning can produce dead ends, circular logic, or unsupported leaps, the harness must include validation checks that inspect the reasoning chain before it reaches the user or feeds into the next pipeline stage.
Wire the prompt into your application as a dedicated reasoning service with clear input and output contracts. On the input side, accept a user question and a list of retrieved document objects, each containing at minimum a doc_id, content, and optional source_metadata. Before calling the model, validate that the retrieved set is non-empty and that total token length does not exceed your context budget minus the prompt template overhead. On the output side, parse the model response against a strict schema that includes reasoning_steps (an ordered list of hop objects with step_number, finding, source_doc_ids, and confidence), intermediate_conclusions, dead_ends_detected (with explanation), and final_answer. If the model fails to produce valid JSON, retry once with a repair prompt that includes the raw output and the expected schema. If the second attempt fails, log the failure and escalate to a fallback answer path—do not loop indefinitely.
Model choice matters for multi-hop reasoning workloads. Claude 3.5 Sonnet and GPT-4o are strong defaults for complex reasoning traces, but test your specific document complexity and hop depth. For cost-sensitive deployments, consider routing simpler questions (fewer than two hops) to a faster model and reserving the full multi-hop prompt for questions flagged by a lightweight classifier. Instrument every call with trace metadata: prompt_version, model_id, retrieval_set_id, hop_count, dead_end_count, and latency_ms. This data is essential for debugging reasoning failures and tuning retrieval quality. If your use case involves regulated domains, add a human review gate that surfaces reasoning traces with confidence below a configurable threshold or dead_ends_detected that were not resolved.
The most common production failure mode is the model inventing connections between documents that do not actually support the claimed relationship. Mitigate this by implementing a post-reasoning verification step: for each hop's source_doc_ids, check that the cited documents exist in the retrieved set and that the claimed finding is textually supported. A lightweight NLI model or a second LLM call with a focused verification prompt can catch fabricated hops before they propagate. If verification fails for any hop, flag the entire reasoning trace for review and do not surface the final_answer to the user without a caveat. Next, build an eval harness that tests the prompt against a golden dataset of multi-hop questions with known answer paths, measuring hop accuracy, dead-end detection recall, and final answer correctness. Run these evals on every prompt change before deployment.
Expected Output Contract
Defines the required fields, types, and validation rules for the multi-hop reasoning output. Use this contract to build a post-processing validator that rejects malformed or incomplete responses before they reach downstream systems.
| Field or Element | Type or Format | Required | Validation Rule |
|---|---|---|---|
reasoning_trace | array of objects | Must be a non-empty array. Each element must contain step_number, finding, source_id, and confidence fields. | |
reasoning_trace[].step_number | integer | Must be a positive integer starting at 1 and incrementing sequentially. No gaps or duplicates allowed. | |
reasoning_trace[].finding | string | Must be a non-empty string under 500 characters. Cannot be a verbatim copy of the source passage; must represent a derived intermediate conclusion. | |
reasoning_trace[].source_id | string | Must match a document_id present in the provided [RETRIEVED_DOCUMENTS] input. Null or fabricated IDs must trigger a validation failure. | |
reasoning_trace[].confidence | number | Must be a float between 0.0 and 1.0 inclusive. Values outside this range must be rejected. | |
final_answer | string | Must be a non-empty string under 2000 characters. If the answer is 'Insufficient evidence to answer', the evidence_gap_analysis field must be populated. | |
evidence_gap_analysis | string | Required only if final_answer indicates insufficient evidence. Must list specific missing information types. Null allowed otherwise. | |
dead_end_detected | boolean | Must be true if the reasoning trace contains a step where no further evidence could be retrieved to advance the chain. Must be false otherwise. |
Common Failure Modes
Multi-hop reasoning chains break in predictable ways. Here are the most common failure modes when chaining evidence across multiple retrieved documents and how to guard against them before they reach users.
Dead-End Reasoning Paths
What to watch: The model starts a reasoning chain but cannot find a connecting fact to reach the next hop. It either fabricates a bridge claim or loops on the same intermediate conclusion without progressing. Guardrail: Add an explicit dead-end detection instruction: 'If you cannot find evidence linking [Step A] to [Step B], stop and report the missing link. Do not invent a connection.' Validate that each hop cites a real passage span.
Silent Evidence Contamination Across Hops
What to watch: A fact from Document 1 is incorrectly carried forward as context for interpreting Document 2, even though the documents describe unrelated entities or events. The model merges distinct entities into one narrative. Guardrail: Require entity disambiguation at each hop. Prompt: 'Before using a fact from a new passage, confirm it refers to the same entity as the prior hop. If entity identity is ambiguous, flag it and request clarification.'
Premature Conclusion from Partial Evidence
What to watch: The model reaches an answer after 2 hops when the question requires 4, ignoring later passages that would change the conclusion. It stops reasoning as soon as any plausible answer appears. Guardrail: Define the required reasoning depth upfront. Add: 'Complete all [N] reasoning steps before forming a conclusion. After your final answer, list which passages were used and which were not, with a brief justification for each omission.'
Confidence Collapse on Weak Intermediate Links
What to watch: Each hop carries some uncertainty, but the model reports high confidence in the final answer as if uncertainty compounds. A chain of three 80%-confidence hops should yield lower final confidence, not 95%. Guardrail: Instruct the model to propagate uncertainty: 'Assign a confidence score to each intermediate finding. Your final confidence must not exceed the product of intermediate confidences. If any hop falls below [threshold], abstain or request more evidence.'
Source Proximity Bias in Hop Selection
What to watch: The model prefers evidence from passages that appear close together in the prompt or from the same source document, even when a higher-quality connection exists in a less prominent passage. Retrieval order overrides relevance. Guardrail: Shuffle evidence order or use explicit relevance markers. Prompt: 'Evaluate all available passages for each hop independently. Do not prefer a passage because it appears near the previous hop's source. Justify why each selected passage is the best fit.'
Hallucinated Intermediate Entities
What to watch: When a required intermediate entity (a person, date, or identifier) is missing from the retrieved set, the model invents one to keep the chain moving. The final answer reads plausibly but traces back to a fabricated node. Guardrail: Require explicit entity grounding at each step. Add: 'For every entity you reference in your reasoning, provide the exact passage and span where it appears. If an entity is not present in any retrieved document, stop and report it as missing rather than inferring it.'
Evaluation Rubric
Use this rubric to test the quality of multi-hop reasoning outputs before shipping. Each criterion targets a specific failure mode common in evidence-chaining prompts.
| Criterion | Pass Standard | Failure Signal | Test Method |
|---|---|---|---|
Hop Completeness | All required reasoning hops are present and explicitly connected to at least one source passage | Missing intermediate hop; leap from question to answer without showing evidence chain | Count distinct reasoning steps; verify each step cites at least one [DOCUMENT_ID] |
Source Grounding | Every factual claim in the reasoning trace is anchored to a specific [DOCUMENT_ID] and [PASSAGE_SPAN] | Claim appears without citation; citation references wrong document; hallucinated fact inserted into chain | Parse all [DOCUMENT_ID] references; cross-check each claim against the cited passage text |
Dead-End Detection | Prompt correctly identifies when evidence is insufficient to complete a hop and flags the gap | Prompt fabricates a bridge between disconnected passages; missing evidence treated as confirmed | Inject retrieval sets with deliberate gaps; verify output contains gap flag and does not invent evidence |
Contradiction Handling | Conflicting evidence across passages is surfaced with source comparison and confidence-weighted resolution | Contradiction ignored; one source silently preferred without justification; both claims merged into incoherent synthesis | Provide passages with known conflicts; check output for explicit conflict section and resolution rationale |
Trace Coherence | Reasoning chain flows logically from question through intermediate findings to final answer without circular loops | Circular reasoning where hop B depends on hop A and hop A depends on hop B; non-sequitur jumps | Map the dependency graph of reasoning steps; flag any cycles or unconnected nodes |
Citation Format Compliance | All citations match the required [CITATION_FORMAT] schema with document ID, passage span, and confidence | Missing confidence score; malformed span reference; citation format drifts mid-output | Validate output against [CITATION_SCHEMA] using JSON Schema validator; check all citation objects |
Confidence Calibration | Confidence scores per hop and per final answer correlate with evidence strength and source authority | High confidence assigned to weak or single-source evidence; low confidence on well-supported claims | Compare confidence scores against ground-truth evidence quality labels; measure calibration error |
Abstention Trigger | Prompt abstains or requests clarification when retrieval quality falls below [CONFIDENCE_THRESHOLD] | Answer produced despite all passages scoring below threshold; abstention triggered on sufficient evidence | Run with retrieval sets at varying quality levels; verify abstention boundary matches configured threshold |
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
Start with the base multi-hop reasoning prompt but relax strict schema enforcement. Use natural language output descriptions instead of JSON schema constraints. Allow the model to express reasoning traces in prose rather than structured step objects. Focus on getting the reasoning chain right before locking down format.
Replace the strict [OUTPUT_SCHEMA] placeholder with: Explain your reasoning step by step. For each step, note which source passage you used and what you concluded. End with a final answer.
Watch for
- Reasoning chains that skip intermediate steps and jump to conclusions
- Missing source references when the model connects evidence across passages
- Dead-end steps where the model states it needs evidence but doesn't flag the gap explicitly
- Overly verbose traces that bury the final answer

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