Token导航 LogoToken导航

AI 资讯 · 科技行者

Qwen3模型任务失败研究:一次错误为何难以恢复

更新 2026-10-26科技行者正文 7371字阅读约 24分钟

厨房里,一个机器人正在执行一个简单任务:把蛋放进微波炉加热。它打开冰箱,没找到蛋,转身从冰箱里拿起一个番茄,径直走向微波炉,把番茄放了进去。

接下来的二十多个回合里,它在冰箱、柜子、台面之间来回穿梭,两次打开微波炉又关上,始终没有再去找那个蛋。任务失败。

这不是一个孤立的笑话。研究者发现,在三个不同规模的Qwen3模型(从80亿参数到2350亿参数)身上,超过一半的失败任务,都能追溯到这样一个"拐点时刻":智能体在某一步做错了选择,从那之后整个任务就再也救不回来了。更让人意外的是,这些错误发生得特别早,通常在整个任务进程的三分之一之前就已经埋下了祸根。

这篇来自NVIDIA、普林斯顿大学和马里兰大学的研究,给这个现象起了个名字,叫"关键失误"(pivotal mistake),并由此提出了一套叫PivotOPD的训练方法。它不是简单地告诉模型"这样做不对",而是教会模型两件事:怎么躲开这种会把任务拖向失败的选择,以及万一已经走错了,怎么把局面扳回来。

**问题到底卡在哪**

先说说大语言模型智能体是怎么训练的。

目前比较流行的一种方式叫在线策略蒸馏(On-Policy Distillation,简称OPD)。

它的意思是:让一个较强的"教师模型"去给学生模型自己生成的回答打分、挑错,然后用这个密集的、逐字逐句的反馈去调整学生模型的参数。这比传统的强化学习要精细得多,因为传统强化学习往往只能在任务彻底成功或失败之后给一个笼统的奖励分数,而OPD可以告诉模型"你这句话里第三个词选错了"。

听起来很美好,但多轮交互场景把这件事搞复杂了。

智能体每做一个动作,环境就会给出新的反馈,下一步能做什么、看到什么,都取决于上一步做了什么。如果某一步走错了,那么接下来所有的观察、所有的选择空间,都是建立在这个错误之上的。学生模型后续的轨迹,和教师模型理想中的轨迹,会越走越远,这就是研究者所说的"误差累积"。

研究团队用ALFWorld这个环境做了系统分析。ALFWorld是一个文字版的家居任务模拟器,智能体要完成"把冷蛋放进微波炉"之类的指令,靠的是读懂文字描述然后下达文字动作指令。这个环境的好处是它配了一个符号化的"神谕"(oracle),可以在任意时刻精确计算出从当前状态到完成任务,理论上最少还需要多少步,这个最少步数记为L(s)。如果某个动作执行后,L值变大了,甚至变成了无穷大(意味着任务已经不可能完成了),那这个动作就被定义为一次"关键失误",它发生的那一步就是"关键轮次"(pivotal turn)。

数据很扎实。三个模型的失败轨迹里,59%都包含这样一次关键失误。而且这个失误通常出现在第8到12轮,整个任务一共允许30轮。换句话说,错误早早地埋下了,但模型却在接下来的十八到二十轮里浑然不觉,白白耗掉了本可以用来纠正方向的时间。

这里有个关键的反事实实验。研究者把那些失败的轨迹重新拿出来,在关键轮次用神谕给出的正确动作强行替换掉模型原本的错误选择,然后让模型继续走下去。结果,原本只有8%的重放成功率,一下子跳到了59%。

更有意思的是,他们还做了另一个实验:不去纠正那个关键错误本身,而是保留这个错误,只是在错误发生后的两轮里,强行给出正确动作引导模型。结果成功率依然达到了58%,几乎和直接纠正错误一样好。

这说明一件事:错误发生后留下的那个"烂摊子",往往还是能收拾的。智能体不是必死无疑,它只是没学会怎么收拾。

