MapCoder: Multi-Agent-Codegenerierung für wettbewerbsorientiertes Problemlösen

Die Code-Synthese, die ein tiefes Verständnis komplexer natürlicher Sprachproblemstellungen erfordert, die Generierung von Code-Anweisungen für komplexe Algorithmen und Datenstrukturen sowie die erfolgreiche Ausführung umfassender Unit-Tests, stellt eine erhebliche Herausforderung dar. Obwohl große Sprachmodelle (LLMs) beeindruckende Fähigkeiten im Bereich der natürlichen Sprachverarbeitung zeigen, bleiben ihre Leistungen bei Aufgaben der Codegenerierung begrenzt. In diesem Paper stellen wir einen neuen Ansatz zur Codegenerierung vor, der Multi-Agent-Prompting nutzt, um einzigartig den gesamten Zyklus der Programm-Synthese nachzuahmen, wie er bei menschlichen Entwicklern beobachtet wird. Unser Framework, MapCoder, besteht aus vier speziell für die Nachahmung der einzelnen Phasen dieses Zyklus konzipierten LLM-Agenten: Rekall relevanter Beispiele, Planung, Codegenerierung und Debugging. Nach umfassenden Experimenten mit mehreren LLM-Ablationen und Analysen an acht anspruchsvollen, wettbewerbsbasierten Benchmark-Aufgaben zur Problemlösung und Programm-Synthese zeigt MapCoder bemerkenswerte Fähigkeiten in der Codegenerierung und erreicht neue State-of-the-Art-Ergebnisse (pass@1) auf HumanEval (93,9 %), MBPP (83,1 %), APPS (22,0 %), CodeContests (28,5 %) und xCodeEval (45,3 %). Darüber hinaus liefert unsere Methode konsistent überlegene Leistungen über verschiedene Programmiersprachen und unterschiedliche Schwierigkeitsgrade der Aufgaben hinweg. Wir stellen unser Framework öffentlich unter https://github.com/Md-Ashraful-Pramanik/MapCoder zur Verfügung.