KVzip은 Transformer 기반 대규모 언어 모델(LLM)의 추론 과정에서 발생하는 KV 캐시 메모리 병목을 해결하기 위해 제안된 질의-무관(Query-Agnostic) 캐시 압축 방법이다. 이 방법은 LLM 자체를 활용하여 캐시된 KV 쌍으로부터 원래 컨텍스트를 재구성하는 능력을 기반으로 각 KV 쌍의 중요도를 정량화하고, 중요도가 낮은 쌍을 제거함으로써 캐시 크기를 줄인다. KVzip은 다양한 질의에 걸쳐 압축된 KV 캐시를 효과적으로 재사용할 수 있도록 설계되었으며, NeurIPS 2025에서 Oral 발표로 채택되었다.

배너 광고

개요

KVzip은 Transformer 기반 대규모 언어 모델(LLM)의 추론 과정에서 KV 캐시가 차지하는 메모리와 주의(attention) 지연 시간 문제를 해결하기 위해 고안된 캐시 제거(eviction) 방법이다. 기존의 캐시 압축 기법은 특정 질의(query)에 최적화되어 재사용이 어려웠으나, KVzip은 질의-무관(Query-Agnostic) 방식으로 압축된 캐시를 다양한 질의에 걸쳐 재사용할 수 있도록 한다. 이 방법은 LLM 자체를 사용하여 캐시된 KV 쌍으로부터 원래 컨텍스트를 재구성하는 능력을 평가하고, 재구성에 기여도가 낮은 KV 쌍을 제거한다.

배경

Transformer 기반 LLM은 추론 시 입력 컨텍스트를 키-값(KV) 쌍으로 캐시한다. 컨텍스트 길이가 길어질수록 KV 캐시 크기는 선형적으로 증가하며, 이는 메모리 오버헤드와 주의 메커니즘의 지연 시간 증가를 초래한다. 이러한 문제를 해결하기 위해 다양한 KV 캐시 압축 기법이 제안되었으나, 대부분 특정 질의에 종속적이어서 압축된 캐시를 다른 질의에 재사용하기 어렵다는 한계가 있었다.

방법

KVzip은 질의-무관(Query-Agnostic) 캐시 제거 방법으로, 각 KV 쌍의 중요도를 LLM을 사용한 컨텍스트 재구성(context reconstruction)을 통해 정량화한다. 구체적으로, 캐시된 KV 쌍의 부분 집합만으로 원래 컨텍스트를 재구성할 수 있는 능력을 평가하여 중요도가 낮은 쌍을 제거한다. 이 과정은 모델 자체의 재구성 능력을 활용하므로 별도의 학습이나 추가 모듈이 필요하지 않다. 실험 결과, KVzip은 Qwen3, Qwen2.5, Gemma3, LLaMA3 등 다양한 모델에서 메모리 사용량을 3~4배 줄이고 지연 시간을 2배 감소시켰다.

성능 및 평가

KVzip은 다양한 LLM과 벤치마크에서 평가되었다. 주요 결과는 다음과 같다:

모델메모리 감소지연 시간 감소
Qwen33~4×
Qwen2.53~4×
Gemma33~4×
LLaMA33~4×

또한 KVzip은 질의-무관 특성 덕분에 압축된 캐시를 다양한 다운스트림 태스크에 재사용할 수 있어 실용성이 높다.

공개 및 구현

KVzip의 공식 구현체는 GitHub 저장소 snu-mllab/KVzip에서 MIT 라이선스로 공개되었다. 주요 언어는 Python(93.1%), CUDA(5.9%), C(1.0%)이며, 2025년 5월 28일에 생성되었다. 2026년 1월에는 압축 오버헤드를 제거하고 프리필(prefill) 및 디코딩 효율을 향상시킨 Fast KVzip이 별도 저장소로 공개되었다.

관련 연구

KVzip은 기존의 질의-종속적 캐시 압축 방법과 달리 질의-무관 압축을 가능하게 하여 캐시 재사용성을 크게 향상시켰다. 이는 컨텍스트 재구성이라는 새로운 중요도 측정 방식을 도입한 점에서 의의가 있다. 이후 Fast KVzip을 통해 압축 오버헤드 문제를 추가로 해결하였다.

참고 자료

5

관련 문서