**为什么现有的训练方法学不会"收拾烂摊子"**

既然犯错之后还能补救,那为什么标准的OPD训练没能让模型学会这一点?

研究者把Qwen3-8B用标准OPD训练了120步,再去看它的错误分布。结果是,整体失败率从79%降到了56%,看起来进步不小。但如果把这些失败细分成"轨迹里有关键失误导致的失败"和"没有关键失误、单纯没走完任务的失败"两类,会发现前一类几乎没有改善,只从51%降到49%,几乎所有进步都来自第二类。

这背后的原因,藏在概率数字里。

训练之后,模型在那个关键轮次犯同样错误的概率,从接近百分之百(0.999)降到了十万分之一以下。听起来进步很大,但正确动作(也就是神谕认定的那个最优选择)的概率,即便提升了十个数量级,依然停留在百分之一以下。

这意味着什么?如果你让模型针对同一个任务生成8条独立的轨迹(这是群体强化学习里常见的做法,通常叫做一组rollout),那么按照百分之一以下的概率,这8次尝试里几乎不可能有一次真正采样到那个正确动作。模型学会了避免完全重复自己原来的错误,但它从来没有真正体验过"做对了之后会发生什么",所以也就没有任何直接的学习信号去强化那个正确路径。

这就好比一个学生做错了一道数学题,老师只是告诉他"这个答案不对",却从没给他看过正确的解题过程。学生确实不会再写那个具体的错误答案了,但他依然不知道该往哪个方向思考,下次遇到类似的题,很可能换一种方式继续错下去。

群体相对强化学习(Group-based RL):一种训练方式,让模型针对同一个任务生成多条轨迹,然后比较这些轨迹的最终结果好坏,把相对更好的轨迹里的动作当作正例去强化,相对更差的当作负例去抑制。

这种方法的致命伤在于,如果一组轨迹里每一条都失败了,所有轨迹的得分一样低,那么"相对优势"就是零,模型完全学不到任何东西。这在论文里被严格证明过:当每条轨迹的回报相同时,群体相对优势在数学上恒等于零。换句话说,越是棱角分明的困难任务(也就是模型压根走不通的那类任务),这种训练方式就越容易陷入沉默。

**PivotOPD:既要防摔,也要教你怎么爬起来**

搞清楚了问题所在,研究者的解决方案思路其实很直观:既然标准方法只能在学生自己踩过的坑里打转,那就主动造一些"学生踩坑之后该怎么走"的数据,塞给它学。

PivotOPD的整个流程分成三步。

第一步叫关键轮次检测(pivot detection)。因为大多数真实环境里没有ALFWorld那种"神谕"可以直接算出最优路径,所以研究者用一个教师模型来扮演这个角色。训练过程中,学生模型跑完若干条轨迹之后,教师模型会读一遍整条轨迹和最终结果,从中挑出几个它觉得学生可能走错了的候选轮次,并给出一个它认为正确的动作,叫做"黄金动作"(gold action)。如果学生实际采取的动作和这个黄金动作不一样,这一轮就被标记为关键轮次。

有意思的是,这种基于教师判断的检测方式,虽然不如ALFWorld的神谕那么精确,但在和神谕标注结果对比后发现,它找到的关键轮次有77.8%的概率落在神谕标注的真实关键轮次附近一轮以内,这个命中率是随机猜测的两倍以上。

教师判断出关键轮次之后,流程还没完。它还要在这个关键轮次之后的几轮里,持续给出"恢复动作"(recovery action),也就是告诉模型:就算你已经走错了这一步,接下来几步该怎么走才能把局面挽回来。

第二步是预防性蒸馏(Preventive Distillation)。这一步用的是反向KL散度(Reverse KL)这样一种数学工具,它的作用是把学生模型自己已经生成的那个错误回答,往教师建议的黄金动作方向推。

