ACECODER : Maîtriser le codage RL grâce à la synthèse automatisée de cas de test
ACECODER: Acing Coder RL via Automated Test-Case Synthesis
February 3, 2025
Auteurs: Huaye Zeng, Dongfu Jiang, Haozhe Wang, Ping Nie, Xiaotong Chen, Wenhu Chen
cs.AI
Résumé
La plupart des progrès récents dans les modèles de codeurs ont été stimulés par le fine-tuning supervisé (SFT), tandis que le potentiel de l'apprentissage par renforcement (RL) reste largement inexploré, principalement en raison du manque de données/modèles de récompense fiables dans le domaine du code. Dans cet article, nous relevons ce défi en exploitant la synthèse automatisée à grande échelle de cas de test pour améliorer la formation des modèles de code. Plus précisément, nous concevons un pipeline qui génère des paires (question, cas de test) étendues à partir de données de code existantes. En utilisant ces cas de test, nous construisons des paires de préférence basées sur les taux de réussite sur des programmes échantillonnés pour former des modèles de récompense avec une perte de Bradley-Terry. Cela montre une amélioration moyenne de 10 points pour Llama-3.1-8B-Ins et de 5 points pour Qwen2.5-Coder-7B-Ins grâce à un échantillonnage de type meilleur parmi 32, plaçant le modèle 7B au niveau du DeepSeek-V2.5 236B. De plus, nous menons un apprentissage par renforcement avec les deux modèles de récompense et les récompenses de réussite des cas de test, entraînant des améliorations constantes à travers HumanEval, MBPP, BigCodeBench et LiveCodeBench (V4). Notamment, nous suivons l'entraînement de style R1 pour partir directement de Qwen2.5-Coder-base et montrons que notre entraînement RL peut améliorer le modèle sur HumanEval-plus de plus de 25\% et MBPP-plus de 6\% en seulement 80 étapes d'optimisation. Nous pensons que nos résultats mettent en lumière le grand potentiel de l'apprentissage par renforcement dans les modèles de codeurs.
English
Most progress in recent coder models has been driven by supervised
fine-tuning (SFT), while the potential of reinforcement learning (RL) remains
largely unexplored, primarily due to the lack of reliable reward data/model in
the code domain. In this paper, we address this challenge by leveraging
automated large-scale test-case synthesis to enhance code model training.
Specifically, we design a pipeline that generates extensive (question,
test-cases) pairs from existing code data. Using these test cases, we construct
preference pairs based on pass rates over sampled programs to train reward
models with Bradley-Terry loss. It shows an average of 10-point improvement for
Llama-3.1-8B-Ins and 5-point improvement for Qwen2.5-Coder-7B-Ins through
best-of-32 sampling, making the 7B model on par with 236B DeepSeek-V2.5.
Furthermore, we conduct reinforcement learning with both reward models and
test-case pass rewards, leading to consistent improvements across HumanEval,
MBPP, BigCodeBench, and LiveCodeBench (V4). Notably, we follow the R1-style
training to start from Qwen2.5-Coder-base directly and show that our RL
training can improve model on HumanEval-plus by over 25\% and MBPP-plus by 6\%
for merely 80 optimization steps. We believe our results highlight the huge
potential of reinforcement learning in coder models.Summary
AI-Generated Summary