Scalabilità dei Modelli di Codice Granite a Contesti di 128K
Scaling Granite Code Models to 128K Context
July 18, 2024
Autori: Matt Stallone, Vaibhav Saxena, Leonid Karlinsky, Bridget McGinn, Tim Bula, Mayank Mishra, Adriana Meza Soria, Gaoyuan Zhang, Aditya Prasad, Yikang Shen, Saptha Surendran, Shanmukha Guttula, Hima Patel, Parameswaran Selvam, Xuan-Hong Dang, Yan Koyfman, Atin Sood, Rogerio Feris, Nirmit Desai, David D. Cox, Ruchir Puri, Rameswar Panda
cs.AI
Abstract
Questo articolo introduce i modelli di codice Granite a contesto lungo, che supportano finestre di contesto efficaci fino a 128K token. La nostra soluzione per scalare la lunghezza del contesto dei modelli di codice Granite 3B/8B da 2K/4K a 128K consiste in un pre-addestramento continuo leggero, aumentando gradualmente la frequenza base del RoPE con il packing di file a livello di repository e dati a contesto lungo con upsampling della lunghezza. Inoltre, rilasciamo anche modelli ottimizzati per istruzioni con supporto per contesto lungo, derivati da un ulteriore fine-tuning dei modelli base a contesto lungo su un mix di coppie istruzione-risposta a contesto breve e lungo con licenza permissiva. Rispetto ai modelli originali di codice Granite a contesto breve, i nostri modelli a contesto lungo raggiungono miglioramenti significativi nei compiti a contesto lungo senza alcun degrado evidente delle prestazioni nei benchmark standard di completamento del codice (ad esempio, HumanEval). Rilasciamo tutti i nostri modelli di codice Granite a contesto lungo sotto licenza Apache 2.0 per uso sia di ricerca che commerciale.
English
This paper introduces long-context Granite code models that support effective
context windows of up to 128K tokens. Our solution for scaling context length
of Granite 3B/8B code models from 2K/4K to 128K consists of a light-weight
continual pretraining by gradually increasing its RoPE base frequency with
repository-level file packing and length-upsampled long-context data.
Additionally, we also release instruction-tuned models with long-context
support which are derived by further finetuning the long context base models on
a mix of permissively licensed short and long-context instruction-response
pairs. While comparing to the original short-context Granite code models, our
long-context models achieve significant improvements on long-context tasks
without any noticeable performance degradation on regular code completion
benchmarks (e.g., HumanEval). We release all our long-context Granite code
models under an Apache 2.0 license for both research and commercial use.