SWE-RL: Verbesserung des logischen Denkens von LLMs durch Reinforcement Learning bei offener Softwareentwicklung
SWE-RL: Advancing LLM Reasoning via Reinforcement Learning on Open Software Evolution
February 25, 2025
Autoren: Yuxiang Wei, Olivier Duchenne, Jade Copet, Quentin Carbonneaux, Lingming Zhang, Daniel Fried, Gabriel Synnaeve, Rishabh Singh, Sida I. Wang
cs.AI
Zusammenfassung
Die kürzliche Veröffentlichung von DeepSeek-R1 hat das immense Potenzial von Reinforcement Learning (RL) zur Verbesserung der allgemeinen Denkfähigkeiten großer Sprachmodelle (LLMs) aufgezeigt. Während DeepSeek-R1 und nachfolgende Arbeiten sich hauptsächlich auf die Anwendung von RL auf wettbewerbsorientiertes Programmieren und mathematische Probleme konzentrieren, führt diese Arbeit SWE-RL ein, den ersten Ansatz, der RL-basiertes Denken von LLMs für die reale Softwareentwicklung skalierbar macht. Durch die Nutzung einer leichtgewichtigen regelbasierten Belohnung (z. B. der Ähnlichkeitswert zwischen der Ground-Truth und den von LLMs generierten Lösungen) ermöglicht SWE-RL LLMs, die Denkprozesse und Lösungen von Entwicklern autonom wiederherzustellen, indem sie aus umfangreichen Open-Source-Software-Evolutionsdaten lernen – der Aufzeichnung des gesamten Lebenszyklus einer Software, einschließlich ihrer Code-Snapshots, Code-Änderungen und Ereignisse wie Issues und Pull Requests. Unser darauf aufbauendes Denkmodell, Llama3-SWE-RL-70B, das auf Llama 3 trainiert wurde, erreicht eine Lösungrate von 41,0 % auf SWE-bench Verified – einer von Menschen verifizierten Sammlung realer GitHub-Issues. Nach unserem Wissen ist dies die bisher beste Leistung, die für mittelgroße LLMs (<100B) berichtet wurde, und sie ist sogar mit führenden proprietären LLMs wie GPT-4o vergleichbar. Überraschenderweise hat Llama3-SWE-RL, obwohl es RL ausschließlich auf Software-Evolutionsdaten durchgeführt hat, sogar verallgemeinerte Denkfähigkeiten entwickelt. Beispielsweise zeigt es verbesserte Ergebnisse bei fünf Aufgaben außerhalb des eigentlichen Anwendungsbereichs, nämlich Funktionscodierung, Bibliotheksnutzung, Code-Denken, Mathematik und allgemeines Sprachverständnis, während ein Baseline-Modell mit überwachtem Feinabstimmen im Durchschnitt sogar zu Leistungseinbußen führt. Insgesamt eröffnet SWE-RL eine neue Richtung, um die Denkfähigkeiten von LLMs durch Reinforcement Learning auf umfangreichen Softwareentwicklungsdaten zu verbessern.
English
The recent DeepSeek-R1 release has demonstrated the immense potential of
reinforcement learning (RL) in enhancing the general reasoning capabilities of
large language models (LLMs). While DeepSeek-R1 and other follow-up work
primarily focus on applying RL to competitive coding and math problems, this
paper introduces SWE-RL, the first approach to scale RL-based LLM reasoning for
real-world software engineering. Leveraging a lightweight rule-based reward
(e.g., the similarity score between ground-truth and LLM-generated solutions),
SWE-RL enables LLMs to autonomously recover a developer's reasoning processes
and solutions by learning from extensive open-source software evolution data --
the record of a software's entire lifecycle, including its code snapshots, code
changes, and events such as issues and pull requests. Trained on top of Llama
3, our resulting reasoning model, Llama3-SWE-RL-70B, achieves a 41.0% solve
rate on SWE-bench Verified -- a human-verified collection of real-world GitHub
issues. To our knowledge, this is the best performance reported for
medium-sized (<100B) LLMs to date, even comparable to leading proprietary LLMs
like GPT-4o. Surprisingly, despite performing RL solely on software evolution
data, Llama3-SWE-RL has even emerged with generalized reasoning skills. For
example, it shows improved results on five out-of-domain tasks, namely,
function coding, library use, code reasoning, mathematics, and general language
understanding, whereas a supervised-finetuning baseline even leads to
performance degradation on average. Overall, SWE-RL opens up a new direction to
improve the reasoning capabilities of LLMs through reinforcement learning on
massive software engineering data.Summary
AI-Generated Summary