Most writing about retrieval selection assumes you already have a test set. You compare BM25 against dense retrieval, or a reranker against no reranker, by scoring each candidate on labeled query-document pairs. That assumption hides the hard part. In a production system, nobody has labeled which chunks are relevant, and building that set by hand is slow and expensive. The problem gets worse as the corpus changes, because every labeling round goes stale.
The fix is to stop treating labeling as a separate project and start treating your running system as a labeling machine. Two signals are already being produced every day: the sources your agent cites, and the results your users click. Both are noisy, but both are cheap, continuous, and specific to your own corpus. That is more than you can say for a public benchmark, which Qdrant's guide to choosing an embedding model warns rarely represents your own data.
The one decision rule to carry through this article: use citations when you want to know whether a retrieved passage contained the answer, and use clicks when you want to know whether a result looked promising enough to open. Do not mix them into a single score without keeping them separate in the logs, because they measure different things.



