BPO
Agent 规划 · arXiv:2508.03018v2 · 2026-05

BPO:把稀疏奖励当数据过滤器,而不是梯度信号

长时程、稀疏奖励的规划任务里,最终的成功/失败信号太晚、太弱,直接做 RL 的信用分配很难。BPO 换了一个用法:只保留成功的轨迹,用它们做监督微调,再让模型生成下一轮数据。三个阶段的飞轮把 8B 模型在 ALFWorld、ScienceWorld、WebShop 上推到平均 88.16%。

Yutong Wang 等 原文 ↗
TL;DR · 30 秒抓住核心

传统 RL 把稀疏的成功信号当成梯度指令,但在长时程任务里,这个信号无法告诉模型“哪一步关键”。BPO 把它降级成一个二分类过滤器:这条轨迹成功吗?成功就留下,失败就丢掉。

三个阶段:先用规划四元组 (o,e,p,a) 和长短链融合做冷启动;再用教师模型合成更难的 task skeleton,按轨迹长度做课程;最后用奖励门控的拒绝采样迭代微调。全程不做 policy gradient。

Llama-3.1-8B 上,BPO 的平均成功率 88.16%,比最强的微调基线 MPO 高 6.33 个百分点;ALFWorld unseen 高 11.20 个百分点,ScienceWorld unseen 高 7.69 个百分点。Qwen2.5-7B 上平均 87.81%,比 MPO 高 9.76 个百分点。

边界:三个基准都是文本/模拟环境;BPO 在这些环境上做了微调,而 Table 1 里的 o3-mini、DeepSeek-R1 是 zero-shot,不能把“8B 超过 671B”读成同条件对比。

