OpenCoder: O Livro de Receitas Aberto para Modelos de Linguagem de Grande Porte de Código de Primeira Linha
OpenCoder: The Open Cookbook for Top-Tier Code Large Language Models
November 7, 2024
Autores: Siming Huang, Tianhao Cheng, Jason Klein Liu, Jiaran Hao, Liuyihan Song, Yang Xu, J. Yang, J. H. Liu, Chenchen Zhang, Linzheng Chai, Ruifeng Yuan, Zhaoxiang Zhang, Jie Fu, Qian Liu, Ge Zhang, Zili Wang, Yuan Qi, Yinghui Xu, Wei Chu
cs.AI
Resumo
Os modelos de linguagem de grande escala (LLMs) para código tornaram-se indispensáveis em vários domínios, incluindo geração de código, tarefas de raciocínio e sistemas de agentes. Embora os LLMs de código de acesso aberto estejam cada vez mais se aproximando dos níveis de desempenho dos modelos proprietários, LLMs de código de alta qualidade adequados para investigação científica rigorosa, particularmente aqueles com pipelines de processamento de dados reproduzíveis e protocolos de treinamento transparentes, permanecem limitados. A escassez deve-se a vários desafios, incluindo restrições de recursos, considerações éticas e as vantagens competitivas de manter modelos avançados. Para preencher esta lacuna, apresentamos o OpenCoder, um LLM de código de primeira linha que não apenas atinge desempenho comparável aos modelos líderes, mas também serve como um "livro de receitas aberto" para a comunidade de pesquisa. Diferente da maioria dos esforços anteriores, liberamos não apenas os pesos do modelo e o código de inferência, mas também os dados de treinamento reproduzíveis, o pipeline completo de processamento de dados, resultados rigorosos de ablação experimental e protocolos de treinamento detalhados para pesquisa científica aberta. Através deste lançamento abrangente, identificamos os ingredientes-chave para construir um LLM de código de primeira linha: (1) regras heurísticas otimizadas para código para limpeza de dados e métodos para desduplicação de dados, (2) recuperação de corpus de texto relacionado a código e (3) dados sintéticos de alta qualidade tanto nas fases de *annealing* quanto de ajuste fino supervisionado. Ao oferecer este nível de abertura, visamos ampliar o acesso a todos os aspectos de um LLM de código de primeira linha, com o OpenCoder servindo tanto como um modelo poderoso quanto como uma base aberta para acelerar a pesquisa e permitir avanços reproduzíveis em IA para código.
English
Large language models (LLMs) for code have become indispensable in various
domains, including code generation, reasoning tasks and agent systems.While
open-access code LLMs are increasingly approaching the performance levels of
proprietary models, high-quality code LLMs suitable for rigorous scientific
investigation, particularly those with reproducible data processing pipelines
and transparent training protocols, remain limited. The scarcity is due to
various challenges, including resource constraints, ethical considerations, and
the competitive advantages of keeping models advanced. To address the gap, we
introduce OpenCoder, a top-tier code LLM that not only achieves performance
comparable to leading models but also serves as an ``open cookbook'' for the
research community. Unlike most prior efforts, we release not only model
weights and inference code, but also the reproducible training data, complete
data processing pipeline, rigorous experimental ablation results, and detailed
training protocols for open scientific research. Through this comprehensive
release, we identify the key ingredients for building a top-tier code LLM: (1)
code optimized heuristic rules for data cleaning and methods for data
deduplication, (2) recall of text corpus related to code and (3) high-quality
synthetic data in both annealing and supervised fine-tuning stages. By offering
this level of openness, we aim to broaden access to all aspects of a top-tier
code LLM, with OpenCoder serving as both a powerful model and an open
foundation to accelerate research, and enable reproducible advancements in code
AI.