Co-Evolving LLM Coder and Unit Tester via Reinforcement Learning

2025年06月03日
  • 简介
    我们提出了CURE,这是一种新颖的强化学习框架,配备专门设计的奖励机制,能够基于代码生成与单元测试生成能力的交互结果,共同演化这两方面的能力,且无需任何真实代码作为监督信号。这种方法实现了灵活且可扩展的训练方式,并允许单元测试模块直接从代码生成模块的错误中学习。我们所衍生的ReasonFlux-Coder-7B和14B模型,在对Qwen2.5-Instruct模型进行优化后,代码生成准确率提升了5.3%,最佳N选一(Best-of-N)准确率提升了9.0%,超越了同等规模的Qwen-Coder、DeepSeek-Coder和Seed-Coder模型。这些模型还自然扩展到了下游任务,例如测试时扩展(test-time scaling)和代理编码(agentic coding),相较于基础模型性能提升了8.1%。对于长推理链(long-CoT)模型,我们的ReasonFlux-Coder-4B在单元测试生成任务中持续优于Qwen3-4B,同时达到了64.8%的推理效率。值得注意的是,我们还发现该模型可以用作基础模型强化学习的有效奖励模型。项目地址:https://github.com/Gen-Verse/CURE
  • 图表
  • 解决问题
    该论文试图解决在没有真实代码监督的情况下,如何通过强化学习框架提升代码生成和单元测试生成的能力。这是一个新问题,特别是在无需人工标注数据的场景下,探索编码与单元测试之间的协同进化。
  • 关键思路
    论文提出了一种名为CURE的新型强化学习框架,通过设计专门的奖励机制,使代码生成器和单元测试生成器能够基于彼此的交互结果共同进化。相比现有方法,这种方法不需要任何真实代码作为监督信号,并且允许单元测试生成器直接从代码生成器的错误中学习,从而实现更灵活和可扩展的训练。
  • 其它亮点
    1. 提出了ReasonFlux-Coder-7B和14B模型,在优化后显著提升了代码生成的准确性和最佳N选择的准确性;2. 模型在下游任务(如测试时扩展和代理编程)中表现优异,比基础模型提高了8.1%;3. ReasonFlux-Coder-4B在长推理链任务中优于Qwen3-4B,并在单元测试生成中实现了64.8%的推理效率;4. 论文提供了开源项目(https://github.com/Gen-Verse/CURE),便于后续研究者复现和改进;5. 研究表明,所提出的模型可以用作基础模型强化学习的有效奖励模型。
  • 相关研究
    近年来,关于代码生成的研究包括使用大规模预训练语言模型(如Qwen-Coder、DeepSeek-Coder、Seed-Coder)进行代码生成任务。此外,还有一些相关研究关注代码生成中的强化学习应用,例如:1. 'CodeRL: Reinforcement Learning for Code Generation';2. 'TestGAN: Generating Unit Tests via Generative Adversarial Networks';3. 'Co-Evolution of Code and Tests in Neural Program Synthesis'。这些工作主要集中在利用监督学习或半监督学习生成代码,而CURE则开创性地探索了无监督强化学习路径。
PDF
原文
点赞 收藏 评论 分享到Link

沙发等你来抢

去评论