ChatPaper.aiChatPaper

MInference 1.0: Ускорение предварительного заполнения для LLM с длинным контекстом с помощью динамического разреженного внимания.

MInference 1.0: Accelerating Pre-filling for Long-Context LLMs via Dynamic Sparse Attention

July 2, 2024
Авторы: Huiqiang Jiang, Yucheng Li, Chengruidong Zhang, Qianhui Wu, Xufang Luo, Surin Ahn, Zhenhua Han, Amir H. Abdi, Dongsheng Li, Chin-Yew Lin, Yuqing Yang, Lili Qiu
cs.AI

Аннотация

Вычислительные вызовы вывода больших языковых моделей (LLM) остаются значительным барьером для их широкого применения, особенно по мере увеличения длины запросов. Из-за квадратичной сложности вычислений внимания 8B LLM требуется 30 минут для обработки запроса из 1 миллиона токенов (т. е. этап предварительного заполнения) на одном GPU A100. Существующие методы ускорения предварительного заполнения часто не способны сохранить приемлемую точность или эффективность при применении к LLM с длинным контекстом. Для решения этой проблемы мы представляем MInference (Milliontokens Inference) - разреженный метод вычислений, разработанный для ускорения обработки длинных последовательностей. Конкретно, мы выделяем три уникальных шаблона в матрицах внимания с длинным контекстом - A-образный, Вертикальная черта и Блочно-разреженный, которые можно использовать для эффективных разреженных вычислений на GPU. Мы определяем оптимальный шаблон для каждой головы внимания оффлайн и динамически создаем разреженные индексы на основе назначенного шаблона во время вывода. С помощью шаблона и разреженных индексов мы выполняем эффективные вычисления разреженного внимания с помощью наших оптимизированных ядер GPU для значительного снижения задержки на этапе предварительного заполнения LLM с длинным контекстом. Наш метод может быть применен к существующим LLM напрямую без каких-либо изменений в настройках предварительного обучения или дополнительной донастройки. Проведя оценку на широком спектре задач, включая InfiniteBench, RULER, PG-19 и Needle In A Haystack, а также модели, включая LLaMA-3-1M, GLM4-1M, Yi-200K, Phi-3-128K и Qwen2-128K, мы демонстрируем, что MInference эффективно сокращает задержку вывода до 10 раз на этапе предварительного заполнения на A100, сохраняя точность. Наш код доступен по адресу https://aka.ms/MInference.
English
The computational challenges of Large Language Model (LLM) inference remain a significant barrier to their widespread deployment, especially as prompt lengths continue to increase. Due to the quadratic complexity of the attention computation, it takes 30 minutes for an 8B LLM to process a prompt of 1M tokens (i.e., the pre-filling stage) on a single A100 GPU. Existing methods for speeding up prefilling often fail to maintain acceptable accuracy or efficiency when applied to long-context LLMs. To address this gap, we introduce MInference (Milliontokens Inference), a sparse calculation method designed to accelerate pre-filling of long-sequence processing. Specifically, we identify three unique patterns in long-context attention matrices-the A-shape, Vertical-Slash, and Block-Sparsethat can be leveraged for efficient sparse computation on GPUs. We determine the optimal pattern for each attention head offline and dynamically build sparse indices based on the assigned pattern during inference. With the pattern and sparse indices, we perform efficient sparse attention calculations via our optimized GPU kernels to significantly reduce the latency in the pre-filling stage of long-context LLMs. Our proposed technique can be directly applied to existing LLMs without any modifications to the pre-training setup or additional fine-tuning. By evaluating on a wide range of downstream tasks, including InfiniteBench, RULER, PG-19, and Needle In A Haystack, and models including LLaMA-3-1M, GLM4-1M, Yi-200K, Phi-3-128K, and Qwen2-128K, we demonstrate that MInference effectively reduces inference latency by up to 10x for pre-filling on an A100, while maintaining accuracy. Our code is available at https://aka.ms/MInference.

Summary

AI-Generated Summary

PDF264November 28, 2024