NeFut Logo NeFut
EN 管理员登录

[AI学术] 功能感知的中间填充:提升编码代理基础模型的训练方法

发布于:2026-07-15 22:00 最后更新:2026-07-17 08:46
#AI #Machine Learning #Open Source

摘要

编码代理需要将外部工具的返回结果整合到持续的推理中,而标准的自左至右代码预训练仅在前向方向上揭示了这一能力。我们观察到,编码代理的动作-观察-继续循环在结构上与函数调用位置同构,其中调用者绑定参数,被调用者返回在其他地方计算的值,随后下游代码消费该值。这种条件结构在互联网规模的普通代码中普遍存在。

我们通过功能感知的中间填充(FIM)进行中间训练:这是一种自我监督目标,通过程序依赖图分析和复杂性可推断双重标准来掩盖选定的函数。我们在一个包含2.6B标记的去污染语料库上对 Qwen2.5-Coder-Instruct(7B/14B)和 Qwen3-8B 进行中间训练,该语料库源自968个 GitHub 仓库,随后应用现有的代理后训练管道。

中间训练在 SWE-Bench-Verified 上改善了 +2.8/+3.0(7B/14B)和 +3.2(Qwen3-8B);在 SWE-Bench-Lite 上的增益为 +3.7/+4.0/+5.4。该改进在两个后训练管道(R2E-Gym、SWE-Smith)及非 Qwen2.5 基础模型(Qwen3-8B 与 SWE-Lego)上均有效。

除了领域内的提升,中间训练还减轻了代理后训练对非代理编码(如 LiveCodeBench)和非编码工具使用基准(tau-bench,BFCL)的能力侵蚀:尽管中间训练语料库仅包含 Python 代码,但函数调用的归纳偏差在后训练中依然存在,带来了持续的增益。

博主点评: 此项研究展示了通过功能感知的中间填充方法,如何有效提升编码代理模型的性能。这一创新的方法不仅提高了模型在特定任务上的表现,还在一定程度上避免了后训练对模型能力的负面影响,值得在未来的研究中进一步探索与应用。

原文链接: https://arxiv.org/abs/2607.12463

[h] 返回首页