这里有个巧妙的设计叫"受特权的自我教师"(privileged self-teacher)。它不是真的另找一个独立的教师模型来打分,而是把学生模型自己冻结住,给它一个只有它自己能看到的"提示"(hint),这个提示里藏着教师给出的黄金动作信息。学生模型在这个提示的加持下,会生成一套更靠近正确方向的概率分布,这套分布就成了训练目标,去矫正学生模型在没有提示时的真实输出。

这个设计有个好处,它能保证纠正的语气和风格,依然是学生模型自己说话的习惯,不会因为引入了外部教师而让语言风格变得生硬、不像自己。

KL散度:一种衡量两个概率分布之间差异程度的数学指标,常被用来衡量"模型A的输出分布"和"模型B的输出分布"之间差了多远。反向KL散度和正向KL散度,是同一个数学工具的两种使用方式,计算时谁作为基准分布不同,导致优化时的侧重点完全不同。

第三步,也是整个方法里最核心的创新,叫恢复性蒸馏(Recovery Distillation)。它用的是正向KL散度,专门针对那些学生几乎从不会主动采样到的"恢复动作"。

这里的区别很关键。预防性蒸馏是在学生自己已经生成的回答上做调整,相当于在学生已经写出来的答案上打分修改。而恢复性蒸馏不一样,它是让那个受特权的自我教师,在拿到恢复动作的提示之后,重新生成一段全新的回答,然后把这段回答教给学生,而这次教的时候,不给学生看任何提示。

打个比方,这就像一个新手司机不小心开上了逆行车道。预防性蒸馏相当于教练在他打算逆行转弯的那一刻喊"停,别这么打方向",这能让他避免再犯这个具体的错误。但光靠喊停解决不了下一个问题:车已经在逆行车道上了,该怎么安全地开回正常车道?这时候教练需要的不是喊停,而是示范一遍完整的脱困动作,从打方向盘的角度到换挡时机,一步步做给他看,他才能在类似情况再次出现时知道该怎么做。如果没有这个示范环节,新手司机即便记住了"不能逆行"这条规则,真的误入逆行车道时,依然会手足无措,因为他从没见过正确的脱困动作长什么样。

这个比方背后有严格的数学支撑。论文里证明了一个命题:当学生模型给某个恢复动作分配的概率极低时,如果继续用"从学生自己的采样分布里挑选,再按权重调整"这种方式去训练(这正是群体强化学习和预防性蒸馏的做法),那么产生的梯度更新量会随着这个概率趋近于零而同步趋近于零,也就是说几乎学不到任何东西。但如果改成从教师模型的分布里采样,再用一个被截断范围的"蒸馏优势"去加权,这个更新量的下限就只取决于教师模型给这个动作分配的概率,而和学生原本的概率无关,并且这个下限严格大于零。

简单说就是,当学生自己几乎不可能碰到正确答案时,只盯着学生自己生成的内容去打分,是在等一件几乎不会发生的事情发生。而主动让教师示范出这个正确答案,相当于把本来几乎不存在的学习信号,硬生生制造出来了。

整个过程最后被统一打包进一次PPO更新(Proximal Policy Optimization,一种常用的策略优化算法)里,三部分损失函数(群体强化学习、预防性蒸馏、恢复性蒸馏)一起作用,让模型同时学会了躲开陷阱和爬出陷阱这两件事。

**案例现场:同一个错误,两种命运**

论文里给了一个很直观的对照实验。

同样是"把冷蛋放进微波炉"这个任务,同样在第三轮犯下从冰箱里拿错了番茄这个关键失误。基础模型(没有经过任何特殊训练的原始模型)接下来的表现是:把番茄送进了微波炉,然后开始在冰箱、柜子、台面、微波炉之间来回瞎转,前前后后二十多轮,反复把苹果从微波炉里拿出来又放回去,始终没再去找那个真正需要的蛋。任务彻底失败。

