AI推理新框架Pyligent:从失败中学习恢复
速览
Pyligent是一个训练和推理框架,将推理表示为经过验证的搜索过程。它利用任务验证器标记生成和失败,监督三种动作:继续、完成和回溯,并可选地总结废弃分支。在隐式图、4×4数独、数独推理和Blocksworld等任务上,相比仅使用正确示例的微调,Pyligent使解决率提升最高72.7个百分点。结果表明,显式失败分支监督能教会模型有用的恢复行为,超越对完美推理链的简单模仿。
AI 深度解读
背景
传统的大语言模型推理通常被建模为从左到右的单向链式生成:模型每步输出一个 token 或一个推理步骤,最终得到完整的解。然而,许多现实推理任务并不符合这种单向结构。求解器可能需要先尝试一条看似合理的分支,观察中间结果,然后发现延迟的失败(delayed failure),此时必须回溯到仍可继续的最近前缀,重新选择另一条路径。例如在规划、约束满足、定理证明等场景中,部分搜索路径会走到死胡同,良好的推理需要具备“纠错意识”(correction-aware)——即能在失败发生时主动恢复,而不是仅仅模仿一条完美的解链。
现有的监督微调(supervised fine-tuning, SFT)通常使用完整的“黄金标准”解作为训练目标,让模型学习从输入直接到输出的映射。但这种方式隐含地假设每一步都是正确的,没有教会模型如何处理中间失败。要赋予模型失败恢复能力,就需要一种能显式暴露失败分支并训练回溯行为的框架。
核心内容
本文提出 Pyligent,一个受 Diligent Learner 公式启发的训练与推理框架。其核心思想是将推理视为对部分解链(partial solution chains)的验证搜索——模型生成一个候选步骤后,由任务验证器(task validator)即时判断该步骤是否正确、是否导致失败;失败信息被用于构建搜索树,并转换为三种基础动作的监督训练信号。
方法细节
- Pyligent 在训练阶段使用一个任务验证器,负责对模型生成的每个延续(continuation)进行标记,区分“正确延续”、“失败”或“任务完成”。
- 所有探索路径(包括成功路径和失败分支)构成搜索树,树中的每个节点代表一个部分解前缀,边代表模型生成的步骤。
- 这些搜索树被转换为三个离散动作的监督目标:
- continue:从当前前缀继续生成下一个合理步骤;
- finish:当前前缀已构成完整解,终止推理;
- backtrack:当前分支导致失败,回退到一个父节点(即仍可完成的最新前缀),并可选地生成一条总结废弃分支的“轨迹”(trace),记录为什么该分支失败。
- 可选轨迹(optional traces)的作用是让模型不仅知道要回退,还能理解失败原因,从而在后续推理中更明智地选择替代路径。
实验设置
为隔离测试模型的延迟失败恢复能力,论文首先设计了一个隐藏有向图任务:图结构对模型隐藏,模型通过遍历节点逐步发现连接关系,部分边会导致死路,必须在探索到死路后回溯。这是专门考验“失败-恢复”能力的对照组。
此外还在三个具有精确验证器的结构化推理领域上进行了评估:
- 4×4 数独(Sudoku)
- 带推理轨迹的 4×4 数独(Sudoku with reasoning traces)——要求模型输出中间推理步骤
- Blocksworld——经典规划领域,需按顺序移动积木达成目标状态。
每个领域又分为“混合”(mixed,包含简单与困难实例)和“专家”(expert,更困难或更需规划)两种难度设置。
主要结果
与仅使用黄金标准解进行监督微调(gold-only SFT)的基线相比,Pyligent 在各项任务上显著提升解决率(solve rate),具体提升百分点如下:
| 任务 | 解决率提升(百分点) | |------|------------------| | 隐藏有向图 | +72.7 | | 混合数独 | +17 | | 专家数独 | +18 | | 带推理轨迹的混合数独 | +27 | | 带推理轨迹的专家数独 | +14 | | Blocksworld | +13 |
这些结果说明,显式地将失败分支的监督信号纳入训练,能够教会模型有用的恢复行为,其效果远超单纯模仿精炼解链的 SFT。
关键要点
- 核心问题:许多推理任务需要回溯和恢复,传统从左到右的监督微调无法教会模型处理中间失败。
- 新框架 Pyligent:将推理建模为验证搜索,利用任务验证器实时标注生成的步骤(正确/失败/完成),构造搜索树。
- 三个基础训练动作:continue、finish、backtrack,其中 backtrack 可附带总结废弃分支的轨迹,增强失败原因的理解。
- 实验设计:包含专门用于测量延迟恢复能力的隐藏有向图任务,以及四个结构化推理子任务(两种数独设置、带推理轨迹的数独、Blocksworld)。
- 显著提升:在隐藏图任务上解决率提升 72.7 个百分点,其他任务提升 13–27 个百分点,证明显式失败监督的有效性。
- 关键洞察:仅仅模仿“正确轨迹”不足以让模型学会纠错,必须暴露并训练失败路径上的回溯行为。
意义与影响
Pyligent 的工作在推理能力训练方面迈出了重要一步。它打破了过去仅依赖“从开始到结束”完美解的范式,明确提出失败也是训练数据的一部分。这种思路对于以下方向具有深远影响:
- 可解释推理:模型回退时生成的可选轨迹提供了失败原因的显式记录,有助于理解模型为什么走错,以及如何改进。
- 自我修正能力:该框架自然地与测试时搜索(test-time search)结合——训练时学会回溯后,推理时也能自主执行类似的失败-恢复循环,提升鲁棒性。
- 任务通用性:Pyligent 不依赖于特定领域的搜索算法,只要提供一个验证器(validator)即可应用,可拓展到数学证明、代码生成、机器人规划等需要回溯的领域。
- 对比现有方法:与强化学习(RL)相比,Pyligent 的训练信号是离散的、由验证器直接提供的,避免了奖励稀疏和探索困难的问题;与
