본문으로 건너뛰기
IFAI

오픈소스

오픈소스 RotorQuant 공개: 구글 제치고 KV 캐시 10배 압축

게시 확산 지수 48

오픈소스 KV 캐시 압축 알고리즘 RotorQuant가 공개됐다. 클리포드 회전자를 활용해 구글 TurboQuant 대비 연산량을 크게 줄였으며, 10배 압축을 유지한 채 프리필 속도는 5.3배, 디코딩 속도는 28% 개선했다. 거대 언어 모델의 초장문 컨텍스트를 단일 GPU에서 구동할 수 있는 길을 열었다.

오픈소스 RotorQuant 공개: 구글 제치고 KV 캐시 10배 압축
이미지: themenonlab.blog

RotorQuant는 대규모 언어 모델의 KV 캐시 메모리 사용량을 10분의 1로 압축하고 프롬프트 프리필 속도를 5.3배 끌어올리는 오픈소스 압축 도구다.

로컬 환경에서 거대 모델을 구동할 때 가장 큰 걸림돌은 단연 VRAM 용량이다. FP16 기준 8B 모델에서 128K 컨텍스트를 처리하려면 KV 캐시에만 약 4.6GB의 VRAM이 소모된다. 32B 모델로 넘어가면 단일 GPU로는 감당하기 어려워진다.

원리와 구현 방식

구글은 ICLR 2026에서 벡터를 회전시킨 뒤 3-bit로 양자화하는 TurboQuant를 선보인 바 있다. 하지만 TurboQuant의 월시-하다마드 변환은 전역 행렬 연산이라 128차원 벡터 하나당 16,000회 이상의 부동소수점 연산을 필요로 해 연산 병목이 심했다.

RotorQuant는 어텐션 벡터가 모든 차원에 고르게 분포하지 않는다는 점에 착안했다. 전체 차원을 한 번에 회전시키는 대신, 벡터를 3개 숫자 단위의 작은 블록으로 쪼갠 뒤 3차원 기하 대수의 클리포드 회전자를 적용해 독립적으로 회전시켰다.

그 결과 벡터당 연산 횟수는 16,000회에서 약 200회로 급감했고, 변환 자체에 필요한 파라미터 수도 구글 방식보다 44배 줄었다. 국소적인 블록 회전이 벡터의 방향성을 더 잘 보존하면서 결과물의 품질도 오히려 개선됐다.

Llama 3.1 8B 모델의 3-bit 테스트에서 RotorQuant의 PPL(Perplexity)은 6.91을 기록해 구글 TurboQuant의 7.07보다 우수했다. 디코딩 속도는 초당 93토큰에서 119토큰으로 28% 빨라졌고, 프리필 속도는 초당 722토큰에서 3,822토큰으로 5.3배 향상됐다.

실제 사용 환경에서는 1만 토큰 길이의 문서를 읽어 들일 때 걸리는 시간이 14초에서 3초 미만으로 줄어든다. K 캐시만 압축해 정밀도 손실을 0.8% 수준으로 억제하는 5배 압축 모드도 지원한다.

실행 방법

이 프로젝트는 llama.cpp 포크 형태로 공개되어 모델 재학습이나 번거로운 포맷 변환 없이 플래그 옵션만으로 즉시 적용할 수 있다.

NVIDIA CUDA와 애플 실리콘(Metal)을 모두 지원한다. 깃허브에서 소스코드를 내려받아 해당 브랜치로 전환한 뒤, cmake로 빌드하면 바로 로컬 환경에서 구동 가능하다.

왜 중요한가

로컬 환경에서 RAG, 코드베이스 분석, 문서 요약을 자주 돌리는 개발자라면 당장 사용해 볼 만하다. 초장문 추론 시 체감 대기 시간을 결정짓는 프리필 단계의 병목을 시원하게 해결했기 때문이다.

빅테크의 최신 연구를 오픈소스 진영이 기하 대수를 활용해 실용적인 경량 도구로 재탄생시킨 점이 돋보인다. 24GB 단일 소비자용 그래픽카드에서도 32B 모델의 128K 컨텍스트를 무리 없이 구동하는 환경이 빠르게 보편화될 것으로 보인다.

출처 (1)

  1. [1]

매일 AI 콘텐츠 픽