Estendendo a Janela de Contexto de LLMs com 100 Amostras
Extending LLMs' Context Window with 100 Samples
January 13, 2024
Autores: Yikai Zhang, Junlong Li, Pengfei Liu
cs.AI
Resumo
Os Modelos de Linguagem de Grande Escala (LLMs) são conhecidos por terem uma capacidade limitada de extrapolação além de sua janela de contexto pré-treinada, o que restringe sua aplicação em tarefas subsequentes com entradas extensas. Estudos recentes buscaram estender a janela de contexto dos LLMs modificando o método de codificação de posição rotativa (RoPE), uma técnica popular de codificação de posição adotada por LLMs conhecidos como LLaMA, PaLM e GPT-NeoX. No entanto, trabalhos anteriores como Interpolação de Posição (PI) e YaRN são intensivos em recursos e carecem de experimentos comparativos para avaliar sua aplicabilidade. Neste trabalho, identificamos a necessidade intrínseca de que a entropia de atenção dos LLMs (ou seja, a entropia da informação dos escores de atenção) mantenha estabilidade e introduzimos uma nova extensão ao RoPE que combina o ajuste da frequência base do RoPE e a escala dos logits de atenção para ajudar os LLMs a se adaptarem eficientemente a uma janela de contexto maior. Validamos a superioridade de nosso método tanto no desempenho de ajuste fino quanto na robustez em diferentes tamanhos de janela de contexto em várias tarefas que demandam contexto. Notavelmente, nosso método estende a janela de contexto do LLaMA-2-7B-Chat para 16.384 com apenas 100 amostras e 6 passos de treinamento, demonstrando uma eficiência extraordinária. Por fim, também exploramos como as composições de dados e os currículos de treinamento afetam a extensão da janela de contexto para tarefas subsequentes específicas, sugerindo que o ajuste fino de LLMs com conversas extensas é um bom ponto de partida. Disponibilizamos nosso código e dados de SFT em https://github.com/GAIR-NLP/Entropy-ABF.
English
Large Language Models (LLMs) are known to have limited extrapolation ability
beyond their pre-trained context window, constraining their application in
downstream tasks with lengthy inputs. Recent studies have sought to extend
LLMs' context window by modifying rotary position embedding (RoPE), a popular
position encoding method adopted by well-known LLMs such as LLaMA, PaLM, and
GPT-NeoX. However, prior works like Position Interpolation (PI) and YaRN are
resource-intensive and lack comparative experiments to assess their
applicability. In this work, we identify the inherent need for LLMs' attention
entropy (i.e. the information entropy of attention scores) to maintain
stability and introduce a novel extension to RoPE which combines adjusting
RoPE's base frequency and scaling the attention logits to help LLMs efficiently
adapt to a larger context window. We validate the superiority of our method in
both fine-tuning performance and robustness across different context window
sizes on various context-demanding tasks. Notably, our method extends the
context window of LLaMA-2-7B-Chat to 16,384 with only 100 samples and 6
training steps, showcasing extraordinary efficiency. Finally, we also explore
how data compositions and training curricula affect context window extension
for specific downstream tasks, suggesting fine-tuning LLMs with lengthy
conversations as a good starting point. We release our code and SFT data at
https://github.com/GAIR-NLP/Entropy-ABF.