Agentic-R:学习为代理搜索进行检索 Agentic-R: Learning to Retrieve for Agentic Search
提出为代理搜索设计的检索器训练框架,通过迭代优化提升多跳问答性能
前置知识
代理搜索(Agentic Search)
一种新兴的检索增强生成范式,其中大语言模型(LLM)代理将多步推理与按需检索交织进行。与传统单次检索-生成不同,代理会先分析当前信息缺口,生成针对性的子查询,检索外部知识,然后基于新信息继续推理。这个过程可能重复多轮,直到代理认为已收集足够信息来回答原始问题。例如在回答“谁更年长,Jed Hoyer还是John William Henry II?”时,代理会先搜索一人出生年份,再搜索另一人,最后比较得出答案。
本文的核心是优化代理搜索中的检索器,理解代理搜索的工作机制是理解本文方法的前提。
检索增强生成(Retrieval-Augmented Generation, RAG)
通过检索外部知识库来增强大语言模型生成能力的技术。标准RAG流程是:接收用户问题,检索相关文档,将文档作为上下文提供给LLM生成答案。其优势在于能访问最新、专业的外部知识,缓解LLM的幻觉问题。但传统RAG是单次检索,对于需要多步推理的复杂问题效果有限。
本文提出的Agentic-R是RAG在代理搜索场景下的专门化检索器,理解标准RAG的局限性有助于把握本文的创新点。
对比学习(Contrastive Learning)
一种表示学习方法,核心思想是通过构造正样本对和负样本对来训练模型。在检索任务中,正样本对是查询和相关文档,负样本对是查询和不相关文档。模型通过最小化正样本对的距离、最大化负样本对的距离来学习高质量的表示。常用损失函数是InfoNCE:$\mathcal{L} = -\log ?rac{\exp( ext{sim}(q, d^+)/ au)}{\sum_{i=1}^{N} \exp( ext{sim}(q, d_i)/ au)}$,其中$ au$是温度参数。
本文使用对比学习训练检索器,理解对比学习的原理有助于理解训练过程的技术细节。
强化学习(Reinforcement Learning, RL)
一种机器学习范式,智能体通过与环境交互来学习最优策略。在本文中,搜索代理使用强化学习(具体是PPO算法)进行训练,代理与检索器交互,根据最终答案是否正确获得奖励,从而优化其推理和搜索策略。RL使得代理能学习复杂的多轮搜索行为,而无需人工标注每一步的监督信号。
本文的迭代优化框架涉及用RL训练搜索代理,理解RL的基本概念有助于把握整体训练流程。
列表式重排序(Listwise Reranking)
一种文档排序方法,与点对点(pointwise)和成对(pairwise)方法不同,列表式方法同时考虑整个文档列表来生成排序。在本文中,作者使用LLM进行列表式相关性评分:将查询和多个候选段落同时输入LLM,让LLM为每个段落分配0-100的相关性分数。这种方法能更好地捕捉段落间的相对重要性,产生更准确的评分。
本文用列表式评分评估段落的局部相关性,这是效用建模的关键组成部分。
研究动机
在代理搜索场景中,现有方法普遍依赖通用的基于相似性的检索器(如E5、BGE),这些检索器通过语义相似度匹配查询和文档。然而,语义相似并不等同于对下游任务有用。一个具体的场景是:在多跳问答中,代理生成子查询“Jed Hoyer出生年份”,检索器可能返回一个与查询高度相关但包含错误或误导信息的段落(例如关于另一个人的信息),这个段落虽然语义相似,却会导致代理后续推理出错,最终生成错误答案。现有研究已发现,高语义相似度不能保证段落对生成答案有用,有时甚至会引入噪声。此外,现有为RAG设计的效用优化检索器(如REPLUG、SCARLet)是基于单轮RAG训练的,它们依赖黄金答案来评估段落效用,但代理搜索中的中间查询没有黄金答案,这使得现有方法难以直接应用。
本文的目标是本文的具体目标是设计一个专为代理搜索优化的检索器训练框架,称为Agentic-R。该框架需要满足三个核心要求:第一,能够评估段落在多轮代理搜索中的真实效用,而不仅仅是局部相关性,这意味着要同时考虑段落对当前查询的匹配度和对最终答案生成的贡献度;第二,能够处理中间查询没有黄金答案的挑战,因为代理搜索中的子查询是动态生成的,没有预先标注的标准答案;第三,通过迭代优化使检索器和搜索代理共同进化,最终提升代理在复杂问答任务上的性能。具体量化目标包括:在七个问答基准(包括HotpotQA、2WikiMultihopQA、Musique、Bamboogle、NQ、TriviaQA、PopQA)上实现持续且显著的性能提升,平均EM得分比现有最佳基线提高2-3点;同时减少代理所需的搜索轮次,目标是减少10-15%的搜索次数,从而提高推理效率。此外,框架还需要具备良好的泛化能力,不仅适用于训练时的代理,还能迁移到其他搜索代理架构。
与已有工作不同的是,本文的独特切入角度在于抓住了代理搜索中两个被忽视的关键点。第一,段落效用应该是全局的而非局部的:一个段落即使与当前子查询高度相关,如果它误导后续推理导致最终答案错误,那么它的效用就应该被评估为低。现有方法只考虑局部相关性,忽略了这种全局影响。第二,检索器和代理的优化应该是双向迭代的:代理生成的查询质量会影响检索器训练,而更强的检索器又能通过提供更相关文档来提升代理性能。现有方法采用单向优化,检索器只训练一次,错过了这种协同进化的机会。
核心方法
本文的方法可以类比为一个师生协同学习的过程。搜索代理(学生)通过与检索器(老师)交互来学习如何回答问题,而检索器则根据学生的表现来调整自己的教学材料。具体来说,方法分为三个阶段:首先,代理生成一条完整的推理-检索轨迹,记录每一步的思考、查询和检索到的段落;然后,对轨迹中每个子查询,评估其候选段落的效用,评估维度包括局部相关性(段落是否直接回答子查询)和全局正确性(使用该段落是否能让代理最终答对);最后,用评估结果训练检索器。这个过程不是一次性的,而是迭代的:训练好的检索器会帮助代理变得更强,更强的代理又会生成更好的查询来进一步训练检索器。
本文的核心创新点是提出了双维度的段落效用建模。与现有方法只考虑局部相关性不同,本文同时考虑两个维度:局部相关性(Local Relevance, LR)和全局答案正确性(Global Answer Correctness, GAC)。局部相关性通过LLM列表式评分实现:将子查询和多个候选段落同时输入Qwen2.5-72B-Instruct,让LLM为每个段落分配0-100的相关性分数,并引入子答案(sub-answer)作为参考。全局答案正确性则通过精确匹配(Exact Match, EM)评估:将候选段落提供给代理,让代理继续生成最终答案,然后检查答案是否与黄金答案一致。这种双维度建模的本质区别在于:它认识到一个段落的价值不仅在于它是否与当前查询相关,更在于它是否能引导代理走向正确的最终答案。一个高局部相关但低全局正确性的段落(如误导性信息)应该被避免,而一个中等相关但高全局正确性的段落(如提供关键线索)应该被优先选择。
方法步骤详情
方法步骤如下:第一步,代理轨迹生成。给定原始问题$Q$和初始检索器$R$,让搜索代理生成完整轨迹$T = \{t_1, q_1, D_1, \ldots, t_n, A\}$。第二步,候选段落检索。对每个查询$q_i$,用检索器$R$检索候选段落集$P_i$,$|P_i| = 20$。第三步,局部相关性评估。将$q_i$和$P_i$输入LLM,采用列表式评分,为每个段落分配相关性分数$LR_{i,j} \in [0, 100]$。第四步,全局正确性评估。对每个候选段落,让代理继续生成最终答案,计算$GAC_{i,j} = EM(A_{i,j}, A_{\text{gold}})$。第五步,正负样本选择。按GAC降序、LR降序排列,选择排名第一且满足$GAC=1$、$LR \geq 60$的段落作为正样本,其余作为负样本,总共$N=16$个段落。第六步,检索器训练。用对比学习训练检索器,输入为$x_i = Q [\text{SEP}] q_i$,使用InfoNCE损失函数。
技术新颖性
本文的技术新颖性体现在三个方面。首先,首次为代理搜索设计专门的检索器训练框架。现有工作主要关注优化搜索代理本身,而忽略了检索器这一关键组件。本文填补了这一空白。其次,提出双维度效用建模。现有方法(如REPLUG、SCARLet)只考虑局部相关性或单轮效用,本文引入全局答案正确性,更全面地评估段落在多轮推理中的价值。这种建模方式更符合代理搜索的本质:段落的价值最终体现在它是否能帮助代理答对问题。第三,引入迭代优化框架。现有方法采用单向优化,检索器只训练一次。本文提出代理和检索器双向迭代优化:检索器优化后,代理通过RL与更强检索器交互变得更强,更强的代理又生成更好的查询来进一步训练检索器。这种协同进化能产生更高质量的训练信号,形成良性循环。
实验结果
实验在七个问答基准上进行,包括四个多跳数据集(HotpotQA、2WikiMultihopQA、Musique、Bamboogle)和三个单跳数据集(NQ、TriviaQA、PopQA)。主要发现如下:第一,Agentic-R在所有三个搜索代理上都实现了最佳平均EM得分。在领域内代理上,平均EM为45.00,比次优基线REPLUG(41.78)高出3.22点。在R1-Searcher上,平均EM为43.64,比E5(41.67)高出1.97点。在SimpleDeepSearcher上,平均EM为39.43,比REPLUG(37.69)高出1.74点。第二,Agentic-R在多跳QA上的提升比单跳QA更显著,多跳平均提升约3点,单跳约2点。第三,消融研究表明双维度效用建模的必要性:移除GAC导致平均EM下降1.1点,移除LR导致下降1.7点。第四,迭代优化有效:两次迭代带来2.74点提升,但第三次迭代没有进一步改进。第五,Agentic-R减少了代理的搜索轮次,在HotpotQA上减少15.7%,在TriviaQA上减少10.6%。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| HotpotQA(多跳问答) | Exact Match (EM) | 45.82 | REPLUG: 42.63 | +3.19 |
| 2WikiMultihopQA(多跳问答) | Exact Match (EM) | 45.30 | REPLUG: 40.23 | +5.07 |
| Musique(多跳问答) | Exact Match (EM) | 20.27 | REPLUG: 18.90 | +1.37 |
| Bamboogle(多跳问答) | Exact Match (EM) | 48.00 | E5: 44.00 | +4.00 |
| NQ(单跳问答) | Exact Match (EM) | 42.43 | E5: 42.18 | +0.25 |
| TriviaQA(单跳问答) | Exact Match (EM) | 69.02 | REPLUG: 65.78 | +3.24 |
| PopQA(单跳问答) | Exact Match (EM) | 44.14 | REPLUG: 41.85 | +2.29 |
局限与改进
作者承认的局限性包括:第一,评估仅限于问答基准,这些数据集虽然覆盖了单跳和多跳场景,但不能完全代表更复杂、更深层的推理任务,如科学推理(GPQA)或专家级问答。第二,由于计算和内存限制,实验只使用了中等规模的代理(Qwen2.5-7B)和检索器骨干(E5-base),虽然结果显示了良好的扩展趋势,但在更大模型上的有效性有待验证。我自己的观察:第一,效用建模依赖LLM(Qwen2.5-72B)进行列表式评分,这带来了显著的计算开销,可能限制其在资源受限场景的应用。第二,训练数据构建过程复杂,需要为每个子查询生成子答案、进行全局正确性评估,这增加了训练流程的复杂性和时间成本。第三,迭代优化在两次迭代后收敛,但论文没有深入分析为什么不能持续改进,可能存在优化瓶颈。第四,方法依赖精确匹配(EM)作为全局正确性指标,这要求答案格式严格匹配,对于开放性或需要推理的答案可能不适用。
独立分析的弱点
基于独立分析,我识别出以下几个弱点并提出改进方向:第一,效用建模的LLM依赖问题。当前方法使用Qwen2.5-72B进行相关性评分,这需要大量计算资源且速度较慢。改进方向:可以探索使用更小的专用评分模型,或开发基于规则的快速过滤器先筛选候选段落,再用LLM精排。第二,全局正确性评估的效率问题。当前需要为每个候选段落让代理运行到最终答案,计算成本很高。改进方向:可以训练一个轻量级预测器,直接预测段落对最终答案的影响,避免完整推理。第三,迭代优化的收敛性。两次迭代后性能不再提升,可能是因为代理查询质量或检索器能力达到瓶颈。改进方向:可以引入课程学习,从简单问题逐步过渡到复杂问题,或采用更稳定的优化策略如交替优化而非完全重训。第四,EM指标的局限性。精确匹配要求答案字符串完全一致,但对于同义表达或部分正确的答案不公平。改进方向:可以结合语义相似度(如BERTScore)或部分匹配指标,更全面地评估答案正确性。
未来方向
基于本文成果,未来研究方向包括:第一,扩展到更广泛的任务。作者提到可以扩展到科学推理(如GPQA)或专家级任务,我认为还可以扩展到多模态代理搜索(结合图像、表格检索)或跨语言检索场景。第二,探索更高效的训练范式。当前迭代优化需要反复训练代理和检索器,可以研究单阶段联合优化或元学习方法,减少训练成本。第三,研究效用建模的理论基础。当前双维度建模是启发式的,未来可以建立更严格的理论框架,分析局部相关性和全局正确性的权衡关系。第四,开发自适应检索策略。当前检索器对所有查询采用相同策略,未来可以让检索器根据查询复杂度或代理状态动态调整检索行为。第五,结合强化学习优化检索器。当前检索器用监督学习训练,可以探索用RL直接优化检索器,使其针对最终任务奖励进行端到端优化。
复现评估
复现评估:本文代码已在GitHub开源(https://github.com/8421BCD/Agentic-R),提供了完整的训练和评估脚本。数据方面,使用公开数据集(HotpotQA、TriviaQA等)和公开语料库(2018年12月Wikipedia dump),数据获取方便。算力需求较高:训练需要8张A800 80G GPU,迭代训练两次,总训练时间较长。复现难度中等:代码结构清晰,但训练流程涉及多个阶段(代理训练、检索器训练、迭代优化),需要仔细调参。关键复现注意事项:1)代理训练使用PPO,需要稳定的RL训练环境;2)效用建模需要调用Qwen2.5-72B进行评分,需要足够的GPU内存;3)迭代优化需要管理多个检查点和训练阶段。总体而言,对于有RL训练经验的团队,复现可行性较高,但需要相当的计算资源。
论文图表
展示了一个代理搜索的完整过程:问题“谁更年长,Jed Hoyer还是John William Henry II?”。代理在第一轮搜索John William Henry II的出生年份,得到信息后推理出需要搜索Jed Hoyer;第二轮搜索Jed Hoyer出生年份;第三轮比较后给出最终答案。图中清晰展示了推理、搜索、信息获取的多轮交替过程。
这张图直观展示了代理搜索的工作流程,帮助读者理解本文要解决的问题场景:多轮推理与检索的交织。没有这张图,读者可能难以把握代理搜索与传统单次检索的本质区别。