RLTF: Verstärkungslernen aus Unit-Test-Feedback
RLTF: Reinforcement Learning from Unit Test Feedback
July 10, 2023
Autoren: Jiate Liu, Yiqin Zhu, Kaiwen Xiao, Qiang Fu, Xiao Han, Wei Yang, Deheng Ye
cs.AI
Zusammenfassung
Das Ziel der Programmsynthese, oder Codegenerierung, besteht darin, ausführbaren Code basierend auf gegebenen Beschreibungen zu erzeugen. In letzter Zeit gab es eine zunehmende Anzahl von Studien, die Verstärkungslernen (Reinforcement Learning, RL) einsetzen, um die Leistung großer Sprachmodelle (Large Language Models, LLMs) für Code zu verbessern. Diese RL-Methoden haben jedoch bisher nur Offline-Frameworks verwendet, was die Erkundung neuer Stichprobenräume einschränkt. Darüber hinaus sind aktuelle Ansätze, die Signale von Unit-Tests nutzen, eher einfach und berücksichtigen nicht spezifische Fehlerpositionen innerhalb des Codes. Um diese Probleme zu adressieren, haben wir RLTF, d.h. Reinforcement Learning from Unit Test Feedback, vorgeschlagen, ein neuartiges Online-RL-Framework mit Unit-Test-Feedback auf mehreren Granularitätsebenen zur Verfeinerung von Code-LLMs. Unser Ansatz generiert Daten in Echtzeit während des Trainings und nutzt gleichzeitig feinkörnige Feedback-Signale, um das Modell dazu zu führen, qualitativ hochwertigeren Code zu erzeugen. Umfangreiche Experimente zeigen, dass RLTF auf den Benchmarks APPS und MBPP Spitzenleistungen erzielt. Unser Code ist verfügbar unter: https://github.com/Zyq-scut/RLTF.
English
The goal of program synthesis, or code generation, is to generate executable
code based on given descriptions. Recently, there has been an increasing number
of studies employing reinforcement learning (RL) to improve the performance of
large language models (LLMs) for code. However, these RL methods have only used
offline frameworks, limiting their exploration of new sample spaces.
Additionally, current approaches that utilize unit test signals are rather
simple, not accounting for specific error locations within the code. To address
these issues, we proposed RLTF, i.e., Reinforcement Learning from Unit Test
Feedback, a novel online RL framework with unit test feedback of
multi-granularity for refining code LLMs. Our approach generates data in
real-time during training and simultaneously utilizes fine-grained feedback
signals to guide the model towards producing higher-quality code. Extensive
experiments show that RLTF achieves state-of-the-art performance on the APPS
and the MBPP benchmarks. Our code can be found at:
https://github.com/Zyq-scut/RLTF.