ChatPaper.aiChatPaper

Over Vooraf Trainen voor Projectniveau Codevoltooiing

On Pretraining for Project-Level Code Completion

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

Samenvatting

Repository-level pretraining wordt vaak gebruikt om grote taalmodellen voor code in staat te stellen context op codebasisniveau te benutten. Dit verbetert hun vermogen om nauwkeurige en contextbewuste code-completies te genereren. In dit werk onderzoeken we hoe verschillende repository-verwerkingsstrategieën in-context learning beïnvloeden in OpenCoder, een model met 1,5 miljard parameters. We breiden het contextvenster uit van 4.096 naar 16.384 tokens door training op een extra 1 miljard tokens van gecureerde repository-level data. Ondanks het gebruik van een kleinere dataset dan concurrerende modellen (die vaak honderden miljarden tokens gebruiken), behaalt ons model vergelijkbare prestaties op de Long Code Arena-benchmark. We ontdekken dat verschillende repository-verwerkingstechnieken vergelijkbaar sterke resultaten opleveren, waarbij de belangrijkste winst voortkomt uit aanpassing aan een nieuwe schaalparameter voor rotary positional embedding (RoPE). Tot slot tonen we aan dat een eenvoudigere file-level trainingsaanpak op de oorspronkelijke sequentielengte zeer effectief blijft, wat onderzoek naar repository-level code-completies toegankelijk maakt voor omgevingen met beperktere data- en rekenbronnen.
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