ChatPaper.aiChatPaper

Q-Фильтры: Использование геометрии QK для эффективного сжатия кэша KV

Q-Filters: Leveraging QK Geometry for Efficient KV Cache Compression

March 4, 2025
Авторы: Nathan Godey, Alessio Devoto, Yu Zhao, Simone Scardapane, Pasquale Minervini, Éric de la Clergerie, Benoît Sagot
cs.AI

Аннотация

Авторегрессионные языковые модели используют кэш ключей и значений (Key-Value, KV), который позволяет избежать повторного вычисления прошлых скрытых состояний в процессе генерации, что ускоряет работу. По мере увеличения размеров моделей и длин контекста, KV-кэш становится значительным узким местом в памяти, что требует применения методов сжатия, ограничивающих его размер во время генерации. В данной работе мы обнаруживаем удивительные свойства векторов запросов (Query, Q) и ключей (Key, K), которые позволяют эффективно аппроксимировать оценки внимания без вычисления карт внимания. Мы предлагаем Q-Filters, метод сжатия KV-кэша, не требующий обучения, который отфильтровывает менее важные пары ключ-значение на основе одного контекстно-независимого проектирования. В отличие от многих альтернатив, Q-Filters совместим с FlashAttention, так как не требует прямого доступа к весам внимания. Экспериментальные результаты в условиях длинного контекста показывают, что Q-Filters конкурирует с методами сжатия на основе внимания, такими как SnapKV, в задачах поиска, при этом стабильно превосходя эффективные схемы сжатия, такие как Streaming-LLM, в задачах генерации. Примечательно, что Q-Filters достигает 99% точности в задаче "иголка в стоге сена" при уровне сжатия x32, одновременно уменьшая падение перплексии генерации текста до 65% по сравнению с Streaming-LLM.
English
Autoregressive language models rely on a Key-Value (KV) Cache, which avoids re-computing past hidden states during generation, making it faster. As model sizes and context lengths grow, the KV Cache becomes a significant memory bottleneck, which calls for compression methods that limit its size during generation. In this paper, we discover surprising properties of Query (Q) and Key (K) vectors that allow us to efficiently approximate attention scores without computing the attention maps. We propose Q-Filters, a training-free KV Cache compression method that filters out less crucial Key-Value pairs based on a single context-agnostic projection. Contrarily to many alternatives, Q-Filters is compatible with FlashAttention, as it does not require direct access to attention weights. Experimental results in long-context settings demonstrate that Q-Filters is competitive with attention-based compression methods such as SnapKV in retrieval tasks while consistently outperforming efficient compression schemes such as Streaming-LLM in generation setups. Notably, Q-Filters achieves a 99% accuracy in the needle-in-a-haystack task with a x32 compression level while reducing the generation perplexity drop by up to 65% in text generation compared to Streaming-LLM.

Summary

AI-Generated Summary

PDF72March 5, 2025