检索增强生成(RAG)通过将回答与外部文档关联起来来提升问答(QA)的效果,但仍然存在检索不相关和单次生成错误的问题。为了解决这些问题,我们提出了ReflectRAG框架,该框架通过结构化规划、迭代反思和强化学习(RL)来改进RAG。具体来说,ReflectRAG首先检索并重新排序文档,然后根据基于事实的规划生成答案。接着,ReflectRAG利用反思模块迭代地评估和优化计划和答案,并通过RL优化反思模块。通过整合规划、反思和RL,ReflectRAG能够提供精确且与上下文一致的答案,为开放领域QA提供了一个强大的解决方案。为了证明我们提出模型的有效性,我们在MS MARCO v2.1、TriviaQA和Natural Questions(NQ)上进行了广泛的实验。在三个开放领域数据集上的比较结果显示,ReflectRAG相对于BASE RAG基线,在MS MARCO v2.1、TriviaQA和NQ上获得了高达+0.31的绝对F1分数,证明了ReflectRAG在提高QA系统的事实准确性和连贯性方面的有效性。源代码可在以下链接获取:https://github.com/uncxlirh/ReflectRAG。
为了解决这些限制,我们引入了ReflectRAG。与现有的仅将验证作为事后步骤的纠正性或自我反思RAG方法不同,ReflectRAG将三个紧密耦合的组件整合到一个统一的流程中。首先,规划阶段在生成开始之前将检索到的证据组织成结构化、基于事实的表示——从源头解决噪声敏感性问题,而不是在答案已经确定之后。其次,迭代反思模块根据检索到的段落批判性评估草稿答案并提出有针对性的修改,提供了单次流程所缺乏的系统性错误纠正机制。第三,强化学习阶段通过群体相对策略优化(GRPO)[10]优化反思模型,使用F1、ROUGE-L和BERTScore[11]等评估指标作为训练时的奖励信号,确保学到的批判转化为可测量的答案改进。我们进行了广泛的实验来证明ReflectRAG的有效性。在MS MARCO v2.1、TriviaQA和Natural Questions上的实验结果显示出了显著的提升,包括一致的绝对F1分数提高,以及ROUGE-L和BERTScore的改善。因此,ReflectRAG为用于信息中心应用(如搜索和对话系统)的神经QA流程提供了实际的增强。