ChatPaper.aiChatPaper

ACECODER: Erfolgreiches Codieren mit Coder-RL durch automatisierte Testfall-Synthese

ACECODER: Acing Coder RL via Automated Test-Case Synthesis

February 3, 2025
Autoren: Huaye Zeng, Dongfu Jiang, Haozhe Wang, Ping Nie, Xiaotong Chen, Wenhu Chen
cs.AI

Zusammenfassung

Der Großteil des Fortschritts bei aktuellen Codierer-Modellen wurde durch überwachtes Feintuning (SFT) vorangetrieben, während das Potenzial des Reinforcement Learning (RL) größtenteils unerforscht bleibt, hauptsächlich aufgrund des Mangels an zuverlässigen Belohnungsdaten/Modellen im Code-Bereich. In diesem Artikel gehen wir dieses Problem an, indem wir automatisierte groß angelegte Testfall-Synthese nutzen, um das Training von Code-Modellen zu verbessern. Konkret entwerfen wir eine Pipeline, die umfangreiche (Frage, Testfall)-Paare aus vorhandenen Code-Daten generiert. Unter Verwendung dieser Testfälle konstruieren wir Präferenzpaare basierend auf Bestehensraten über ausgewählten Programmen, um Belohnungsmodelle mit Bradley-Terry-Verlust zu trainieren. Es zeigt eine durchschnittliche Verbesserung von 10 Punkten für Llama-3.1-8B-Ins und 5 Punkten für Qwen2.5-Coder-7B-Ins durch das beste von 32 Sampling, was das 7B-Modell auf Augenhöhe mit 236B DeepSeek-V2.5 bringt. Darüber hinaus führen wir Reinforcement Learning mit beiden Belohnungsmodellen und Testfall-Bestehensbelohnungen durch, was zu konsistenten Verbesserungen bei HumanEval, MBPP, BigCodeBench und LiveCodeBench (V4) führt. Bemerkenswert ist, dass wir das Training im R1-Stil beginnen, direkt von Qwen2.5-Coder-base ausgehend, und zeigen, dass unser RL-Training das Modell bei HumanEval-plus um über 25\% und bei MBPP-plus um 6\% nach nur 80 Optimierungsschritten verbessern kann. Wir sind der Meinung, dass unsere Ergebnisse das enorme Potenzial des Reinforcement Learning in Codierer-Modellen verdeutlichen.
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

PDF282February 5, 2025