88.16%
Llama-3.1-8B 的平均成功率
89.60%
ALFWorld unseen
112
ScienceWorld 推理 token(# Tokens)
01

稀疏奖励的难点不是信号少,而是信号无法落到每一步

这一节建立问题:长时程规划里,为什么“最后成功了”不能直接告诉模型哪一步做对了。

在 ALFWorld、ScienceWorld、WebShop 这类环境里,智能体要执行一长串动作,环境只在最后给一个成功/失败的二元信号。论文把这类任务写成部分可观测马尔可夫决策过程(POMDP),并把难点归为两个:credit assignment(信用分配)和 context length(上下文长度)。前者是“100 步里哪几步关键”,后者是“长轨迹的推理历史会把上下文撑爆”。

如果直接用 RL,成功信号提供的梯度非常稀疏;一条轨迹只有最终一个标量,无法区分中间动作的贡献。论文在 ScienceWorld 上做了对照(Table 4):SFT 的 seen/unseen 成功率是 76.29/77.73;在 SFT 上继续做 DPO 变成 73.71/73.46,做 GRPO 变成 69.93/64.43。两个 RL 方法都比 SFT 更差。作者用这个结果支持自己的判断:在这个设定里,直接把稀疏奖励当梯度信号不稳定。

BPO 的选择是把奖励的用途换掉:不拿它算梯度,拿它做数据准入。成功轨迹留下,失败轨迹丢掉;模型只在成功经验上做监督微调。这样,稀疏奖励仍然是“稀疏”的,但它不再需要承担信用分配的工作。

02

三类基线:zero-shot 推理模型、SFT/ETO/MPO、以及直接 RL

看懂 Table 1 的分组,才知道 BPO 的 88.16% 是和谁比、在什么条件下比。

Zero-shot 推理模型。o3-mini、DeepSeek-R1、Qwen-3-8B-Thinking 都没有在这些环境上微调;它们靠推理能力直接做题。Table 1 里 DeepSeek-R1 的平均是 58.86,o3-mini 是 61.57。这个分组和下面的 fine-tuned 方法不是同一条件。

Fine-tuned 方法。SFT 用成功轨迹做监督学习;ETO 做轨迹级偏好优化;MPO 是论文里最强的微调基线,Llama 上平均 81.83,Qwen 上平均 78.05。BPO 要超过的是这一组,而不是 zero-shot 组。

直接 RL。DPO/GRPO 在稀疏奖励下表现不稳(Table 4)。论文的解释是:二元成功信号对梯度来说信息量太低,但对“这条轨迹是否值得学”这个分类问题来说,噪声很低。BPO 把奖励从优化目标变成过滤器,正是基于这个区分。

Table 1 数值完整转录 · Llama-3.1-8B 及 zero-shot / fine-tuned 基线在 ALFWorld(Seen/Unseen)、ScienceWorld(Seen/Unseen)、WebShop 上的成功率(%)。Average 是原文最后一列。原文自身不一致:DeepSeek-R1 行五列均值 57.98,Average 列写 58.86;页面照录 Average。
方法类型ALFWorld SeenALFWorld UnseenScienceWorld SeenScienceWorld UnseenWebShopAverage
Llama-3.1-8B-InstructSystem-132.9040.3042.2746.9260.0044.88
Qwen-2.5-7B-InstructSystem-172.1076.1028.3533.1891.5060.65
o3-miniSystem-2 · zero-shot58.9062.7056.2855.4576.5061.57
DeepSeek-R1System-2 · zero-shot61.4053.7056.7059.6258.5058.86
Qwen-3-8B-ThinkingSystem-2 · zero-shot49.3067.2057.4550.2771.5059.14
SFTfine-tuned80.0071.6068.0472.0488.0075.94
ETOfine-tuned78.6071.6076.2977.2590.0078.75
MPOfine-tuned82.9078.4080.9177.4687.5081.83
BPO(Ours)fine-tuned87.9089.6083.1685.1597.0088.16
03

规划四元组、长短链融合、课程合成、奖励门控

这一节按三个阶段拆方法:怎么造数据、怎么扩难度、怎么迭代。

阶段 1:规划四元组与长短链融合

BPO 把每一步决策写成四元组 Qt = (ot, et, pt, at):ot 是观察,et 是详尽的长链思考,pt 是简短的规划意图,at 是动作。训练时模型要同时学会生成 et 和 pt。

推理时,模型先生成详细的 et 来辅助决策,但写回历史时只保存简短的 pt。论文把这叫 long-short chain-of-thought fusion。目的有两个:减少上下文长度,避免早期信息被冗长思考挤出注意力窗口;同时让每一步的上下文只保留“计划”,不保留全部“草稿”。

阶段 2:课程合成

Stage 1 的数据来自 seed 分布,模型容易只学会这批任务的套路。Stage 2 用教师模型生成新的 task skeleton,结构、长度、goal complexity(目标复杂度)都和 seed 数据不同;再用规划四元组把 skeleton 填成完整轨迹。随后按轨迹长度给任务分级,先短后长地训练。论文把轨迹长度当作规划复杂度的代理指标(§3.2.2)。

阶段 3:奖励门控的拒绝采样

Stage 2 得到的模型在环境里继续采样,产生大量新轨迹;只保留最终成功的轨迹,加入训练集,再微调下一代模型。这个过程可以迭代:πk → 采样 → 成功轨迹 → 微调 → πk+1。论文把这叫 data curation flywheel。

关键区别是:奖励不参与梯度计算,只参与“要不要这条数据”的判断。作者在 §Stage 3 写得很直接:二元成功奖励对基于梯度的信用分配是不够的,但对分类“这条轨迹成功了吗”是一个有效、无噪声的信号。

04

训练是 SFT 飞轮,不是 policy gradient

这一节说明数据、模型和开销:BPO 的“训练”主要是生成轨迹、筛成功样本、做监督微调。

模型。主实验用 Llama-3.1-8B-Instruct,泛化实验用 Qwen2.5-7B-Instruct(Table 3)。两个模型都走同一套三阶段流程,说明方法不依赖某个特定底座。

数据。Stage 1 先用 off-the-shelf reasoning model(如 DeepSeek-R1)在目标环境收集 seed 成功轨迹,再用教师模型(如 GPT-4o)以 few-shot 方式做 synthetic expansion,生成更多 reasoning trace,最后蒸馏成简短的 planning thought pt。Stage 2 的 task skeleton 由教师模型生成;Stage 3 的数据来自当前模型在环境里的成功轨迹。论文正文与附录 B/C 都没有给出每个阶段的轨迹条数或教师模型的具体版本:附录 B 只有 prompt,附录 C 是 case study,页面未转录。

开销。BPO 不做 policy gradient,也不需要 reward model;主要开销是环境交互(生成轨迹)和 SFT。Table 5 报告推理侧的 # Tokens:BPO 112,DeepSeek-R1 620,Qwen-3-Thinking 763。§4.4.3 称它们为 reasoning tokens;原文没有说明是否按步平均,也没有说明是否包含教师模型调用。

评测口径。ALFWorld 与 ScienceWorld 分 Seen / Unseen;WebShop 用标准 test set。成功率是二元任务完成率(%)。论文没有在正文报告多次运行的方差或置信区间;页面只引用单次报告值。

05

三阶段飞轮:冷启动 → 扩难度 → 筛成功样本

这张图只画数据流,不画模型内部结构;重点是奖励在哪一步被用作过滤器。

Stage 1 · 冷启动 规划四元组 (o, e, p, a) 长短链融合 Stage 2 · 外推 教师模型合成 task skeleton 按长度分课程 Stage 3 · 精炼 当前模型采样轨迹 只留成功轨迹 SFT 下一代模型 更强模型 πk+1 回到 Stage 3 继续采样 奖励在这里只做过滤:成功 / 失败 示意图按 §Method 重绘;虚线是 Stage 3 的迭代回路,不表示梯度反传。
BPO 的三阶段数据流。Stage 3 的奖励只决定“这条轨迹是否进入训练集”,不参与 loss 的梯度。配色上,Stage 1 的冷启动用基线色 --c1,Stage 3 的奖励过滤用强调色 --accent。
06

平均分比 MPO 高 6.33 个点,unseen 增益只在多数 split 更大

这一节把主结果、模型泛化、消融、RL 对照和 token 效率分开看,避免把不同条件的数字混在一起。

主结果:Llama-3.1-8B

BPO 的 Average 是 88.16%,MPO 是 81.83%,绝对高 6.33 个百分点。分基准看:ALFWorld Seen 高 5.00(87.90 对 82.90),ALFWorld Unseen 高 11.20(89.60 对 78.40),ScienceWorld Seen 高 2.25(83.16 对 80.91),ScienceWorld Unseen 高 7.69(85.15 对 77.46),WebShop 高 9.50(97.00 对 87.50)。

泛化到 Qwen2.5-7B

同一套流程换到 Qwen2.5-7B:Average 从 MPO 的 78.05% 到 BPO 的 87.81%,绝对高 9.76 个百分点。ALFWorld Seen 高 8.60(90.00 对 81.40),ALFWorld Unseen 高 2.90(91.00 对 88.10),ScienceWorld Seen 高 12.37(78.35 对 65.98),ScienceWorld Unseen 高 18.01(78.20 对 60.19),WebShop 高 3.00(97.50 对 94.50)。

Table 3 数值转录 · Qwen2.5-7B-Instruct 底座上的 Base / SFT / ETO / MPO / BPO 成功率(%)。只转录 Qwen2.5-7B 部分;Llama-3.1-8B 行与 Table 1 相同,未重复转录。原文自身不一致:MPO 行五列均值 78.03,Average 列写 78.05;页面照录 Average。
方法ALFWorld SeenALFWorld UnseenScienceWorld SeenScienceWorld UnseenWebShopAverage
Base72.1076.1028.3533.1891.5060.65
SFT84.3080.6055.6763.2594.5075.26
ETO82.1076.1059.2865.8894.0075.47
MPO81.4088.1065.9860.1994.5078.05
BPO90.0091.0078.3578.2097.5087.81

消融:三个阶段各贡献多少

Table 2 在 Llama-3.1-8B 上累积加阶段。Base 的 Average 是 44.88%;加 Stage 1 到 80.60%(+35.72 个百分点);加 Stage 2 到 85.24%(+4.64);加 Stage 3 到 88.16%(+2.92)。Stage 1 的冷启动贡献最大,Stage 2/3 是增量改进。

Table 2 完整转录 · 三阶段累积消融(Llama-3.1-8B)。每个单元格是成功率(%)。
方法ALFWorld SeenALFWorld UnseenScienceWorld SeenScienceWorld UnseenWebShopAverage
Base32.9040.3042.2746.9260.0044.88
+ Stage 177.9082.1076.2977.7387.0080.60
+ Stage 287.1083.6079.3879.6295.5085.24
+ Stage 387.9089.6083.1685.1597.0088.16

RL 对照:DPO/GRPO 在稀疏奖励下反而更差

Table 4 在 ScienceWorld 上比较 SFT 与两种 RL。SFT 的 Seen/Unseen 是 76.29/77.73;SFT+DPO 降到 73.71/73.46;SFT+GRPO 降到 69.93/64.43;BPO 是 83.16/85.15。BPO 的 Unseen 比 SFT 高 7.42 个百分点,比 SFT+GRPO 高 20.72 个百分点;Seen 比 GRPO 高 13.23 个百分点。

Table 4 完整转录 · ScienceWorld 上 SFT 与 RL 的对照,含 BPO。Seen/Unseen 两列都是成功率(%)。
方法SeenUnseen
SFT76.2977.73
SFT + DPO73.7173.46
SFT + GRPO69.9364.43
BPO83.1685.15

交互:token 效率与成功率的两种视角

Table 5 把 BPO 和一个更大的推理模型(DeepSeek-R1 671B)、一个同规模推理模型(Qwen-3-Thinking 8B)放在一起。SR 列 BPO 的 83.16% 是 ScienceWorld Seen;R1/Qwen3 为 zero-shot,token/SR 不是同条件比较。切换标签会重画同一组模型的 token 数或成功率;token 视图按 763 归一化(柱高 = 值/763),SR 视图固定按 0–100 归一化(柱高 = 值/100),标签是表格原值。

当前读数
平均推理 token:DeepSeek-R1(671B)620,Qwen-3-Thinking(8B)763,BPO(8B)112;BPO 分别是它们的 1/5.54 和 1/6.81。SR 视图:BPO 的 83.16% 是 ScienceWorld Seen。
DeepSeek-R1 · 671B Qwen-3-Thinking · 8B BPO · 8B(SR 为 ScienceWorld Seen)

Table 5 的 SR 条件:BPO 的 83.16% 对应 ScienceWorld Seen(Table 4),DeepSeek-R1 与 Qwen-3-Thinking 是 zero-shot;BPO 在 ScienceWorld 上做了微调,token 与 SR 不是同条件比较。

手算(2 组):柱高与倍数与 JS 的归一化公式一致

第 1 组,token 视图:最大值取 763。BPO 112/763×100 = 14.68%;DeepSeek-R1 620/763×100 = 81.26%;Qwen-3-Thinking 763/763×100 = 100.00%。倍数:620/112 = 5.5357… ≈ 5.54,763/112 = 6.8125 ≈ 6.81。

第 2 组,SR 视图:固定按 0–100 归一化。BPO 83.16/100×100 = 83.16%;DeepSeek-R1 56.70/100×100 = 56.70%;Qwen-3-Thinking 57.45/100×100 = 57.45%。差值:83.16 − 56.70 = 26.46 个百分点。

口径:柱高取 Math.max(1, 值/max×100),最小值也保留 1% 的可见高度;token 视图的 max 来自 Table 5 的 763,SR 视图固定为 100。这里不涉及标准差。

发现 1:token 更少,ScienceWorld Seen 成功率更高

Table 5 里 BPO 的 # Tokens 是 112(原文未说明是否按步平均),SR 是 83.16%(ScienceWorld Seen,见 Table 4);DeepSeek-R1 是 620 token、56.70%,Qwen-3-Thinking 是 763 token、57.45%。成功率比 R1 高 26.46 个百分点,token 是 R1 的 1/5.54、Qwen-3-Thinking 的 1/6.81。

论文正文写的是“an order of magnitude fewer reasoning tokens”。按 Table 5 的 620/112 与 763/112 复算,倍数是 5.54 与 6.81,不是 10。页面把原文措辞和复算结果并列,不替原文统一。

条件提醒:BPO 的 83.16% 是 ScienceWorld Seen(Table 4),DeepSeek-R1 与 Qwen-3-Thinking 是 zero-shot;BPO 在 ScienceWorld 上做了微调,三者的 token 与 SR 不是同条件比较。

发现 2:unseen 增益在 Llama 上更大,Qwen 上因基准而异

Llama 上 ALFWorld 的 Seen/Unseen 提升分别是 5.00/11.20,ScienceWorld 是 2.25/7.69:两个基准的 unseen 增益都大于 seen。Qwen 上 ScienceWorld 是 12.37/18.01,unseen 增益更大;但 ALFWorld 相反:Seen 提升 8.60(90.00−81.40),Unseen 只有 2.90(91.00−88.10)。所以不能概括成“两个底座的 unseen 都更好”。这与 Stage 2 的课程合成目标方向一致推断(依据:§3.2 称合成任务是 OOD 扩张;论文没有按 split 归因)。WebShop 只有一个 test split,不能做同样的 seen/unseen 拆分。

发现 3:Stage 2 的增益集中在 ALFWorld Seen(+9.20)与 WebShop test set(+8.50)

Table 2 里,Stage 1 的 ALFWorld Seen 是 77.90%,Stage 2 到 87.10%,提升 9.20 个百分点,是 Stage 2 各列中最大的增益;WebShop 从 87.00% 到 95.50%,提升 8.50 个百分点。原文对 WebShop 的口径自身不一致:§4.1.1 写 WebShop 用 standard test set,§4.3 却写“unseen tasks from 87.00% to 95.50%”;页面并列两处,不替原文统一。ALFWorld Unseen 在 Stage 2 只提升 1.50(82.10→83.60),Stage 3 提升 6.00(83.60→89.60);ScienceWorld Unseen 在 Stage 2 提升 1.89(77.73→79.62),Stage 3 提升 5.53(79.62→85.15)。不同基准上,两个阶段的作用大小不同,论文没有做进一步归因。

07

它解决不了:模拟环境、微调条件、教师模型依赖、没有方差报告

这些限制决定了 88.16% 能推广到哪里,以及“8B 超过 671B”该怎么读。

限制 1

三个基准都是模拟环境

ALFWorld 是文本家务模拟器,ScienceWorld 是文本科学实验,WebShop 是模拟电商网站。真实机器人、真实浏览器、真实 API 的长时程任务没有实验。

限制 2

对比不是同条件

Table 1 把 zero-shot 推理模型与 fine-tuned 方法分组。BPO 在三个环境上做了微调,o3-mini/DeepSeek-R1 没有;因此“8B 超过 671B”只在“fine-tuned vs zero-shot”的设定下成立,不能读成同条件的能力对比。

限制 3

依赖教师模型

Stage 2 的 task skeleton 由教师模型生成。教师模型的能力、分布和成本会直接影响合成数据的质量推断(依据:§3.2 用教师模型生成 skeleton;论文未做换型、分布或成本实验)。论文没有给出教师模型换型的消融。

奖励必须是可靠的二元信号。BPO 的过滤器假设环境给出的成功/失败是可信的。如果奖励有噪声、可被 hack,或者成功标准本身有歧义,筛出来的“成功轨迹”会把错误策略固化进下一轮推断(依据:§3.3 只论证二元奖励对分类无噪声,未做奖励噪声实验)。论文在 §3.3 强调二元奖励对分类“无噪声”,但没有做奖励噪声实验。

没有多次运行的方差。主表和消融表都是单次报告值;论文没有给出不同 seed 的均值/方差或置信区间。BPO 与 MPO 的差距在 2.25–18.01 个百分点之间,页面不把这些差值当成统计显著性检验的结果。推断(依据:Table 1/2/3 只列单值,正文未报告 seed 数或方差。)

什么时候别用:如果任务没有可靠的二元成功信号,BPO 的过滤器没有依据;如果环境交互很贵、成功轨迹很少,飞轮第一圈可能转不起来;如果需要在线学习、奖励随时间变化,静态的成功轨迹筛选会滞后。反过来,在长时程、稀疏奖励、可以大量采样、成功轨迹可复用的规划任务里,BPO 的思路最直接:把奖励当过滤器,把成功经验当训练数据。推断(依据:论文只在三个基准的静态设定上做了实验,未覆盖无奖励、交互昂贵或奖励漂移的条件。)