Planungsgetriebene Programmierung: Ein Workflow für große Sprachmodelle

Die ausgezeichnete Leistung großer Sprachmodelle (LLMs) löst umfangreiche Diskussionen über ihre Anwendung bei der Codegenerierung aus. Aktuelle Forschung legt nahe, dass kontinuierliche Programmverbesserungen durch sichtbare Tests die Genauigkeit der Codegenerierung in LLMs erhöhen können. Allerdings leiden diese Methoden unter der Uneffizienz und den begrenzten Schlussfolgerungsfähigkeiten von LLMs. In dieser Arbeit schlagen wir einen LLM-Programmierungsworkflow (LPW) vor, der darauf abzielt, sowohl die anfängliche Codegenerierung als auch nachfolgende Verbesserungen innerhalb eines strukturierten Zweiphasenworkflows zu verbessern. Insbesondere formuliert die Lösungsgenerierungsphase einen Lösungsplan, der dann durch sichtbare Tests verifiziert wird, um die beabsichtigte natürlichsprachliche Lösung zu spezifizieren. Anschließend erstellt die Codeimplementierungsphase einen ersten Entwurf des Codes gemäß dem Lösungsplan und dessen Verifizierung. Falls der generierte Code die sichtbaren Tests nicht besteht, dient die Planverifizierung als beabsichtigte Lösung, um den Refinementsprozess zur Behebung von Fehlern konsistent zu informieren. Im Vergleich zu den neuesten Methoden bei verschiedenen existierenden LLMs verbessert LPW die Pass@1-Genauigkeit signifikant um bis zu 16,4 % auf etablierten Benchmarks für Text-zu-Code-Generierung. LPW stellt zudem neue Pass@1-Genauigkeitsrekorde auf: 98,2 % bei HumanEval, 84,8 % bei MBPP, 59,3 % bei LiveCode, 62,6 % bei APPS und 34,7 % bei CodeContest unter Verwendung von GPT-4o als Grundlage. Unser Quellcode ist öffentlich verfügbar unter:https://github.com/you68681/lpw