인프라

KV 캐시

어텐션의 키/값 텐서를 캐시해 디코딩 단계마다 재사용함으로써 대규모 언어 모델의 추론 속도를 높이는 기법.

KV 캐시(KV cache)는 어텐션 메커니즘의 각 층에서 계산된 키(K)와 값(V) 텐서를 저장해, 연속된 텍스트 생성 단계 사이에서 재사용하는 추론 가속 기법이다.

대규모 언어 모델은 토큰을 하나씩 생성하며, 새 토큰은 이전의 모든 토큰을 참조한다. 캐시가 없으면 모델은 매 단계마다 전체 시퀀스에 대한 K와 V 투영을 다시 계산해야 하고, 그 비용은 길이에 따라 제곱으로 늘어난다. 이 텐서들은 토큰이 처리된 뒤에는 바뀌지 않으므로 KV 캐시가 이를 저장하며, 따라서 새 토큰의 어텐션은 그 토큰에 대해서만 계산된다. 이로써 추론 비용이 제곱에서 거의 선형으로 줄어든다.

2025~2026년에 걸쳐 KV 캐시는 긴 컨텍스트 윈도와 높은 처리량에서 주된 메모리 병목이다. 그 사용량은 시퀀스 길이와 동시 요청 수에 따라 늘어나므로, 멀티쿼리 및 그룹 쿼리 어텐션, 캐시 양자화, 페이징(PagedAttention) 같은 기법이 메모리를 억제하기 위해 발전하고 있다.

출처

관련 항목