LongAlign: Uma Receita para o Alinhamento de Contexto Longo em Modelos de Linguagem de Grande Escala
LongAlign: A Recipe for Long Context Alignment of Large Language Models
January 31, 2024
Autores: Yushi Bai, Xin Lv, Jiajie Zhang, Yuze He, Ji Qi, Lei Hou, Jie Tang, Yuxiao Dong, Juanzi Li
cs.AI
Resumo
Estender modelos de linguagem de grande escala para lidar efetivamente com contextos longos requer ajuste fino por instrução em sequências de entrada de comprimento similar. Para abordar isso, apresentamos o LongAlign -- uma receita que abrange os dados de instrução, o treinamento e a avaliação para o alinhamento de contextos longos. Primeiro, construímos um conjunto de dados de instruções longas utilizando Self-Instruct. Para garantir a diversidade dos dados, ele abrange uma ampla gama de tarefas provenientes de várias fontes de contexto longo. Segundo, adotamos as estratégias de empacotamento e ordenação de lotes para acelerar o ajuste fino supervisionado em dados com distribuições variadas de comprimento. Além disso, desenvolvemos um método de ponderação de perda para equilibrar a contribuição para a perda em diferentes sequências durante o treinamento com empacotamento. Terceiro, introduzimos o benchmark LongBench-Chat para avaliar as capacidades de seguir instruções em consultas com comprimentos de 10k a 100k. Experimentos mostram que o LongAlign supera as receitas existentes para LLMs em tarefas de contexto longo em até 30\%, mantendo também sua proficiência no tratamento de tarefas curtas e genéricas. O código, os dados e os modelos alinhados para contextos longos estão disponíveis em https://github.com/THUDM/LongAlign.
English
Extending large language models to effectively handle long contexts requires
instruction fine-tuning on input sequences of similar length. To address this,
we present LongAlign -- a recipe of the instruction data, training, and
evaluation for long context alignment. First, we construct a long
instruction-following dataset using Self-Instruct. To ensure the data
diversity, it covers a broad range of tasks from various long context sources.
Second, we adopt the packing and sorted batching strategies to speed up
supervised fine-tuning on data with varied length distributions. Additionally,
we develop a loss weighting method to balance the contribution to the loss
across different sequences during packing training. Third, we introduce the
LongBench-Chat benchmark for evaluating instruction-following capabilities on
queries of 10k-100k in length. Experiments show that LongAlign outperforms
existing recipes for LLMs in long context tasks by up to 30\%, while also
maintaining their proficiency in handling short, generic tasks. The code, data,
and long-aligned models are open-sourced at https://github.com/THUDM/LongAlign.