现有 RL 搜索智能体让同一个 LLM 边规划边回答;这篇把两者拆开: 7B 规划器负责搜什么、何时停,冻结的大生成器只负责读完整条轨迹写答案。 训练信号不是单一答案对错,而是「相对不规划基线的增量」+「过程合理性」+「低成本奖励」。
问题不是「检索次数不够」,而是规划与问答被同一个策略绑在一起。论文把 QA 交给一个冻结的大生成器,只让 7B 规划器学「搜什么、何时停」。
规划器的奖励由三块拼成:结果奖励看答案是否比 Direct Inference / Naive RAG 更好;过程奖励由冻结生成器给整条轨迹打分;成本奖励按轮次和子查询数扣分。α 控制成本项相对于效用的权重。
在 7 个 Wiki 数据集上,Qwen2.5-7B 规划器 + 冻结 Qwen3-32B 生成器的平均分是 0.597; 同一 32B 生成器的 Naive RAG 是 0.539;7B 端到端 Search-R1 是 0.519。 把 α 从 0 调到 0.005,平均轮次从 2.260 降到 1.886,平均分反而到 0.606。
代价是:这套训练只验证了一个 7B 规划器和两类搜索环境;成本用轮次/查询数代理,迁移到 Web 后绝对分只有 0.366 / 0.375。
先把问题框定:不是检索次数不够,而是规划与问答被绑在同一个策略里。
Agentic search 的常见做法,是让 LLM 在多轮里交替推理和调用搜索引擎;RL 用最终答案的对错作为奖励,端到端训练这个策略。 Search-R1 是这条线的代表:一个模型既决定搜什么,也负责把检索结果写成答案(§2)。
“However, existing RL-based search agents rely on a single LLM to handle both search planning and question-answering (QA) tasks in an end-to-end manner, which limits their ability to optimize both capabilities simultaneously.”(§1)
论文的展开是:实际 AI 搜索系统常常用大而冻结的 LLM(例如 GPT-4、DeepSeek-R1)保证 QA 质量(§1), 而对这类模型做完整 RL 微调成本高、通常也不可行。可训练的往往是一个小模型。
另一条路 RAG 也不解决问题:检索-生成流水线是固定的,缺少自适应规划,效果对检索精度高度敏感(§2)。 SFT 需要大量高质量的搜索-推理轨迹,而且论文引用已有研究指出,SFT 容易过拟合到记住的推理路径(§2)。
于是问题变成:能不能把 QA 能力留在大模型,把规划能力放到小模型,只训练小模型? 这不是「让小模型替代大模型」,而是「用一个小规划器,把大生成器的输入组织得更好」。
三路对照,看清本文的位置:解耦不是它独有,按效用-成本帕累托训练规划器才是它的差异。
检索与生成是预定义流程;IRCoT 交错检索和 CoT,但仍是 prompt 驱动,没有可训练的策略(§2)。
卡在哪:不做自适应规划,效果高度依赖检索精度。Table 1 里 Qwen3-32B + Naive RAG 平均 0.539,已经是很强的基线。
一个 Qwen2.5-7B 同时学规划和回答,只用结果奖励;Table 1 平均 0.519。
卡在哪:同一个策略要同时优化「怎么搜」和「怎么写」,论文认为这限制了两种能力的同步提升(§1)。
并发工作 s3 同样把 planner 与 generator 拆开,目标是用最少数据训出强 planner(§2)。
差异:s3 的生成器只拿最后一步的关键文档,本文给整条轨迹;s3 用 Gain Beyond RAG 奖励并过滤 Naive RAG 可解的样本,本文用结果+过程双奖励与帕累托成本项(§2)。
论文自己把 s3 列为 concurrent work,并列出三点差异:目标、框架、方法设计(§2)。 所以本文的差异不在「解耦」这个动作本身,而在解耦之后怎么训规划器: 奖励不是单纯的答案对错,而是相对基线的增量;成本不是硬约束,而是奖励里可调的 α 项。
五个公式:结果奖励、过程奖励、效用、成本、帕累托奖励。核心是结果奖励衡量「相对基线的增量」,而不是单纯答对。
Score(·) 是 0/1 的答案一致性判定(§3.2);Appendix B 的答案评分 prompt 要求评审只输出 yes/no。
设 a 是规划后的答案,aI 是 Direct Inference 的答案,aR 是 Naive RAG 的答案。
四组状态对应的奖励排序是 ⟨1,0⟩ > ⟨1,1⟩ > ⟨0,0⟩ > ⟨0,1⟩(Eq. 1)。
字面意思是:规划器答对而基线全错最值钱;规划器答错而基线答对最不值钱。
由 Eq. 2 在二值 Score 下逐项代入(§3.2) · 四种状态的 R_outcome
| 状态 ⟨Score(a), max{Score(aI), Score(aR)}⟩ | 含义 | R_outcome |
|---|---|---|
| ⟨1, 0⟩ | 规划器答对,两个不规划基线都错 | 1.5 |
| ⟨1, 1⟩ | 规划器答对,至少一个基线也对 | 1.0 |
| ⟨0, 0⟩ | 规划器答错,基线也错 | 0.5 |
| ⟨0, 1⟩ | 规划器答错,至少一个基线对 | 0.0 |
这里有一个论文没有展开的实现细节:Appendix B 给出的过程奖励 prompt 要求评审按 1–5 分输出,
而 Eq. 3 写 Rprocess ∈ [0, 0.5]。论文没有说明这 1–5 分如何映射到 [0, 0.5](是否归一化、除以多少)。
页面只并列呈现这两处,不替论文补映射规则。
成本由两部分组成:规划轮次 L(直接影响推理延迟)和子查询总数 Q(决定搜索引擎调用频率),见 §3.3。
代入两组:L=1, Q=1 时成本项是 1.70(0.8 + 0.9);
L=5, Q=10 时成本项是 0.00。
也就是说,两项各自达到预算上限后饱和,不会继续变负;超过上限的额外轮次不会在 Eq. 6 里被额外惩罚。
α 是论文用来扫效用-成本前沿的显式旋钮:α 越大,规划器越愿意用更少的轮次换更低的成本项。 论文的做法是训练多个不同 α 的模型,把它们的(平均分,平均轮次)点画出来,观察帕累托前沿(§4.4.4)。
固定 Eq. 2 的四种结果状态,拖动过程奖励,看 Eq. 4 的效用怎么变。注意过程奖励上限 0.5 与结果奖励相邻两档的差距相同。
第 1 组,⟨1,0⟩:R_outcome = 0.5 + 1 − 0.5 × 0 = 1.5;R_utility = 1.5 + 0.20 = 1.70。
第 2 组,⟨0,1⟩:R_outcome = 0.5 + 0 − 0.5 × 1 = 0.0;R_utility = 0.0 + 0.20 = 0.20。
口径:Score 为 0/1 二值,max{·} 取两个不规划基线中较高者;过程奖励按 Eq. 3 的 [0, 0.5] 取滑块值。这里不涉及标准差。
一个由公式直接得到的现象:R_process 上限 0.5,正好等于结果奖励相邻两档的差距。
所以 ⟨1,1⟩ 加满过程奖励的效用是 1.0 + 0.5 = 1.5,和 ⟨1,0⟩ 加 0 过程奖励的 1.5 相同。
推断(由 Eq. 2 与 Eq. 4 直接代入得到;论文没有讨论这种并列。)
训练细节决定这套框架能不能落地:冻结生成器、屏蔽检索 token、两档预算阈值。
训练数据是 NQ 与 HotpotQA 的训练集合并成一个统一数据集(§4.3)。
规划器是 Qwen2.5-7b-Instruct,生成器是冻结的 Qwen3-32b;
最大推理轮次 Mt=5,最大子查询数 Mq=10(§4.3)。
Wiki 环境用 2018 Wikipedia dump 作为知识源、E5 作为 retriever,每次检索 3 条 passage,最大推理轮次 5。 Web 环境用 Google search API(serper.dev),每次检索 10 条 title/snippet,最大推理轮次 10(§4.3)。
rollout 序列里既有规划器生成的 token,也有检索回来的文档。论文把检索文档视为环境观测, 用 loss masking 把这些 token 排除在梯度计算之外,只对规划器生成的 token 做策略梯度(§3.4)。
优化器用 PPO(Eq. 9):对重要性采样比做 clip,πθ 是当前策略,
πold 是参考策略,At 是优势估计(§3.4)。
格式奖励是一条硬门槛:格式正确、且至少调用一次搜索引擎(nS ≥ 1)、
至少调用一次冻结生成器(nA ≥ 1)时 Rformat=0;
否则 Rformat=−1(Eq. 8)。这条奖励保证轨迹至少完成「搜一次 + 答一次」。
Figure 2 的训练曲线给出三个观察:答案奖励、过程奖励、格式奖励都随训练上升; 格式奖励收敛得最快;规划器先学会更频繁地调用搜索引擎、响应变长, 然后在拿到足够外部知识后学会终止推理、调用冻结生成器(§4.4.3)。
成本项在训练里是奖励的一部分,不是硬约束。Eq. 6 的第一项在 L ≥ Mt 时为 0,
第二项在 Q ≥ Mq 时为 0,不会继续变负;运行时另有一个最大轮次上限(Wiki 5、Web 10)。
按 §3 与 Figure 1 重绘;重点看哪部分可训练、哪部分冻结。
给定问题 q 和标准答案 gt,规划器在每一轮 t 先生成推理上下文,然后二选一:
调用 search 生成子查询 {sq}t 并检索文档,或调用 call_answer_llm 终止推理。
最终轨迹是
T = {q, rS1, S({sq}1), …, rSL, S({sq}L), rA}
(§3)。终止时,整条轨迹被送进冻结生成器,生成答案 a。
覆盖:规划器与搜索引擎的多轮循环;search 与 call_answer_llm 两种动作;冻结生成器读取完整轨迹后生成答案;结果奖励、过程奖励、成本项与格式奖励的组合;PPO 只更新规划器。
未覆盖:Figure 1 的具体图标、布局与配色;PPO 目标函数内部的 clip 结构;训练时过程奖励对冻结生成器的额外调用在图中只以文字标注,没有单独画箭头;Figure 2 的训练曲线。
因此这张图是流程示意,不是原文 Figure 1 的逐像素复刻。
训练路径比推理路径多一次生成器使用:过程奖励要把轨迹 T 和 prompt PT
交给冻结生成器打分(Eq. 3);推理路径里,生成器只在最后生成答案时被调用。
这两次调用都不更新生成器参数,梯度只回到规划器。
先看 Table 1 的主结果,再看 Table 3 的效用-成本前沿、Table 2 的 Web 迁移和 Table 4 的消融。
Table 1(节选) · 转录 Qwen2.5-7b 的 Direct Inference / Naive RAG / IRCoT / Search-R1,Qwen3-32b、Deepseek-V3、Deepseek-R1 三组 frozen 基线,以及 AI-SearchPlanner 及其三行生成器迁移。 CoT、Search-o1、SFT 三行未转录;原表的 +6.74% / +14.02% / +4.52% 三个括号百分比也未转录,因为原表没有标注这三行所比的基线。 括号里的 +10.76% 相对的是同生成器的 Naive RAG(0.539),由 0.597 与 0.539 反推。 底纹行是本文主结果(Qwen3-32b 生成器系列);Deepseek-R1 迁移行的 0.648 属于另一生成器系列,不能与 0.597 直接比。
| 方法(生成器 / 规划器) | NQ | TriviaQA | PopQA | HotpotQA | 2wiki | Musique | Bamboogle | Avg. |
|---|---|---|---|---|---|---|---|---|
| Direct Inference · Qwen2.5-7b | 0.325 | 0.507 | 0.196 | 0.301 | 0.268 | 0.135 | 0.192 | 0.275 |
| Naive RAG · Qwen2.5-7b | 0.585 | 0.753 | 0.489 | 0.478 | 0.325 | 0.162 | 0.408 | 0.457 |
| IRCoT · Qwen2.5-7b | 0.537 | 0.703 | 0.442 | 0.394 | 0.194 | 0.105 | 0.336 | 0.387 |
| Search-R1 · Qwen2.5-7b(端到端 RL) | 0.630 | 0.771 | 0.503 | 0.571 | 0.402 | 0.215 | 0.544 | 0.519 |
| Direct Inference · Qwen3-32b | 0.486 | 0.737 | 0.276 | 0.451 | 0.364 | 0.218 | 0.648 | 0.454 |
| Naive RAG · Qwen3-32b | 0.652 | 0.824 | 0.517 | 0.587 | 0.397 | 0.229 | 0.568 | 0.539 |
| Direct Inference · Deepseek-V3 | 0.604 | 0.870 | 0.447 | 0.519 | 0.425 | 0.254 | 0.432 | 0.507 |
| Naive RAG · Deepseek-V3 | 0.670 | 0.840 | 0.527 | 0.606 | 0.438 | 0.241 | 0.424 | 0.535 |
| Direct Inference · Deepseek-R1 | 0.657 | 0.903 | 0.499 | 0.655 | 0.594 | 0.365 | 0.632 | 0.615 |
| Naive RAG · Deepseek-R1 | 0.668 | 0.903 | 0.495 | 0.661 | 0.599 | 0.369 | 0.648 | 0.620 |
| AI-SearchPlanner · 7B planner + Qwen3-32b · α=0 | 0.674 | 0.800 | 0.540 | 0.678 | 0.565 | 0.355 | 0.568 | 0.597 (+10.76%) |
| AI-SearchPlanner · 生成器换成 Qwen2.5-7b | 0.628 | 0.764 | 0.517 | 0.638 | 0.462 | 0.320 | 0.552 | 0.554 |
| AI-SearchPlanner · 生成器换成 Deepseek-V3 | 0.678 | 0.833 | 0.534 | 0.671 | 0.562 | 0.349 | 0.640 | 0.610 |
| AI-SearchPlanner · 生成器换成 Deepseek-R1 | 0.719 | 0.880 | 0.549 | 0.741 | 0.617 | 0.373 | 0.656 | 0.648 |
主结果:同样的冻结 Qwen3-32b 生成器,Naive RAG 平均 0.539, AI-SearchPlanner 0.597,绝对差 0.058, 相对提升 10.76%(0.058 / 0.539)。换更强的生成器,分数继续涨: Deepseek-V3 0.610、Deepseek-R1 0.648。
多跳数据集上的绝对差更大:HotpotQA 0.678 对 Naive RAG 0.587,差 0.091; 2wiki 0.565 对 0.397,差 0.168;Musique 0.355 对 0.229,差 0.126。 这些差值都是页面做的减法,原始分数在 Table 1。
笔记里写「实现了超过 10% 的性能增益」;对应的是 10.76% 这个相对提升, 分母是 Naive RAG 的 0.539,而不是 0.597 − 0.539 = 0.058 的绝对差。 把 0.058 说成「10% 的绝对提升」会混淆两种口径:0.058 是绝对差,10.76% 是相对提升。
Table 2(全表转录) · 括号百分比为原表值,基准是该组 Qwen3-32b / Qwen2.5-7b 的 Naive RAG。
| 方法(生成器) | WebShaper | WebWalker |
|---|---|---|
| Direct Inference · Qwen2.5-7b | 0.110 | 0.054 |
| Naive RAG · Qwen2.5-7b | 0.188 | 0.297 |
| CoT · Qwen2.5-7b | 0.104 | 0.022 |
| IRCoT · Qwen2.5-7b | 0.140 | 0.228 |
| Search-o1 · Qwen2.5-7b | 0.186 | 0.231 |
| Direct Inference · Qwen3-32b | 0.170 | 0.057 |
| Naive RAG · Qwen3-32b | 0.204 | 0.299 |
| AI-SearchPlanner · 7B planner + Qwen3-32b · α=0 | 0.366 (+79.41%) | 0.375 (+25.42%) |
| AI-SearchPlanner · 生成器换成 Qwen2.5-7b | 0.322 (+71.28%) | 0.306 (+3.03%) |
WebShaper 上 0.366 对 Naive RAG 0.204,相对提升 79.41%;WebWalker 上 0.375 对 0.299, 相对提升 25.42%。但绝对分只有 0.366 / 0.375,远低于 Wiki 数据集上的 0.5 以上。 把生成器换成 Qwen2.5-7b 后,WebShaper 0.322(相对 0.188 提升 71.28%), WebWalker 0.306(相对 0.297 只提升 3.03%),几乎持平。
Table 3(节选) · 只转录 Avg. 一列及括号内平均轮次;7 个数据集的逐项分数未转录。括号百分比为相对 α=0 的论文原表值。
| α | Avg. score | Avg. turns |
|---|---|---|
| 0 | 0.597 | 2.260 |
| 0.005 | 0.606 (+1.51%) | 1.886 (−16.55%) |
| 0.05 | 0.599 (+0.34%) | 1.755 (−22.35%) |
| 0.125 | 0.510 (−14.57%) | 1.000 (−55.75%) |
| 0.25 | 0.510 (−14.57%) | 1.000 (−55.75%) |
论文对 Table 3 的描述是:α 增大,规划轮次持续下降并最终收敛到 1,答案分数先略有上升、再持续下降(§4.4.4)。 下面把五个 α 配置的(轮次,分数)点画出来;点越靠左上,效用-成本 trade-off 越好。
第 1 组,α=0.005:分数 0.606 − 0.597 = +0.009;相对 0.009 / 0.597 × 100 = +1.51%。轮次 1.886 − 2.260 = −0.374;相对 −0.374 / 2.260 × 100 = −16.55%。
第 2 组,α=0.05:分数 0.599 − 0.597 = +0.002;相对 0.002 / 0.597 × 100 = +0.34%。轮次 1.755 − 2.260 = −0.505;相对 −0.505 / 2.260 × 100 = −22.35%。
口径:所有百分比都相对 α=0 这一档,分母分别是 0.597 和 2.260;不是绝对分数差或绝对轮次差。没有计算标准差。
这个交互覆盖了什么:只切换 Table 3 的五个 α 配置并显示论文原表数值;未实现 PPO 训练、奖励模型或真实搜索,是表格读数器,不是训练复现。Figure 3 还画了非规划基线,但 Table 3 没有给基线的轮次,本图未画基线点。
分数从 0.597 升到 0.606(相对 +1.51%),轮次从 2.260 降到 1.886(相对 −16.55%)。论文只写「answer performance initially exhibits a slight improvement」 (§4.4.4),没有报告多 seed、置信区间或显著性检验;不要把它当成稳定的涨点。 推断(依据:Table 3 是单组结果,论文未报告方差。)
Table 4:完整模型平均 0.597;去掉 Outcome Gain 后 0.506,相对 −15.24%; 去掉 Process Reward 后 0.588,相对 −1.51%;完全不训 RL(冻结 planner)后 0.547, 相对 −8.38%。 论文说移除任一项都会带来 decline,但数值上结果项的影响大得多。 推断(依据:Table 4 的 Avg. 列;论文没有给出各项的方差或显著性。)
Table 4(节选) · 只转录 Avg. 一列;7 个数据集的逐项分数未转录。括号百分比为相对完整模型 0.597 的论文原表值。
| 消融 | Avg. |
|---|---|
| AI-SearchPlanner(完整) | 0.597 |
| w/o Outcome Gain | 0.506 (−15.24%) |
| w/o Process Reward | 0.588 (−1.51%) |
| w/o RL Training(冻结 planner) | 0.547 (−8.38%) |
按 Table 1 做减法:Naive RAG 相对 Direct Inference 的平均分差是 0.182(Qwen2.5-7b)、 0.085(Qwen3-32b)、 0.028(Deepseek-V3)、 0.005(Deepseek-R1)。 论文在 §4.4.1 明确观察到这一点,并解释为更强的生成器可能在预训练里记住了更多 Wiki 知识。
在 Deepseek-R1 上,AI-SearchPlanner 相对 Naive RAG 的领先是 0.028(0.648 − 0.620),比 Qwen3-32b 上的 0.058 小。 论文没有把这一点归因于单一原因;可以理解为强生成器压缩了检索带来的增量。 推断(依据:Table 1 的分数差。)
四条边界:规划器规模、训练数据、成本口径、过程奖励的可靠性。
实验固定 Qwen2.5-7b-Instruct 作为 planner(§4.3);论文没有给出不同 planner 规模的 scaling 曲线。 7B 是作者选择的工作点,不是论文结论说「7B 最好」。换更小或更大的 planner 会怎样,未获取。
§4.3 把 NQ 和 HotpotQA 的训练集合并成一个统一数据集;没有报告其他训练混合的结果。 Web 迁移用的是同一个 planner,不是在 Web 数据上再训练,所以 Table 2 衡量的是域迁移,不是域内训练。
Eq. 6 只数规划轮次和子查询数;论文没有报告 FLOPs、wall-clock latency、API 价格,
也没有报告训练时调用冻结生成器做过程奖励的开销。Eq. 6 的两项分别在
L ≥ Mt、Q ≥ Mq 时饱和为 0,超过预算不再额外惩罚。
过程奖励由单个冻结生成器打分(Eq. 3)。论文没有报告评分稳定性、偏差分析,也没有报告与人工判断的一致性。
Appendix B 的 prompt 要求输出 1–5 分,Eq. 3 写 [0, 0.5];1–5 如何映射到 [0, 0.5] 未说明。
另外,Table 1 的答案分数由 LLM judge 判 yes/no(Appendix B 的答案评分 prompt);论文说 EM 不适合不同生成器的风格差异(§4.3), 但没有报告 LLM judge 与人工或 EM 的一致性。α=0.125 / 0.25 时,平均轮次都压到 1.000,平均分都掉到 0.510 (相对 α=0 下降 14.57%),说明成本项一旦压过效用,规划器会退化成「搜一次就答」。
一句话总结:AI-SearchPlanner 的收益来自「冻结生成器 + 可训练小规划器」这套接口,而不是规划器本身拥有了新的知识。 它把大模型的 QA 能力当成固定项,只优化送给它的上下文;所以当生成器已经很强、或者任务需要的不是搜索规划能力时, 这套方法的边际收益会变小。推断(依据:Table 1 中强生成器下 Naive RAG 增益收窄,以及方法只更新 planner 的结构。)