터보퀀트는 정확도를 유지하면서 AI 메모리 사용량을 줄입니다.
DINKIssTyle

Lv.1 DINKIssTyle (61.♡.73.102)

2026년 3월 25일 PM 10:50

조회 1,019 공감 0

TurboQuant: 극강의 압축률로 AI 효율성을 재정의하다

2026년 3월 24일

아미르 잔디에(연구 과학자)와 바합 미로크니(구글 리서치 부사장 겸 구글 펠로우)

본 논문에서는 대규모 언어 모델 및 벡터 검색 엔진을 위한 대규모 압축을 가능하게 하는 이론적으로 근거 있는 고급 양자화 알고리즘 세트를 소개합니다.

벡터 는 AI 모델이 정보를 이해하고 처리하는 기본적인 방식입니다. 작은 벡터는 그래프의 점과 같은 단순한 속성을 나타내는 반면, "고차원" 벡터는 이미지의 특징, 단어의 의미, 데이터 세트의 속성과 같은 복잡한 정보를 포착합니다. 고차원 벡터는 매우 강력하지만, 막대한 양의 메모리를 소비하여 키 -값 캐시에서 병목 현상을 일으킬 수 있습니다. 키-값 캐시는 자주 사용되는 정보를 간단한 레이블 아래에 저장하여 컴퓨터가 느리고 방대한 데이터베이스를 검색하지 않고도 즉시 정보를 검색할 수 있도록 하는 고속 "디지털 치트 시트"입니다.

벡터 양자화는 고차원 벡터의 크기를 줄이는 강력한 고전적인 데이터 압축 기술입니다. 이 최적화는 인공지능의 두 가지 핵심적인 측면을 해결합니다. 첫째 , 대규모 AI 및 검색 엔진을 구동하는 고속 기술인 벡터 검색을 향상시켜 유사도 검색 속도를 높입니다. 둘째, 키-값 쌍의 크기를 줄여 유사도 검색 속도를 높이고 메모리 비용을 절감함으로써 키-값 캐시의 병목 현상을 해소합니다. 그러나 기존의 벡터 양자화 방식은 대부분 작은 데이터 블록마다 양자화 상수를 계산하고 (정밀도로) 저장해야 하므로 자체적인 "메모리 오버헤드"를 발생시킵니다 . 이 오버헤드는 숫자당 1~2비트를 추가하여 벡터 양자화의 목적을 부분적으로 무색하게 만들 수 있습니다.

오늘 우리는 벡터 양자화에서 발생하는 메모리 오버헤드 문제를 최적으로 해결하는 압축 알고리즘인 TurboQuant ( ICLR 2026 에서 발표 예정 )를 소개합니다. 또한 TurboQuant가 이러한 결과를 얻기 위해 사용하는 양자화된 Johnson-Lindenstrauss (QJL) 및 PolarQuant ( AISTATS 2026 에서 발표 예정 )도 소개합니다. 테스트 결과, 세 가지 기술 모두 AI 모델 성능 저하 없이 키-값 병목 현상을 줄이는 데 매우 효과적인 것으로 나타났습니다. 이는 검색 및 AI 분야를 포함한 모든 압축 기반 사용 사례에 중대한 영향을 미칠 수 있습니다.

TurboQuant는 어떻게 작동하나요?

TurboQuant는 정확도 손실 없이 모델 크기를 크게 줄이는 압축 방식으로, 키-값(KV) 캐시 압축과 벡터 검색을 모두 지원하는 데 이상적입니다 . 이는 두 가지 핵심 단계를 통해 달성됩니다.

  1. 고품질 압축(PolarQuant 방식) : TurboQuant는 데이터 벡터를 무작위로 회전시키는 것으로 시작합니다. 이 독창적인 단계를 통해 데이터의 기하학적 구조가 단순화되어 표준 고품질 양자화기 (정확한 소수와 같은 연속적인 값 집합을 정수와 같은 이산적인 기호 또는 숫자 집합으로 매핑하는 도구: 오디오 양자화JPEG 압축의 예 )를 벡터의 각 부분에 개별적으로 적용하기 쉬워집니다. 이 첫 번째 단계에서는 대부분의 압축력(대부분의 비트)을 사용하여 원본 벡터의 핵심 개념과 강도를 유지합니다.

  2. 숨겨진 오류 제거 : TurboQuant는 아주 적은 양의 압축 성능(단 1비트)을 사용하여 첫 번째 단계에서 남은 극소량의 오류를 QJL 알고리즘으로 제거합니다. QJL 단계는 편향을 제거하는 수학적 오류 검사기 역할을 하여 더욱 정확한 주의력 점수를 제공합니다.

