ChatPaper.aiChatPaper

Sobre el Pretrenamiento para la Finalización de Código a Nivel de Proyecto

On Pretraining for Project-Level Code Completion

October 15, 2025
Autores: Maksim Sapronov, Evgeniy Glukhov
cs.AI

Resumen

El preentrenamiento a nivel de repositorio se utiliza comúnmente para permitir que los modelos de lenguaje grandes para código aprovechen el contexto de toda la base de código. Esto mejora su capacidad para generar completaciones de código precisas y conscientes del contexto. En este trabajo, investigamos cómo diferentes estrategias de procesamiento de repositorios afectan el aprendizaje en contexto en OpenCoder, un modelo de 1.500 millones de parámetros. Extendemos su ventana de contexto de 4.096 a 16.384 tokens mediante el entrenamiento con 1.000 millones adicionales de tokens de datos curados a nivel de repositorio. A pesar de depender de un conjunto de datos más pequeño que los modelos competidores (que a menudo utilizan cientos de miles de millones de tokens), nuestro modelo logra un rendimiento comparable en el benchmark Long Code Arena. Encontramos que varias técnicas de procesamiento de repositorios producen resultados igualmente sólidos, siendo la principal ganancia la adaptación a un nuevo parámetro de escalado de incrustación posicional rotatoria (RoPE). Finalmente, demostramos que un enfoque de entrenamiento más simple a nivel de archivo, con la longitud de secuencia original, sigue siendo altamente efectivo, abriendo la investigación en completación de código a nivel de repositorio a entornos con recursos de datos y computación más limitados.
English
Repository-level pretraining is commonly used to enable large language models for code to leverage codebase-wide context. This enhances their ability to generate accurate and context-aware code completions. In this work, we investigate how different repository-processing strategies affect in-context learning in OpenCoder, a 1.5B-parameter model. We extend its context window from 4,096 to 16,384 tokens by training on additional 1B tokens of curated repository-level data. Despite relying on a smaller dataset than competing models (which often use hundreds of billions of tokens), our model achieves comparable performance on the Long Code Arena benchmark. We find that various repository-processing techniques yield similarly strong results, with the primary gain coming from adapting to a new rotary positional embedding (RoPE) scaling parameter. Finally, we show that a simpler file-level training approach at the original sequence length remains highly effective, opening up repository-level code completion research to settings with more constrained data and compute resources.
PDF52October 17, 2025