而经过PivotOPD训练的模型,在第四轮立刻意识到情况不对,先走到桌子旁边把那个拿错的番茄放下,接着在桌子上发现了蛋,拿起来,给它降温,最后放进微波炉,一共只用了十一轮就完成了任务。

研究者把这个实验扩大到全部72个之前识别出的关键失误案例上,系统性地测试四种不同训练方式的恢复能力。基础模型的恢复率是8.3%,标准OPD训练后提升到20.3%,只用预防性蒸馏的版本能到45.8%,而完整版的PivotOPD达到了72.7%。

这个数字背后还有一个更细致的逐案例对比。标准OPD在72个关键失误里只改善了20个,反而让4个变得更糟。只用预防性蒸馏的版本改善了47个,但也让6个变差。而完整版的PivotOPD改善了60个,一个都没有变差。

这说明PivotOPD带来的提升,不是靠少数几个案例硬撑出来的平均数,而是在绝大多数情境下都确确实实学会了怎么收拾局面。

**数据说话:在三个战场上都拿了第一**

研究团队在ALFWorld(家居任务)、WebShop(模拟购物网站)、基于搜索的问答任务这三个基准测试上,和13种基线方法进行了全面对比,用的是Qwen3-1.7B和Qwen3-8B两种规模的学生模型。

| 基准 | 1.7B学生最强基线 | 1.7B学生PivotOPD | 提升幅度 |

|---|---|---|---|

| ALFWorld平均成功率 | 68.2% | **73.7%** | +5.5% |

| 搜索问答平均准确率 | 38.6% | **44.5%** | +5.9% |

| 基准 | 8B学生最强基线 | 8B学生PivotOPD | 提升幅度 |

|---|---|---|---|

| ALFWorld平均成功率 | 90.8% | **93.0%** | +2.2% |

| WebShop成功率 | 79.7% | **81.9%** | +2.2% |

在WebShop这个环境里,有一个细节特别值得说。WebShop不仅看"任务是否完全成功",还有一个"部分完成度得分"(哪怕没买对商品,只要搜索方向对、点开了相关商品,也能拿到一部分分数)。研究者发现,基线方法RLSD在这个部分完成度得分上和PivotOPD很接近,只差1.2个百分点,但在真正的完全成功率上,PivotOPD比RLSD高出整整14.1个百分点。

这个差距特别说明问题。它意味着RLSD让模型学会了"做得还不错,摸到边了",但PivotOPD教会的是"把这件事彻底做完"。而彻底做完,往往恰恰需要在半途遇到岔路、犯了小错之后,还能把车开回正道,这正是恢复性蒸馏在发挥作用。

研究团队还测试了一种更苛刻的场景:不借助比学生更强的外部教师,让学生模型自己当自己的教师。在这种"自我蒸馏"的设定下,PivotOPD依然在三个基准上都排名第一,领先第二名至少1.5个百分点。这说明这套方法本身的设计逻辑是有效的,而不是单纯依赖一个更聪明的外部老师在"开后门"。

最后,研究者还把这个方法搬到了完全不同的领域,软件工程任务SWE-Bench Verified(修复真实GitHub代码库里的bug),换了另一个模型家族Nemotron。标准OPD只把解决率从62.8%提升到63.0%,几乎没有变化,而PivotOPD把这个数字拉到了66.0%,提升了3.2个百分点,相当于补上了学生模型和教师模型之间差距的三分之一。

这说明关键失误和恢复这套逻辑,不是ALFWorld这个玩具环境的特例,而是多轮交互任务里一个相当普遍的结构性问题。

**恢复到底需要几步?答案因任务而异**

研究者还做了一个细致的消融实验,专门研究"该教模型恢复多少步"这个问题,用参数K表示恢复轮次的预算。

结果发现,WebShop和搜索问答任务上,K=1(也就是只在犯错后教一步恢复动作)就是最优的,再多教反而会拖累效果,从K=1增加到K=3,WebShop的得分反而下降了7.8个百分点。但在ALFWorld上,最优的K是2。

