Squeezed Attention: Accelerating Long Context Length LLM Inference

Coleman Hooper, Sehoon Kim, Hiva Mohammadzadeh, Monishwaran Maheswaran, Sebastian Zhao +4 more
11/14/2024
cs.CL

Official code: SqueezeAILab/SqueezedAttention (58 stars, last commit 2024-11-20).

Abstract

Emerging Large Language Model (LLM) applications require long input context in order to perform complex tasks like document analysis and code generation. For these long context length applications, the length of the input prompt poses a significant challenge in terms of inference efficiency since the inference costs increase linearly with sequence length. However, for many of these applications, much of the context in the prompt is fixed across different user inputs, thereby providing the opportunity to perform offline optimizations in order to process user inputs quickly, as they are received. We propose Squeezed Attention to accelerate LLM applications where a large portion of the input context is fixed. We first leverage K-means clustering offline to group the keys for the fixed context based on semantic similarity and represent each cluster with a single centroid value. During inference, we compare query tokens from the user input with the centroids to predict which keys from the fixed context are semantically relevant, and then compute exact attention using only the important keys, thereby reducing bandwidth and computational costs. We also present a hierarchical version of our algorithm which can reduce the complexity of attention from linear to logarithmic with respect to the fixed context length. We evaluate our method on long-context benchmarks including LongBench, where it achieves a 3.1$\times$ reduction in KV budget with no noticeable accuracy loss and up to an 8$\times$ reduction with only a 0.5 point accuracy gap for the LLaMA-2-7B-32K, LWM-Text-Chat-1M, and Longchat-7B-v1.5-32K models. Futhermore, we implement kernels for centroid comparison and sparse FlashAttention with important keys, achieving more than 4$\times$ speedups during both the prefill and generation phases for long-context inference. Our code is available at https://github.com/SqueezeAILab/SqueezedAttention.

View on arXivView PDF

Code Implementations(1)

[ACL 2025] Squeezed Attention: Accelerating Long Prompt LLM Inference

587C, C++Nov 14, 20241 years ago

Similar Papers

Cite this paper

@article{hooper2024squeezed,
  title  = {Squeezed Attention: Accelerating Long Context Length LLM Inference},
  author = {Coleman Hooper and Sehoon Kim and Hiva Mohammadzadeh and Monishwaran Maheswaran and Sebastian Zhao and June Paik and Michael W. Mahoney and Kurt Keutzer and Amir Gholami},
  year   = {2024},
  eprint = {2411.09688},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2411.09688v3}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2411.09688.svg)](https://codeofpaper.com/paper/2411.09688)

Discussion