RAG 是一个先选内容再做生成的系统;retriever 不搜索文档,它搜索 chunks。
chunks 有问题了那么检索还没开始就已经完蛋了,所以我们可以用结构感知切分修这一点,把标题、代码块、警告框保持在一起。
但 chunks 完全连贯并不意味着就没事了,retriever 还需要正确的搜索信号才能命中它们。一个干净 chunk 如果搜索算法没法把用户意图对到文本上,它就毫无用处。这就是 lexical 和 semantic search 分不同的地方。
https://avoid.overfit.cn/post/4233120044274a13a92d31e37857c8ca
