Two failure modes, not one
Retrieval failure happens when the wrong document is surfaced but looks topically plausible; the model then answers fluently from irrelevant context. Generation failure happens when the right document is retrieved but the model subtly misstates, over-generalises or combines it incorrectly with another source.
Most teams instrument only overall answer quality, which conflates these two causes and makes it nearly impossible to know which part of the pipeline to fix.
Instrument retrieval and generation separately
Track retrieval precision against a labelled evaluation set independent of generation quality — does the system surface the right document, regardless of what it then says. Separately, score generation faithfulness: does the answer's claims actually follow from the retrieved text, checked by a dedicated grounding check rather than assumed.
This separation turns a vague 'the AI gave a wrong answer' bug report into an actionable one: a retrieval bug and a generation bug need completely different fixes.
Build the adversarial test set, not just the happy-path one
Most evaluation sets only test questions the system is expected to answer well. Add deliberately adversarial cases: questions with no good answer in the corpus, questions where two retrieved documents conflict, and questions that are topically close to a strong match but actually require a different document entirely.
A system that performs well on happy-path questions but confidently answers the adversarial set anyway is not a reliable system — it's an unreliable one that has not yet been asked the right question.
Grounded is not the same as correct. It only means the model had something real to misread.MNB AI Practice
Key actions
- Score retrieval precision independently of generation quality
- Run a dedicated faithfulness/grounding check on generated claims
- Build an adversarial evaluation set, not just a happy-path one
- Re-evaluate whenever the retrieval corpus or model version changes