ChatPaper.aiChatPaper

Magicoder: Quellcode ist alles, was Sie brauchen

Magicoder: Source Code Is All You Need

December 4, 2023
Autoren: Yuxiang Wei, Zhe Wang, Jiawei Liu, Yifeng Ding, Lingming Zhang
cs.AI

Zusammenfassung

Wir stellen Magicoder vor, eine Reihe vollständig quelloffener (Code, Gewichte und Daten) Large Language Models (LLMs) für Code, die die Lücke zu den führenden Code-Modellen erheblich verringern, während sie nicht mehr als 7B Parameter aufweisen. Die Magicoder-Modelle werden mit 75K synthetischen Instruktionsdaten trainiert, die mithilfe von OSS-Instruct generiert wurden, einem neuartigen Ansatz, der LLMs mit Open-Source-Codeausschnitten anreichert, um hochwertige Instruktionsdaten für Code zu erzeugen. Unsere Hauptmotivation besteht darin, die inhärente Verzerrung der von LLMs generierten synthetischen Daten zu verringern, indem wir sie mit einer Fülle von Open-Source-Referenzen ausstatten, um vielfältigere, realistischere und kontrollierbarere Daten zu produzieren. Die Orthogonalität von OSS-Instruct und anderen Datengenerierungsmethoden wie Evol-Instruct ermöglicht es uns zudem, ein verbessertes MagicoderS zu entwickeln. Sowohl Magicoder als auch MagicoderS übertreffen deutlich die state-of-the-art Code-Modelle mit ähnlicher oder sogar größerer Größe in einer Vielzahl von Coding-Benchmarks, einschließlich Python-Text-zu-Code-Generierung, mehrsprachigem Coding und der Vervollständigung von Data-Science-Programmen. Bemerkenswerterweise übertrifft MagicoderS-CL-7B, basierend auf CodeLlama, sogar das renommierte ChatGPT auf HumanEval+ (66,5 vs. 65,9 in pass@1). Insgesamt eröffnet OSS-Instruct eine neue Richtung für die Instruktionsfeinabstimmung mit geringer Verzerrung und hoher Qualität unter Verwendung reichhaltiger Open-Source-Referenzen.
English
We introduce Magicoder, a series of fully open-source (code, weights, and data) Large Language Models (LLMs) for code that significantly closes the gap with top code models while having no more than 7B parameters. Magicoder models are trained on 75K synthetic instruction data using OSS-Instruct, a novel approach to enlightening LLMs with open-source code snippets to generate high-quality instruction data for code. Our main motivation is to mitigate the inherent bias of the synthetic data generated by LLMs by empowering them with a wealth of open-source references for the production of more diverse, realistic, and controllable data. The orthogonality of OSS-Instruct and other data generation methods like Evol-Instruct further enables us to build an enhanced MagicoderS. Both Magicoder and MagicoderS substantially outperform state-of-the-art code models with similar or even larger sizes on a wide range of coding benchmarks, including Python text-to-code generation, multilingual coding, and data-science program completion. Notably, MagicoderS-CL-7B based on CodeLlama even surpasses the prominent ChatGPT on HumanEval+ (66.5 vs. 65.9 in pass@1). Overall, OSS-Instruct opens a new direction for low-bias and high-quality instruction tuning using abundant open-source references.
PDF824December 15, 2024