证据链:面向深度搜索智能体的引文感知评分奖励鲁棒强化学习 Chaining the Evidence: Robust Reinforcement Learning for Deep Search Agents with Citation-Aware Rubric Rewards
提出 CaRR 细粒度奖励框架和 C-GRPO 算法,解决深度搜索 RL 中的捷径利用与幻觉问题
前置知识
ReAct 范式
ReAct(Reasoning + Acting)是大语言模型智能体的经典交互范式,由 Yao 等人在 2023 年提出。在该范式下,智能体遵循「思考(think)→ 行动(action)→ 观察(observation)」的迭代循环来解决复杂问题。行动通常是对工具的调用,如搜索引擎查询、打开网页、关键词查找等。每一步的思考过程和工具调用结果都会被记录为轨迹(trajectory),直到智能体给出最终答案。这种范式将推理和行动自然地结合在一起,使得 LLM 能够利用外部工具获取实时信息,而不仅仅依赖预训练知识。
本文的深度搜索智能体完全基于 ReAct 范式构建,CaRR 和 C-GRPO 的设计都针对这种多轮交互轨迹进行评估和优化,理解 ReAct 是理解本文方法的前提。
GRPO(Group Relative Policy Optimization)
GRPO 是 DeepSeek 团队在 2024 年提出的一种强化学习算法,是 PPO 的简化变体。其核心思想是:对同一个问题采样一组(group)rollout 轨迹,计算每条轨迹的奖励,然后通过组内奖励的均值和标准差计算优势(advantage),从而省去了 PPO 中独立的 critic 模型。优势值 $\hat{A}_i = \frac{R_i - \text{mean}(R_k)_{k=1}^G}{\text{std}(R_k)_{k=1}^G}$ 用于指导策略梯度更新。该算法已被广泛用于 LLM 的强化学习训练,尤其是在数学推理和搜索智能体领域。
本文提出的 C-GRPO 是对标准 GRPO 的扩展,核心改进在于将单纯的二值 outcome reward 替换为混合了 rubric reward 的复合奖励,理解 GRPO 的工作原理是理解 C-GRPO 创新点的基础。
多跳问答(Multi-hop QA)
多跳问答是指需要经过多个推理步骤、连接多条知识线索才能回答的问题。例如,要回答「A 国家的首都附近有一座以 X 命名的大学,该大学的 Y 教授获得了什么奖项?」,需要先确定 A 国家、找到其首都、找到附近的 X 大学、找到 Y 教授、找到其奖项。每一步推理称为一个「跳」(hop)。在深度搜索场景中,多跳问题通常需要在互联网上进行多次检索和验证,中间涉及的实体被刻意隐晦化,增加了搜索难度。
本文的方法正是利用了多跳问题的可分解结构:每个 hop 对应一个可验证的 rubric,这是 CaRR 框架的核心设计基础。
Outcome Reward vs. Process Reward
在强化学习中,outcome reward 只关注最终结果是否正确(如答案是否匹配 ground truth),提供的是二值信号(0 或 1)。Process reward 则关注推理过程的质量,对中间步骤给予反馈。Outcome reward 的优势是简单高效、无需标注中间步骤,但缺点是无法区分「正确推理得出正确答案」和「错误推理碰巧得出正确答案」。Process reward 能提供更丰富的监督信号,但通常需要额外的标注或评估机制。
本文的核心问题正是现有深度搜索 RL 只使用 outcome reward 的局限性,CaRR 本质上是一种面向搜索智能体推理过程的细粒度 reward 框架,介于传统 outcome reward 和 full process reward 之间。
知识图谱随机游走与实体混淆
DeepDive 等合成深度搜索数据集的构建方法:从知识图谱中通过随机游走(random walk)采样实体链,形成多跳推理路径,然后通过实体混淆(entity obfuscation)将路径中的中间实体替换为隐晦的描述(如将「泰国」替换为「东南亚国家」),迫使智能体必须通过搜索才能发现这些隐藏实体的身份。最终答案通常是一个短形式的实体字符串,便于自动验证。
本文的训练数据来自 DeepDive 数据集,CaRR 的 rubric 分解机制正是利用了这类合成数据中隐含的实体结构——每个隐藏实体对应一个需要满足的 rubric。
研究动机
当前深度搜索智能体的强化学习训练普遍依赖二值 outcome reward,即只判断最终答案是否与 ground truth 一致。这种奖励信号过于粗糙,存在两个严重问题。第一是捷径利用(shortcut exploitation):智能体可能只利用问题中的最后几个 hop 就猜测出答案,而忽略了问题前半部分的约束条件。例如,对于一个涉及 6 个中间实体的多跳问题,智能体可能只搜索了其中 2-3 个实体就直接给出答案,并且碰巧答对了。GRPO 会将这种「走捷径答对」的轨迹给予正奖励,导致策略逐渐退化——论文的训练动态分析显示,GRPO 训练的智能体平均工具调用步数持续下降,陷入局部最优。第二是幻觉容忍(hallucination tolerance):智能体可能编造不存在的实体名称或事实,但只要最终答案碰巧正确,outcome reward 仍然为 1。这些问题在有限上下文长度(64k)内表现不明显,但当测试时上下文预算扩展到 128k 时,GRPO 训练的智能体性能反而可能下降,暴露出策略的脆弱性。
本文的目标是本文的目标是设计一种细粒度的奖励框架,能够在强化学习训练过程中同时评估深度搜索智能体的推理全面性(comprehensiveness)、事实依据性(factual grounding)和证据连通性(evidence connectivity),从而训练出更鲁棒的深度搜索智能体。具体而言,该框架应该能够:(1) 惩罚只利用部分约束就得出答案的捷径行为;(2) 要求智能体为每个中间实体找到正确的引用来源;(3) 确保所有引用的证据能形成一条完整的证据链,连接到最终答案。最终希望在标准深度搜索基准上超越纯 outcome reward 的 GRPO 基线,并在开放式的深度研究任务上展现良好的泛化能力。
与已有工作不同的是,现有工作的创新主要集中在两个方面:数据合成(如何构建更高质量的多跳 QA 训练数据)和基础设施(如何高效地进行大规模 RL 训练),但普遍忽略了 outcome reward 本身的局限性。E-GRPO 是唯一尝试引入细粒度奖励的相关工作,它使用实体匹配率作为 incorrect rollout 的辅助奖励,以区分「接近正确」和「完全失败」的轨迹。但 E-GRPO 存在两个问题:(1) 依赖 gold annotation 来标注中间隐藏实体,增加了数据标注成本;(2) 只对错误轨迹施加细粒度奖励,正确轨迹仍然只获得二值 outcome reward。本文的独特切入角度是:利用合成多跳问题天然的可分解结构,将每个 hop 转化为可验证的 rubric,并在正确轨迹上也施加细粒度奖励,从而同时解决捷径利用和幻觉问题。这个视角抓住了被忽视的关键点——即使答案正确,推理过程的质量也需要被评估。
核心方法
可以用一个比喻来理解 CaRR 的设计:想象一个多线索侦探案件,每个线索对应一个中间事实(rubric)。一个优秀的侦探不仅要找到最终答案(outcome reward),还要追踪每一条线索并找到支撑证据(citation grounding),同时确保所有线索能串联成完整的证据链(evidence connectivity)。纯 outcome reward 只看侦探是否抓对了犯人,而 CaRR 还检查侦探是否认真调查了每条线索。技术路线上,CaRR 分为两个阶段:(1) Rubric 初始化——利用 LLM 将多跳问题分解为一系列单跳事实陈述,每个陈述涉及若干隐藏实体;(2) 三步奖励计算——隐藏实体识别、基于引用的 rubric 判断、证据连通性检查。在此基础上,C-GRPO 将 rubric reward 与 outcome reward 混合,仅对 outcome reward 为 1 的正确轨迹额外施加 rubric reward 的加权奖励,从而在保持「找到正确答案」这一主要目标的同时,激励更全面、更有据可循的推理过程。
CaRR 的核心创新在于将合成多跳问题的内在结构显式地转化为可验证的奖励信号。已有方法的共同假设是:只要答案正确,推理过程就是好的。CaRR 打破了这个假设,它认为即使是正确答案,也需要检查推理是否全面。具体而言,CaRR 利用了合成多跳数据的一个天然特性——每个问题都可以分解为若干单跳事实陈述(rubric),每个陈述涉及若干应被发现的隐藏实体。一条理想轨迹应该:(1) 在最终回答中明确揭示所有隐藏实体的身份;(2) 为每个 rubric 引用正确的网页内容作为支撑;(3) 所有被支撑的 rubric 能通过共享实体形成以最终答案为根的连通图。这三个条件层层递进,既评估了推理的全面性(是否覆盖了所有 rubric),也评估了事实性(是否有正确引用),还评估了逻辑一致性(证据是否与答案相连)。与 E-GRPO 的本质区别在于:E-GRPO 只关注「是否找到了正确实体」,而 CaRR 关注「找到的实体是否被正确引用且与答案逻辑相连」。此外,CaRR 不依赖 gold annotation,而是用 LLM 作为 judge 来评估。
方法步骤详情
CaRR 和 C-GRPO 的完整流程如下。第一步是 Rubric 初始化:对于训练集中的每个问题 $q$,使用 LLM $M_{\text{rubric}}$ 将问题分解为隐藏实体集 $E_q = \{e_0, e_1, \ldots, e_{n_q}\}$ 和 rubric 集 $R_q = \{r_1, \ldots, r_{m_q}\}$,其中 $e_0$ 是最终答案实体,每个 rubric $r_j = (s_j, E_{q,j})$ 是关于一组实体的原子事实陈述。这些 rubric 在训练前生成并在整个 RL 过程中保持不变。第二步是隐藏实体识别:给定智能体轨迹 $H$ 的最终回答 $a_T$,使用 judge LLM $M_{\text{judge}}$ 判断 $a_T$ 中是否明确提及了每个隐藏实体 $e_i$ 的名称。只有所有相关隐藏实体都被识别的 rubric 才被视为「完全识别」。第三步是基于引用的 rubric 判断:从 $a_T$ 中提取引用的 URL(最多 20 个),收集对应的网页内容形成支撑上下文 $C_H$,然后用 judge LLM 判断每个完全识别的 rubric 是否被 $C_H$ 完全支撑。第四步是证据连通性检查:构建一个二部图 $G_H$,节点包括已识别的实体和已支撑的 rubric,边连接实体与其出现在的 rubric。然后从最终答案实体 $e_0^H$ 出发进行 BFS,只有与 $e_0^H$ 连通的 rubric 才被计入最终奖励。Rubric reward 定义为连通 rubric 的比例:$R_H^r = \frac{|R_{\text{connect}}^q|}{|R_q|}$。最后,C-GRPO 的混合奖励为 $R_i = (1-\alpha) \cdot R_H^o + \alpha \cdot R_H^o \cdot \hat{R}_H^r$,其中 $\alpha$ 是平衡超参数(默认 0.3),$\hat{R}_H^r$ 是归一化的 rubric reward。注意 rubric reward 只对 outcome reward 为 1 的轨迹施加,且 $\alpha$ 的引入不会改变 primary objective。
技术新颖性
CaRR 的技术新颖性体现在三个层面。首先,在奖励设计层面,它是第一个将合成多跳问题的可分解结构显式用于 RL 奖励信号设计的框架。虽然 rubric reward 在指令跟随和长文本生成领域已有应用,但将其用于评估搜索智能体的多轮交互轨迹是全新的。其次,在评估维度上,CaRR 不仅检查「是否找到了正确实体」(类似 E-GRPO),还引入了两个此前被忽视的维度:基于引用的事实依据性检查(防止编造实体)和证据连通性检查(防止找到无关实体来 hack rubric)。第三个创新是 C-GRPO 的混合奖励设计——只对正确轨迹施加 rubric reward。论文通过实验证明,如果对所有轨迹(包括错误轨迹)都施加 rubric reward,性能反而会大幅下降,因为在 RL 早期阶段,组内可能存在大量超长或格式错误的轨迹,对它们施加正向的 rubric reward 会产生误导信号。这个设计选择是 C-GRPO 与传统 rubric reward 方法的关键区别。
实验结果
实验在 Qwen3-4B 和 Qwen3-30B(MoE 架构)两个模型规模上进行,使用 DeepDive 数据集(2,234 个 QA 对用于 RL)进行训练,在 BrowseComp、BrowseComp-ZH、xbench-DeepSearch 和 GAIA 四个深度搜索基准上评估。核心发现如下:(1) C-GRPO 在所有基准和两个模型规模上一致超越 GRPO 和 E-GRPO。以 64k/128k 上下文预算计算,4B 模型上 C-GRPO 相比 GRPO 平均提升 5.1/8.0 个百分点,30B 模型上提升 2.6/6.0 个百分点。(2) 最令人惊讶的发现是 GRPO 的测试时扩展性退化:虽然 GRPO 在 RL 训练长度(64k)内显著提升了 SFT 模型的性能,但当上下文预算扩展到 128k 时,性能反而可能下降。例如 4B 模型在 GAIA 上,GRPO 在 64k 时为 40.5,128k 时下降到 41.1(而 SFT 从 39.5 上升到 46.0)。这揭示了纯 outcome reward 训练出的策略的脆弱性。C-GRPO 则在两个长度上都持续提升。(3) 在 Rubric 满足度分析中(表 2),C-GRPO 智能体平均引用 4.3 个网页(SFT 3.8,GRPO 3.5),满足 5.2 个 rubric(SFT 4.5,GRPO 4.0),验证了 C-GRPO 确实促进了更全面的证据收集。GRPO 的引用数和 rubric 满足数甚至低于 SFT 基线,进一步证实了捷径利用问题。(4) 在 DeepResearch Bench 开放式深度研究任务上(表 3),30B C-GRPO 在总体得分 41.99 上超越了 GRPO(39.30)和多个使用专有数据训练的先进智能体,如 Grok-Deeper-Search(38.22)和 Tongyi-DeepResearch(40.46),展现了强大的泛化能力。(5) 消融实验(表 5)显示,去掉隐藏实体识别导致性能从 54.0 降到 50.7(xbench-DS),去掉证据连通性检查导致更大幅度下降到 47.7,去掉「只对正确轨迹施加 rubric reward」的约束导致灾难性下降到 40.3。(6) 人类验证实验表明 judge LLM 在隐藏实体识别上的准确率为 97.7%,在引用评估上的准确率为 95.1%,证明了自动化评估的可靠性。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| BrowseComp(英文深度搜索) | Accuracy(%) | 4B: 13.9/17.5; 30B: 17.9/24.8(64k/128k) | GRPO 4B: 12.9/14.7; 30B: 16.0/18.9 | 4B: +1.0/+2.8; 30B: +1.9/+5.9 |
| BrowseComp-ZH(中文深度搜索) | Accuracy(%) | 4B: 18.2/24.7; 30B: 26.0/33.3(64k/128k) | GRPO 4B: 16.6/17.5; 30B: 24.1/26.1 | 4B: +1.6/+7.2; 30B: +1.9/+7.2 |
| xbench-DeepSearch | Accuracy(%) | 4B: 50.3/54.0; 30B: 55.3/57.7(64k/128k) | GRPO 4B: 41.0/41.3; 30B: 51.3/52.0 | 4B: +9.3/+12.7; 30B: +4.0/+5.7 |
| GAIA | Accuracy(%) | 4B: 48.9/50.2; 30B: 53.7/56.3(64k/128k) | GRPO 4B: 40.5/41.1; 30B: 51.1/51.1 | 4B: +8.4/+9.1; 30B: +2.6/+5.2 |
| DeepResearch Bench(总体) | Overall Score | 30B C-GRPO: 41.99 | GRPO: 39.30; SFT: 37.51 | vs GRPO: +2.69; vs SFT: +4.48 |
局限与改进
作者在论文中承认了一个主要局限:CaRR 的 rubric 生成依赖于合成多跳问题的可分解结构,其中每个问题都包含明确的隐藏实体和推理路径。对于开放式 QA 任务(如开放式深度研究),问题可能不具备这种结构化特征,部分 hop 的需求可能并未在问题中显式提出,因此 CaRR 无法直接适配。不过作者也指出,合成数据训练的智能体在开放式任务上仍展现出良好的泛化性。从我自己的观察来看,还有以下局限:(1) CaRR 的三步评估流程(实体识别、引用判断、连通性检查)每一步都依赖 LLM-as-judge,虽然人类验证显示准确率较高(97.7%/95.1%),但对 judge LLM 的依赖增加了系统的复杂度和成本,且 judge LLM 本身的错误可能会传播到奖励信号中。(2) 论文只在 DeepDive 这一个训练数据集上进行了实验,未验证在其他合成数据集(如 WebSailor、WebExplorer 使用的数据)上的效果,泛化性存疑。(3) 训练数据规模较小(仅 2,234 个 RL 样本),虽然在小数据量下取得了不错的效果,但在更大规模数据上是否还能保持优势有待验证。(4) Rubric reward 的归一化使用了组内最大值 $\hat{R}_H^r = R_H^r / \max_j R_H^r$,当组内所有轨迹的 rubric reward 都很低时,归一化后仍然会产生较大的正向信号,这可能导致优化不稳定。
独立分析的弱点
独立分析本文的弱点,我发现以下几个方面值得改进。首先,CaRR 的证据连通性检查基于二部图上的 BFS,这要求从最终答案实体出发能到达每个支撑的 rubric。但在实际的多跳推理中,某些 rubric 的支撑可能通过多步间接推理与答案相连,而非通过共享实体直接相连。这种过于严格的连通性要求可能会惩罚一些推理合理但实体引用方式不同的轨迹。改进方向是引入更灵活的连通性度量,如基于语义相似度的软连接。其次,CaRR 对每个 rubric 的判断是独立的,没有考虑 rubric 之间的依赖关系。例如,如果 rubric R5 依赖于 R4 提到的实体,那么 R4 未被满足时 R5 也不应该被计入。改进方向是构建 rubric 间的依赖图,在评估时考虑依赖关系。第三,rubric reward 只对正确轨迹施加这一设计虽然避免了错误优化,但也意味着在 RL 训练后期,当大部分轨迹都能答对时,rubric reward 的信号可能变得过于强烈,压过 outcome reward。论文中 $\alpha=0.3$ 的最优值可能在不同训练阶段需要动态调整。改进方向是引入自适应的 $\alpha$ 调度策略。第四,论文未探索 rubric 质量对最终性能的影响——如果 LLM 生成的 rubric 本身有误或遗漏,会直接影响奖励信号的可靠性。改进方向是对 rubric 生成过程进行验证或引入多 judge 投票机制。
未来方向
论文作者提出的未来方向主要集中在将 CaRR 扩展到开放式深度研究任务。虽然合成多跳问题具有天然的可分解结构,但开放式研究任务(如「写一篇关于 X 领域最新进展的研究报告」)不具有这种结构。一个可能的延伸方向是利用 LLM 自动为开放式任务生成评估 rubric(类似 Dr. Tulu 的 evolving rubrics 方法),然后将 CaRR 的引用评估和连通性检查机制应用到这些自动生成的 rubric 上。另一个值得探索的方向是将 CaRR 的思想应用到其他类型的智能体训练中,如代码生成智能体(每个测试用例可视为一个 rubric)、数学推理智能体(每个推理步骤可视为一个 rubric)。此外,论文发现 GRPO 在长上下文下的性能退化是一个重要的现象,值得更深入的研究——是否存在一种通用的 RL 奖励设计,能够在不同上下文长度下都保持稳定的策略质量?最后,C-GRPO 的混合奖励设计(只对正确轨迹施加细粒度奖励)可能有更广泛的应用价值,值得在其他 RL 场景中验证。
复现评估
论文在复现性方面做得较好。代码和数据已在 GitHub 开源(https://github.com/THUDM/CaRR)。训练数据使用的是 DeepDive 公开数据集(1,016 个 SFT 样本和 2,234 个 RL 样本),评估使用的四个基准(BrowseComp、BrowseComp-ZH、xbench-DeepSearch、GAIA)均为公开基准。算力需求方面,论文使用 Qwen3-4B 和 Qwen3-30B 两个模型,30B 模型是 MoE 架构(实际激活参数约 3B),SFT 训练 3 个 epoch,RL 训练 3 个 epoch,rollout 大小为 16,上下文长度 128k/64k。估计复现需要多卡 A100/H100 集群,但 MoE 架构降低了实际的计算开销。Judge LLM 使用 DeepSeek-v3.2,搜索环境使用 Serper API 和 Jina API,都是公开可用的服务。整体复现难度中等——主要挑战在于 RL 训练的工程复杂度(多轮工具调用、异步 rollout)和 API 调用成本。论文提供了详细的训练超参数(学习率、batch size、温度等)和工具配置(返回前 10k 字符、最多提取 20 个引用 URL),有助于复现。
论文图表
该图展示了一个多跳问答的完整示例,说明纯 outcome reward 无法反映智能体推理过程的全面性和事实性。图中展示了智能体在搜索 2015 年泰国火流星事件时的推理轨迹:虽然智能体最终找到了正确答案(66 tonnes),但过程中存在被忽略的 hop(Ignored Hops)和幻觉的 hop(Hallucinated Hops),而 outcome reward 仍然为 1。
这张图直观地展示了本文要解决的核心问题——outcome reward 的局限性,是理解整篇论文动机的关键入口。