鲁棒RL赋能AI编程!破局企业数据噪声难题,同等算力训出更好模型
程序员们又能少掉头发了!新研究通过过滤训练中的噪声和异常值,显著提升了代码大模型在实际编辑任务中的准确性和效率。
在AI辅助编程成为软件开发核心生产力的今天,大语言模型(LLMs)已深度融入代码编辑、调试与优化全流程。然而,当企业用真实复杂用户环境中的数据开展强化学习(RL)训练时,一个棘手问题浮现:复杂上下文导致模型输出频繁出现异常内容,即rollout噪声更普遍,使得reward出现异常值,直接造成优势值估计不准确,拖累强化学习效果。
上海交通大学、腾讯CodeBuddy等团队联合提出的Group Adaptive Policy Optimization(GAPO)方法,精准解决了这一产业落地关键瓶颈,为代码LLM的工业化训练提供了兼具科研创新性与工程实用性的突破方案。
真实场景的核心梗阻
代码编辑的核心难点在于,真实用户场景的输入提示包含复杂上下文信息——既涵盖代码模块调用关系、历史编辑记录,还涉及模糊需求暗示。这种复杂上下文导致模型输出极易出现异常值(outliers),且此类噪声在真实数据中是常态。
传统分组相对RL方法(如GRPO、DAPO)的优势值计算依赖群体均值,但真实数据奖励分布中,14.4%呈现右偏、15.5%呈现左偏特征,这种偏斜正是outliers主导的结果。左偏分布中,低奖励区域拉低均值,导致优势值被高估;右偏分布中,高奖励区域抬高均值,导致多数有效输出的优势值被低估。
对企业而言,这意味着投入大量资源采集的真实数据,不仅难以提升模型效果,反而可能因优势估计失真导致模型“越训越偏”,违背了AI辅助编程“降本增效”的核心诉求。
GAPO的创新突破
针对“复杂上下文→rollout噪声→优势值估计不准”的核心痛点,GAPO在不改变现有分组相对RL框架的前提下,仅通过优化优势计算环节实现高效突破。
-
锁定高信噪比区域,精准过滤outliers
GAPO从含噪奖励分布中筛选出不受outliers干扰的“有效信号区”,通过滑动窗口算法找到最高密度区间(HDI),最大程度排除复杂上下文催生的outliers。 -
用中位数替代均值,稳健估计优势值
在筛选出的HDI区间内,GAPO采用中位数而非均值作为自适应Q值。相较于均值对outliers的敏感性,中位数能更稳定地反映“有效输出”的奖励基准。 -
工程适配:低复杂度+高兼容性
GAPO的计算复杂度仅为O(n log n),滑动窗口扫描仅需O(n)时间,不会给训练带来额外算力负担。它仅修改优势计算函数,无需调整RL框架其他模块,适配企业基于真实复杂数据的训练流程。
实证验证
GAPO让企业采集的真实复杂数据真正发挥效用,其性能优势通过实验充分验证: - 在9个主流LLM(3B-14B参数)上,GAPO均实现稳定提升。例如,Qwen2.5-Coder-14B域内精确匹配准确率达46.25%,较GRPO提升4.35个百分点。 - 训练更稳定,算力利用率优化。GAPO的pg_clipfrac显著低于GRPO/DAPO,说明优势值估计更合理,政策更新更准确。
结语
GAPO精准突破了“复杂上下文→rollout噪声→优势值估计不准”的连锁难题,让企业采集的真实数据从训练“包袱”变成了提升模型效果的“燃料”。论文和代码已开源,期待更多开发者参与探索,推动AI辅助编程更深入地融入软件开发全流程。
论文链接: https://arxiv.org/pdf/2510.21830
开源代码: https://github.com/TsingZ0/verl-GAPO
-
2026-02-16 23:47:17 -
2026-02-16 19:36:44 -
2026-02-16 19:35:37