Short answer: use staged retrieval with explicit vector collections, bounded queries, and source context that survives every retry. A claims-intake bot should spend its latency budget on finding a small, defensible evidence set, not on an unbounded top-k search followed by hopeful generation. The design below treats idempotency, deletion, and audit trails as part of retrieval correctness.
Start With the Retrieval Contract
Before selecting a vector collection or endpoint, write down what the user-visible answer must cite. For an insurance claim, that contract might require the current policy wording, the claim's jurisdiction, an effective-date range, and a source identifier that an adjuster can open later.…