ChatPaper.aiChatPaper

Magicoder: Código Fonte É Tudo Que Você Precisa

Magicoder: Source Code Is All You Need

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

Resumo

Apresentamos o Magicoder, uma série de Modelos de Linguagem de Grande Escala (LLMs) totalmente open-source (código, pesos e dados) para código que reduz significativamente a lacuna em relação aos principais modelos de código, mesmo possuindo não mais que 7 bilhões de parâmetros. Os modelos Magicoder são treinados com 75 mil dados de instrução sintéticos utilizando o OSS-Instruct, uma abordagem inovadora que capacita LLMs com snippets de código open-source para gerar dados de instrução de alta qualidade para código. Nossa principal motivação é mitigar o viés inerente dos dados sintéticos gerados por LLMs, fornecendo-lhes uma riqueza de referências open-source para a produção de dados mais diversos, realistas e controláveis. A ortogonalidade do OSS-Instruct em relação a outros métodos de geração de dados, como o Evol-Instruct, nos permite ainda construir um MagicoderS aprimorado. Tanto o Magicoder quanto o MagicoderS superam substancialmente os modelos de código state-of-the-art de tamanhos similares ou até maiores em uma ampla gama de benchmarks de codificação, incluindo geração de texto para código em Python, codificação multilíngue e conclusão de programas de ciência de dados. Notavelmente, o MagicoderS-CL-7B, baseado no CodeLlama, supera até mesmo o renomado ChatGPT no HumanEval+ (66,5 vs. 65,9 em pass@1). No geral, o OSS-Instruct abre uma nova direção para o ajuste fino de instruções com baixo viés e alta qualidade, utilizando abundantes referências open-source.
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.
PDF824February 7, 2026