TurboQuant가 이러한 효율성을 달성하는 방식을 완전히 이해하기 위해 QJL 및 PolarQuant 알고리즘의 작동 방식을 자세히 살펴보겠습니다.

QJL: 오버헤드 제로, 1비트 트릭

QJL은 존슨-린덴스트라우스 변환 이라는 수학적 기법을 사용하여 복잡하고 고차원적인 데이터를 축소하면서 데이터 포인트 간의 필수적인 거리와 관계를 보존합니다. 이 변환을 통해 각 결과 벡터는 단일 부호 비트 (+1 또는 -1)로 축소됩니다. 이 알고리즘은 본질적으로 메모리 오버헤드가 전혀 없는 고속의 간소화된 표현을 생성합니다. 정확도를 유지하기 위해 QJL은 고정밀 쿼리와 저정밀 단순화된 데이터 간의 전략적 균형을 맞추는 특수 추정기를 사용합니다. 이를 통해 모델은 주의 점수 (입력의 어떤 부분이 중요하고 어떤 부분을 안전하게 무시할 수 있는지 결정하는 데 사용되는 프로세스)를 정확하게 계산할 수 있습니다.

PolarQuant: 압축에 대한 새로운 관점

PolarQuant는 완전히 다른 접근 방식을 사용하여 메모리 오버헤드 문제를 해결합니다. 각 축을 따라 거리를 나타내는 표준 좌표(예: X, Y, Z)를 사용하는 메모리 벡터를 살펴보는 대신, PolarQuant는 벡터를 직교 좌표계를 사용하는 극좌표로 변환합니다 . 이는 "동쪽으로 3블록, 북쪽으로 4블록 이동"을 "총 5블록을 37도 각도로 이동"으로 바꾸는 것과 유사합니다. 결과적으로 두 가지 정보, 즉 핵심 데이터의 강도를 나타내는 반지름과 데이터의 방향 또는 의미를 나타내는 각도를 얻을 수 있습니다. 각도 패턴이 알려져 있고 고도로 집중되어 있기 때문에, PolarQuant는 더 이상 비용이 많이 드는 데이터 정규화 단계를 수행할 필요가 없습니다. 경계가 이미 알려진 고정되고 예측 가능한 "원형" 격자에 데이터를 매핑하기 때문입니다. 경계가 끊임없이 변하는 "정사각형" 격자에 매핑하는 기존 방식과는 다릅니다. 따라서 PolarQuant는 기존 방식이 수반하는 메모리 오버헤드를 제거할 수 있습니다.

PolarQuant는 고효율 압축 브리지 역할을 하여 직교 좌표계 입력값을 저장 및 처리에 적합한 간결한 극좌표계 형식으로 변환합니다. 이 메커니즘은 먼저 d차원 벡터에서 좌표 쌍을 그룹화하고 이를 극좌표계에 매핑하는 것으로 시작합니다. 그런 다음 반지름 값을 쌍으로 묶어 재귀적인 극좌표 변환을 수행합니다 . 이 과정은 데이터가 하나의 최종 반지름 값과 여러 개의 설명 각도로 압축될 때까지 반복됩니다.

실험 및 결과

본 연구 에서는 오픈소스 LLM( GemmaMistral )을 사용하여 LongBench , Needle In A Haystack , ZeroSCROLLS , RULERL-Eval을 포함한 표준 장문맥 벤치마크를 통해 세 가지 알고리즘 모두를 엄격하게 평가했습니다 . 실험 데이터는 TurboQuant가 내적 왜곡재현율 측면에서 최적의 점수 계산 성능을 달성 하는 동시에 키-값(KV) 메모리 사용량을 최소화함을 보여줍니다. 아래 차트는 TurboQuant, PolarQuant 및 KIVI 기준 알고리즘 에 대해 질문 답변, 코드 생성 및 요약 등 다양한 작업에 걸쳐 집계된 성능 점수를 나타냅니다 .

양자화-2

TurboQuant는 Llama-3.1-8B-Instruct 모델 에서 다양한 압축 방식과 비교하여 LongBench 벤치마크 전반에 걸쳐 강력한 KV 캐시 압축 성능을 보여줍니다 (비트 폭은 괄호 안에 표시됨).

방대한 텍스트 속에 숨겨진 특정 정보를 찾아내는 "바늘 찾기" 작업(즉, 모델이 방대한 텍스트 속에서 아주 작은 정보 하나를 찾아낼 수 있는지 확인하는 테스트)에 대한 결과는 아래와 같습니다. TurboQuant는 모든 벤치마크에서 완벽한 다운스트림 결과를 달성하는 동시에 키-값 메모리 크기를 최소 6배 이상 줄였습니다. PolarQuant 또한 이 작업에서 거의 손실이 없습니다.

