SKVQ: Sliding-window Key and Value Cache Quantization for Large Language Models

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Duanmu, Haojie, Yuan, Zhihang, Li, Xiuhong, Duan, Jiangfei, Zhang, Xingcheng, Lin, Dahua
Format: Preprint
Published: 2024
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866912114870845440
author Duanmu, Haojie
Yuan, Zhihang
Li, Xiuhong
Duan, Jiangfei
Zhang, Xingcheng
Lin, Dahua
author_facet Duanmu, Haojie
Yuan, Zhihang
Li, Xiuhong
Duan, Jiangfei
Zhang, Xingcheng
Lin, Dahua
contents Large language models (LLMs) can now handle longer sequences of tokens, enabling complex tasks like book understanding and generating lengthy novels. However, the key-value (KV) cache required for LLMs consumes substantial memory as context length increasing, becoming the bottleneck for deployment. In this paper, we present a strategy called SKVQ, which stands for sliding-window KV cache quantization, to address the issue of extremely low bitwidth KV cache quantization. To achieve this, SKVQ rearranges the channels of the KV cache in order to improve the similarity of channels in quantization groups, and applies clipped dynamic quantization at the group level. Additionally, SKVQ ensures that the most recent window tokens in the KV cache are preserved with high precision. This helps maintain the accuracy of a small but important portion of the KV cache.SKVQ achieves high compression ratios while maintaining accuracy. Our evaluation on LLMs demonstrates that SKVQ surpasses previous quantization approaches, allowing for quantization of the KV cache to 2-bit keys and 1.5-bit values with minimal loss of accuracy. With SKVQ, it is possible to process context lengths of up to 1M on an 80GB memory GPU for a 7b model and up to 7 times faster decoding.
format Preprint
id arxiv_https___arxiv_org_abs_2405_06219
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle SKVQ: Sliding-window Key and Value Cache Quantization for Large Language Models
Duanmu, Haojie
Yuan, Zhihang
Li, Xiuhong
Duan, Jiangfei
Zhang, Xingcheng
Lin, Dahua
Machine Learning
Computation and Language
Large language models (LLMs) can now handle longer sequences of tokens, enabling complex tasks like book understanding and generating lengthy novels. However, the key-value (KV) cache required for LLMs consumes substantial memory as context length increasing, becoming the bottleneck for deployment. In this paper, we present a strategy called SKVQ, which stands for sliding-window KV cache quantization, to address the issue of extremely low bitwidth KV cache quantization. To achieve this, SKVQ rearranges the channels of the KV cache in order to improve the similarity of channels in quantization groups, and applies clipped dynamic quantization at the group level. Additionally, SKVQ ensures that the most recent window tokens in the KV cache are preserved with high precision. This helps maintain the accuracy of a small but important portion of the KV cache.SKVQ achieves high compression ratios while maintaining accuracy. Our evaluation on LLMs demonstrates that SKVQ surpasses previous quantization approaches, allowing for quantization of the KV cache to 2-bit keys and 1.5-bit values with minimal loss of accuracy. With SKVQ, it is possible to process context lengths of up to 1M on an 80GB memory GPU for a 7b model and up to 7 times faster decoding.
title SKVQ: Sliding-window Key and Value Cache Quantization for Large Language Models
topic Machine Learning
Computation and Language
url https://arxiv.org/abs/2405.06219