如果 RAG 系统的检索器达到了很高的 recall@5,但端到端问答 (QA) 准确率仍然很低,这表明检索器获取相关文档的能力与生成器从这些文档中合成准确答案的能力之间存在脱节。 Recall@5 衡量的是至少一个正确的文档出现在前五个检索结果中的频率。 此处的高召回率意味着检索器成功识别了相关上下文。 然而,低 QA 准确率表明生成器要么难以解释检索到的内容,要么检索到的数据缺乏足够的细节,要么系统无法优先考虑这些文档中最关键的信息。 根本问题可能在于检索和生成组件之间的交互,而不仅仅是检索器本身。
一个常见原因是检索到的内容与生成器的要求之间对齐不良。 例如,检索器可能会返回与查询大致相关的段落,但缺乏精确答案所需的具体细节。 想象一下,用户问:“什么导致锂离子电池退化?” 检索器提取了五个讨论电池化学性质的文档,但只有一个简要提到“固体电解质界面生长”作为退化因素。 如果生成器没有经过训练来识别和强调该细节,它可能会产生模糊或不正确的答案。 此外,前五个结果中的嘈杂或冗余信息可能会使生成器不堪重负,导致它混淆概念或优先考虑不太相关的细节。 这突出了不仅要检索相关文档,还要确保它们包含清晰、简洁和互补信息的重要性。
为了解决这个问题,开发人员应该首先验证检索内容的质量。 诸如手动抽样或自动相关性评分之类的工具可以识别前五个文档是否始终包含值得回答的段落。 接下来,评估生成器在给出明确正确的上下文时的性能。 如果准确性提高,则问题在于检索精度或排名(例如,正确的文档存在但被埋没在噪声中)。 如果准确性仍然很低,则生成器可能需要进行微调,以完成需要合成多文档输入或提取细粒度细节的任务。 调整传递给生成器的文档数量(例如,使用前 2 个而不是前 5 个)或实施重新排名器以优先考虑答案丰富的段落也可以弥合检索和生成之间的差距。