评估多步骤检索 RAG 系统与单步方法的主要区别在于如何跟踪中间检索准确性并评估其对最终答案正确性的影响。 在单步系统中,您评估检索质量一次(例如,检索文档的相关性),并直接衡量生成的答案与事实依据的匹配程度。 对于多步骤系统,您必须评估每个检索阶段(例如,初始查询、细化的后续查询),以确保每个阶段的准确性,因为早期步骤中的错误会累积并降低最终结果。 这种分层评估有助于识别需要改进的地方 - 无论是在查询细化、上下文扩展还是过滤方面。
在实践中,单步检索评估侧重于 precision@k(例如,前 5 个文档中有多少是相关的)和召回率等指标,并结合诸如精确匹配或 F1 分数之类的答案正确性指标。 对于多步骤系统,您将跟踪每个检索步骤的类似指标。 例如,如果第一步检索广泛的上下文,第二步缩小范围,则您将独立测量这两个步骤的 precision@k。 此外,您可以分析中间输出(例如,来自第一次检索的摘要上下文)如何影响第二个查询的有效性。 最终答案的正确性仍然依赖于标准指标,但您会将其与中间结果相关联以诊断问题 - 例如,正确的最终答案依赖于有缺陷的中间步骤(例如,尽管检索效果不佳,但仍做出了正确的猜测)。
一个具体的例子:假设一个用户问:“什么导致 X 疾病,它与 Y 疾病有何不同?” 单步系统可能会检索一般的医学文章,从而遗漏具体的区别。 如果 5 个文档中有 3 个不相关,则生成的答案可能不正确。 在多步骤系统中,第一次检索可以侧重于疾病原因,第二次侧重于区分。 如果第一步检索到 5 个相关文档中的 4 个,但由于查询细化程度不高,第二步检索到 5 个相关文档中的 1 个,则最终答案可能正确地解释了原因,但无法进行对比。 跟踪这两个步骤揭示了第二次检索是瓶颈。 这种粒度有助于开发人员有针对性地进行修复 - 例如,改进查询细化逻辑 - 而不是彻底修改整个系统。 因此,多步骤评估增加了深度,但需要更多的工具来跟踪管道中的错误。