TurboQuant는 학습이나 미세 조정 없이, 모델 정확도 저하 없이 키-값 캐시를 단 3비트로 양자화할 수 있음을 입증했으며, 기존 LLM(Gemma 및 Mistral)보다 빠른 실행 시간을 달성했습니다. 구현 효율성이 매우 뛰어나고 실행 오버헤드가 거의 없습니다. 다음 그래프는 TurboQuant를 사용한 어텐션 로짓 계산 속도 향상을 보여줍니다. 특히, 4비트 TurboQuant는 H100 GPU 가속기 에서 32비트 비양자화 키에 비해 최대 8배의 성능 향상을 보여줍니다 .

TurboQuant는 고도로 최적화된 JAX 기준선 과 비교하여 다양한 비트 폭 수준에서 키-값 캐시어텐션 로짓 계산 성능이 크게 향상됨을 보여줍니다 .

이러한 특성 덕분에 벡터 검색과 같이 인덱스 구축 프로세스를 획기적으로 가속화하는 사용 사례에 TurboQuant가 이상적입니다. 우리는 1@k 재현율(recall ratio )을 사용하여 고차원 벡터 검색에서 TurboQuant의 효율성을 최첨단 방법( PQRabbiQ ) 과 비교 평가했습니다. 재현율은 알고리즘이 상위 k개 근사치 내에서 실제 최상위 내적 결과를 얼마나 자주 포착하는지를 측정하는 지표입니다. TurboQuant는 비효율적인 대규모 코드북과 데이터셋별 튜닝을 사용하는 기준 방법들에 비해 일관적으로 우수한 재현율을 달성했습니다(아래 그림 참조). 이는 TurboQuant가 고차원 검색 작업에서 견고하고 효율적임을 입증합니다.

양자화-4

TurboQuant는 다양한 최첨단 양자화 기준선과 비교하여 GloVe 데이터 세트(d=200) 에서 최적의 1@k 재현율을 달성함으로써 강력한 검색 성능을 보여줍니다 .

TurboQuant는 고차원 탐색에 획기적인 변화를 가져왔습니다. 달성 가능한 속도에 대한 새로운 기준을 제시함으로써, 데이터에 구애받지 않는 방식으로 거의 최적의 왜곡률을 제공합니다. 이를 통해 최근접 이웃 엔진은 3비트 시스템의 효율성으로 작동하면서도 훨씬 더 복잡한 모델의 정밀도를 유지할 수 있습니다. 자세한 내용은 논문을 참조하십시오.

앞으로 나아가며

TurboQuant, QJL, 그리고 PolarQuant는 단순한 실용적인 엔지니어링 솔루션을 넘어, 강력한 이론적 증명에 기반한 근본적인 알고리즘적 기여입니다. 이러한 방법들은 실제 응용 분야에서 뛰어난 성능을 보일 뿐만 아니라, 효율성이 입증되었고 이론적 하한에 근접한 성능을 보여줍니다. 이러한 엄격한 토대 덕분에 TurboQuant, QJL, 그리고 PolarQuant는 중요하고 대규모 시스템에 적용하기에 견고하고 신뢰할 수 있는 방법입니다.

주요 응용 분야 중 하나는 제미니(Gemini)와 같은 모델에서 키-값 캐시 병목 현상을 해결하는 것이지만, 효율적인 온라인 벡터 양자화의 영향은 훨씬 더 광범위합니다. 예를 들어, 현대 검색은 단순히 키워드를 넘어 의도와 의미를 파악하는 방향으로 진화하고 있습니다. 이를 위해서는 벡터 검색, 즉 수십억 개의 벡터로 이루어진 데이터베이스에서 "가장 가까운" 또는 의미적으로 가장 유사한 항목을 찾는 능력이 필요합니다.

TurboQuant와 같은 기술은 이러한 목표 달성에 매우 중요합니다. 이 기술을 통해 최소한의 메모리 사용, 거의 제로에 가까운 전처리 시간, 그리고 최첨단 정확도로 대규모 벡터 인덱스를 구축하고 쿼리할 수 있습니다. 이는 Google 규모의 시맨틱 검색을 더욱 빠르고 효율적으로 만들어 줍니다. AI가 LLM(로멀티미디어 매뉴얼)부터 시맨틱 검색에 이르기까지 모든 제품에 더욱 통합됨에 따라, 근본적인 벡터 양자화 연구는 그 어느 때보다 중요해질 것입니다.

