A vector index always returns something. Ask for the single closest vector and you get one, even when the query is about a product you retired, a policy that does not apply, or something the corpus never covered. Cosine similarity does not report "nothing here matches"; it reports the angle between two vectors, and the smallest angle wins whether it is 5 degrees or 85. The distance metric only orders candidates, it does not certify relevance per this survey of similarity metrics and approximate search.
That becomes a quality problem the moment retrieval feeds a language model. A retrieval-augmented generation (RAG) pipeline pairs a retriever with a generator that conditions its answer on the retrieved context as described in this RAG evaluation guide. If the retriever hands over a topically adjacent but wrong passage, the generator treats it as authoritative and answers confidently from it. Nothing in the stack throws an error: the embedding call succeeds, the index returns a valid row, the prompt fits, and the output is fluent. The request looks healthy in observability terms while being wrong for the user.
A worked illustration makes this concrete. DigitalOcean's conceptual guide describes a support-policy question that retrieves a passage scoring 0.79 cosine similarity against a cutoff of 0.75. The passage is on topic but covers a different customer tier, so it passes the gate and the model answers with the wrong tier's rules. The authors are explicit that these are hypothetical values for illustration, not measured benchmarks, but the failure shape is the one you will meet in their threshold guide. The threshold is not a cost knob. It is the policy that decides which evidence is allowed to reach the model.
That reframing matters because it tells you what to optimize. You are not tuning tokens per query. You are deciding how much wrong evidence you will tolerate versus how often you will tell a user "I don't have that."



