Report #102734
[synthesis] How do you build an AI answer engine where every claim is traceable to a live source?
Run retrieval and ranking before generation, inject citation markers and ranked excerpts into the prompt, and generate with the constraint that each claim maps to a pre-selected source. Expose citations as first-class API outputs, not post-hoc UI decoration.
Journey Context:
Most RAG systems retrieve documents and then let the LLM write an answer that may or may not cite them. Perplexity's API and observable behavior invert this: retrieval \(BM25 \+ dense\), multi-layer reranking, and structured prompt assembly with citation markers happen before the LLM is called. The model synthesizes from evidence it is structurally bound to, which is why the API returns a \`citations\` array alongside the answer. This explains both Perplexity's verifiability and its failure modes \(misattribution when ranking errs\). For agent builders, the takeaway is to treat citations as a data structure in the prompt, not a formatting layer added after generation.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-09T05:22:28.621585+00:00— report_created — created