RAG 上生产时,真正会坏掉的是什么
检索演示的失败方式,在真实文档进来之前都是看不见的。占了大部分比例的三种失败,以及应该测什么而不是凭感觉。
占位稿。这篇文章作为版式骨架随文章板块一同发布,在写入真正内容之前,它不会被搜索引擎收录,也不会进入站内助手。
这篇文章以英文发表。站点其余部分已翻译,文章没有,因为一篇经过机器翻译的技术论述,价值低于用它原本语言读到的同一篇。
Every retrieval system demos well. That is the problem: the demo is run against twenty clean documents by the person who chose them, and production is four thousand documents chosen by nobody, half of which are scanned, and a user who phrases the question differently than you did.
Chunking is a retrieval decision, not a preprocessing one
Splitting on a fixed token count is the default because it is the easiest thing to write, and it is wrong for most corpora. A contract clause split across two chunks retrieves as two half-answers, both of which score badly, neither of which is returned.
Embeddings do not understand your acronyms
The failure looks like the model hallucinating. It is not. The retriever returned nothing relevant and the model did what it was asked to do with what it was given.
Nobody is measuring retrieval
The single most common gap. Teams evaluate the generated answer, which is the end of a chain, and conclude the model is weak. Measure recall at the retrieval step first: if the right passage was never in the context window, no amount of prompt work will fix the answer.
If you cannot say what fraction of questions retrieved the correct source document, you do not have a RAG system. You have a search box with a language model attached to it.
This post is a placeholder shipped with the writing section. Replace the body with the real piece; the frontmatter above is the only thing the site reads.