论文给出的一个合理解释是,ALFWorld里的任务往往需要连续好几步精细动作才能真正完成(比如先找到正确物体,再移动,再处理,再放置),如果错误发生得比较深,只教一步恢复动作可能根本不够。论文里有一个数学命题专门论证了这一点:如果完成任务需要连续d步都做对特定动作,而模型本身在没有干预时,每一步做对的概率上限是某个小于1的数值ε,那么在只强制干预K步之后,模型要靠自己完成剩下d-K步的概率上限是ε的(d-K)次方。这个数字随着d-K变大会急速缩小,说明错误越深,需要的"搭把手"的步数就越多。

**写在后面**

读这篇论文时,最让我意外的一个细节,是那个概率数字。标准OPD训练之后,正确动作的概率已经比训练前提升了十个数量级,听起来像是巨大的进步,但它依然停留在百分之一以下。这个细节把一个很容易被忽略的事实摆在了眼前:概率提升的绝对倍数,和这个概率是否真正"够用",是两件完全不同的事。十万倍的提升听起来惊人,但如果起点是十亿分之一,终点也只是十万分之一,对于一个需要在8次尝试里至少命中一次的任务来说,依然等于零。这提醒我在看任何"提升了多少倍"的说法时,都该先问一句:提升前后的绝对数值分别是多少。

另一个让我反复琢磨的地方,是预防和恢复这两件事被刻意拆开训练的设计。直觉上你可能觉得,只要让模型足够擅长"不犯错",犯错之后的问题自然会减少。但论文里的消融实验显示,只做预防训练,恢复率只能到45.8%,而加上专门的恢复训练,能冲到72.7%。这意味着"如何避免走错路"和"走错路之后如何走回来",在语言模型的参数空间里,可能根本不是同一种能力,甚至需要完全不同的训练信号去激活。这让我想到人类学习驾驶的过程其实也类似,老司机往往不是因为从不犹豫打错方向,而是因为打错方向之后能第一时间冷静地纠正回来,这两种能力在驾校的教学里,恰好也是分开练的。

论文里还留了一个没解决的问题,也挺值得想一想:整套方法依赖教师模型准确地指出哪一步是关键轮次,一旦教师自己判断错了,比如把一个本来合理的替代方案误判成失误,学生学到的就是一个错误的纠正方向。在ALFWorld上这个判断的命中率是77.8%,剩下的近四分之一案例,教师到底在教些什么,论文没有细说。这个不确定性,放在更复杂、更真实的任务场景里,会被放大到什么程度,是个开放的问题。

一个智能体犯错后,到底是该让它永远记住"别这样做",还是该教它"做错之后下一步该往哪走"?或者,这两件事本来就不该是互相替代的选择,而是两种需要同时存在的本能?

Q&A

Q1:PivotOPD是什么?

A:PivotOPD是NVIDIA、普林斯顿大学等机构提出的一种多轮智能体训练方法,它在标准的在线策略蒸馏基础上,增加了针对"关键失误"的预防性蒸馏和恢复性蒸馏,让模型既能学会避免致命错误,也能学会犯错后如何挽回局面。

Q2:什么是关键失误(pivotal mistake)?

A:关键失误是指智能体在多轮任务中执行的某个动作,使得完成任务所需的最少剩余步数变长,甚至让任务彻底无法完成。研究发现超过一半的失败任务都能追溯到这样一次早期的关键失误。

Q3:PivotOPD和标准的在线策略蒸馏有什么区别?

A:标准方法只能从模型自己生成的轨迹里学习,而这些轨迹里几乎不会出现"犯错后成功恢复"的情况。PivotOPD额外引入教师模型示范的恢复动作,用正向KL散度专门训练模型学习这些它自己很少采样到的恢复行为。

资讯来源:由AI资讯编辑整理自互联网公开内容,版权归原作者所有,未经许可,不得转载。