根据论文内容,这篇文章提出的CoRAG方法属于检索增强推理类型。其核心目的是通过多步迭代的检索和动态调整查询,提升模型在复杂推理任务中的能力,解决单次检索信息不足导致的推理失败问题

具体分析如下:

  1. 检索增强推理的特征: • 通过链式检索(Chain-of-Retrieval)逐步补充知识,支持多跳推理。例如在多跳QA中,模型会先检索与问题相关的子信息,基于这些信息生成新的子查询,再检索更深层的知识。 • 使用动态查询改写(Dynamic Query Reformulation),根据当前推理状态调整后续检索目标。这相当于用推理过程指导检索方向,但最终目标仍是完成复杂推理任务。 • 实验结果表明,CoRAG在需要多步推理的任务(如MuSiQue)上提升最显著(EM提升超过10点),说明检索的核心作用是补充推理所需知识。
  2. 与推理增强检索的区别: • 虽然CoRAG涉及"通过推理调整检索"(如动态生成子查询),但这只是中间手段而非最终目标。论文明确指出其目标是生成最终答案时"突破单次检索质量的天花板"(Abstract),而非单纯优化检索效果。 • 对比基线实验显示,即使使用低质量检索器(如BM25),CoRAG仍能通过多步检索提升性能(表3),说明其重点在于通过检索补偿推理能力,而非通过推理优化检索质量。
  3. 解决的问题: • 传统RAG单次检索的局限性:当复杂问题需要多个相关文档时,单次检索可能遗漏关键信息(如多跳QA中的中间事实)。 • 知识长尾性问题:模型无法记忆所有知识,通过链式检索动态获取最新/长尾知识支持推理。 • 幻觉抑制:通过检索提供事实依据,使推理过程可验证(Conclusion部分强调这是构建可信AI的重要方向)。

因此,CoRAG的范式更接近**"用检索为推理提供燃料"**,而非"用推理为检索提供引擎"。这种设计使其在需要复杂知识关联的任务(如多跳QA、知识密集型NLP任务)中表现突破,符合检索增强推理的核心定义。


1. 多步推理过程总结

核心推理流程用户原始查询 → 动态生成子查询(Q₁) → 检索相关文档(D₁) → 生成子答案(A₁) → 基于(Q+A₁)生成新子查询(Q₂) → 迭代循环 → 综合所有子答案生成最终答案

迭代单元的最小过程

  1. 子查询生成:基于当前状态(历史Q+A序列)生成新查询
  2. 文档检索:用子查询检索Top-k相关文档
  3. 子答案生成:基于检索结果生成中间答案
  4. 终止判断:通过预定义规则(如答案匹配/最大步数)或学习到的停止机制决定是否继续

2. 方法类型判断

属于动态流程的Agentic RAG,主要依据: • 动态触发机制:检索步骤的数量和触发时机不固定,完全由模型根据中间结果动态决定 • 自主决策能力:通过训练使模型自主生成子查询(如案例中从"查找出生日期"到"计算月份差"的链式推导) • 非预设路径:支持多种解码策略(贪婪采样/树搜索)实现路径分支探索

3. 预定义流程的细化类型

(不适用,因属于动态流程)