Una Revisión sobre Modelos de Lenguaje 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
Resumen
En este trabajo revisamos sistemáticamente los avances recientes en el procesamiento de código con modelos de lenguaje, abarcando más de 50 modelos, más de 30 tareas de evaluación y 500 trabajos relacionados. Clasificamos los modelos de procesamiento de código en modelos de lenguaje general representados por la familia GPT y modelos especializados que están específicamente preentrenados en código, a menudo con objetivos adaptados. Discutimos las relaciones y diferencias entre estos modelos, y destacamos la transición histórica del modelado de código desde modelos estadísticos y RNNs hacia Transformers preentrenados y LLMs, un camino idéntico al que ha seguido el procesamiento del lenguaje natural (NLP). También analizamos características específicas del código, como AST, CFG y pruebas unitarias, junto con su aplicación en el entrenamiento de modelos de lenguaje para código, e identificamos los principales desafíos y posibles direcciones futuras en este dominio. Mantenemos esta revisión abierta y actualizada en el repositorio de GitHub en 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.