Uma Análise sobre Modelos de Linguagem para Código
A Survey on Language Models for Code
November 14, 2023
Autores: Ziyin Zhang, Chaoyu Chen, Bingchang Liu, Cong Liao, Zi Gong, Hang Yu, Jianguo Li, Rui Wang
cs.AI
Resumo
Neste trabalho, realizamos uma revisão sistemática dos avanços recentes no processamento de código com modelos de linguagem, abrangendo mais de 50 modelos, 30 tarefas de avaliação e 500 trabalhos relacionados. Dividimos os modelos de processamento de código em modelos de linguagem geral, representados pela família GPT, e modelos especializados que são pré-treinados especificamente em código, frequentemente com objetivos personalizados. Discutimos as relações e diferenças entre esses modelos e destacamos a transição histórica da modelagem de código, desde modelos estatísticos e RNNs até Transformers pré-treinados e LLMs, seguindo exatamente o mesmo caminho que foi adotado pelo NLP. Também abordamos características específicas de código, como AST, CFG e testes unitários, juntamente com sua aplicação no treinamento de modelos de linguagem para código, e identificamos os principais desafios e direções futuras potenciais nesse domínio. Mantemos a pesquisa aberta e atualizada no repositório GitHub em https://github.com/codefuse-ai/Awesome-Code-LLM.
English
In this work we systematically review the recent advancements in code
processing with language models, covering 50+ models, 30+ evaluation tasks, and
500 related works. We break down code processing models into general language
models represented by the GPT family and specialized models that are
specifically pretrained on code, often with tailored objectives. We discuss the
relations and differences between these models, and highlight the historical
transition of code modeling from statistical models and RNNs to pretrained
Transformers and LLMs, which is exactly the same course that had been taken by
NLP. We also discuss code-specific features such as AST, CFG, and unit tests,
along with their application in training code language models, and identify key
challenges and potential future directions in this domain. We keep the survey
open and updated on github repository at
https://github.com/codefuse-ai/Awesome-Code-LLM.