감사의 말씀

본 연구는 구글 연구원 프라니스 카참, 한국과학기술원(KAIST) 조교수 인수 한, 뉴욕대학교 박사 과정 학생 마지드 달리리, 구글 연구원 라스 고테스뷔렌, 그리고 구글 연구원 라제시 자야람과의 공동 연구로 진행되었습니다.

https://research.google/blog/turboquant-redefining-ai-efficiency-with-extreme-compression/

Prince Canuma 라는 X 유저에 따르면

https://x.com/Prince_Canuma/status/2036611007523512397

MLX에 Google TurboQuant 구현 성공: 놀라운 결과!

Qwen3.5-35B-A3B 모델을 사용해 8.5K, 32.7K, 64.2K 컨텍스트 길이에서 '바늘구멍에서 바늘 찾기(Needle-in-a-haystack)' 테스트를 진행한 결과입니다:

모든 양자화 레벨에서 6/6 정확도(Exact Match) 달성

TurboQuant 2.5-bit: KV 캐시 크기 4.9배 감소

TurboQuant 3.5-bit: KV 캐시 크기 3.8배 감소

가장 놀라운 점: 전체(Full) KV 캐시를 사용할 때와 비교했을 때 정확도 손실이 전혀 없습니다.

라고 합니다.

즉 KV캐시를 5배 가깝게 압축하는데 손실 0, 심지어 데이터 유형에 구애받지 않기 때문에 데이터셋 보정도 필요 업다네요 ㄷㄷㄷ

댓글 (3)

  • 휘녕

    휘녕 Lv.1

    03.25 · 140.♡.29.2

    저말대로라면 같은 메모리대비 더 큰모델이 가능하다는건가요?

  • DINKIssTyle

    DINKIssTyle Lv.1 → 휘녕 작성자

    03.25 · 61.♡.73.102

    그보다는 같은 GPU에서 좀 더 오래, 좀 더 긴 컨텍스트 길이를 처리 할수 있는게 아닐까 싶습니다.

  • DINKIssTyle

    DINKIssTyle Lv.1 작성자

    03.25 · 61.♡.73.102

    mlx-vlm에 병합 되겠네요~ 언젠가는

    https://github.com/Blaizzy/mlx-vlm/pull/858

    [PR #858] Turbo Quant 추가 (Add Turbo Quant)

    1. 개요

    본 Pull Request는 모델 크기를 대폭 줄이면서도 정확도 손실이 전혀 없는 압축 방법인 TurboQuant를 추가합니다. 이 방법은 KV 캐시(Key-Value Cache) 압축과 벡터 검색 지원에 최적화되어 있으며, 다음 두 단계를 통해 수행됩니다.

    고품질 압축 (PolarQuant 방식): 데이터 벡터를 무작위로 회전시켜 기하학적 구조를 단순화한 후, 각 벡터 부분에 표준 양자화기를 적용합니다. 이 단계에서 대부분의 비트를 사용하여 원본 벡터의 핵심 개념과 강도를 포착합니다.

    숨겨진 오류 제거: 첫 단계에서 발생한 미세한 잔차 오류에 1비트의 압축 성능을 할당하여 QJL 알고리즘을 적용합니다. 이는 수학적 오류 체크 역할을 하여 편향(bias)을 제거하고 더 정확한 어텐션 스코어를 산출합니다.

    2. 테스트 결과

    모델: Qwen3.5-35B-A3B (bf16)

    기기: M3 Max 96GB

    컨텍스트 길이: 8k, 32k, 64k

    테스트 방식: Needle-in-a-haystack (바늘구멍에서 바늘 찾기)

    항목결과정확도 (모든 양자화 레벨)6/6 일치 (손실 없음)TurboQuant 2.5-bitKV 캐시 4.9배 축소TurboQuant 3.5-bitKV 캐시 3.8배 축소

    3. 사용 예시

    Bash

    uv run mlx_vlm.generate \
    --model "mlx-community/Qwen3.5-35B-A3B-4bit" \
    --prompt "질문 내용" \
    --kv-bits 3.5 \
    --kv-quant-scheme turboquant

    4. 구현 참고사항 (주의)

    현재 구현 버전은 아직 최적화 단계에 있습니다. 제작자는 이론상 기대치인 8배 속도 향상에는 아직 미치지 못한다고 언급했으며(현재 디코딩 속도 약 21~64 tok/s), 성능 개선을 위해 계속 작업 중입니다.

댓글을 작성하려면 이 필요합니다.