强化学习从可验证奖励(RLVR)已成为提升大语言模型(LLM)代码生成能力的关键技术。然而,RLVR 在实际编码中的效果受限于测试用例的覆盖度,测试不足会导致误报、奖励被劫持以及策略退化。为缓解当前自动生成方法质量不佳带来的奖励偏差,我们提出 RobustTests 框架。
RobustTests 采用错误代码驱动的测试用例合成策略,利用“接近正确”的错误代码引导模型捕捉潜在的逻辑差异。同时,引入验证器代理并通过行为特征聚类对无效或冗余的测试用例进行细粒度过滤。
为解决合成测试用例中固有的幻觉噪声导致的误报,框架加入基于通过率的逐步密集奖励函数,提供细致的反馈以提升训练鲁棒性。
利用该流水线,我们在 CodeContests 上构建了高质量的测试用例数据集,覆盖更广的错误代码场景,显著提升诊断效用。实验表明,在 CodeContests 的中等难度子集上进行训练后,使用 RobustTests 对 Qwen3-32B 进行 RL 微调,在 LiveCodeBench 基准上相较基线提升了 3% 的绝对性能。
博主点评:RobustTests 通过把“几乎正确”的错误代码转化为合成测试,用行为聚类过滤噪声,并引入密集奖励,成功突破了测试覆盖不足的瓶颈,为 LLM 代码生成提供了更可靠的强化学习路径。