Google zmniejszył zużycie pamięci modeli AI sześciokrotnie, zachowując dokładność, dzięki algorytmowi TurboQuant
Krótka treść
Google Research przedstawił nowy sposób kompresji pamięci KV‑cache dużych modeli językowych – TurboQuant. Algorytm zmniejsza rozdzielczość cache do 3 bitów (4 bity, jeśli dodamy korekcję błędów), nie pogarszając dokładności odpowiedzi i bez dodatkowego uczenia. Na akceleratorach Nvidia H100 TurboQuant zwiększył wydajność obliczeń logitów uwagi o 8‑krotność i zmniejszył rozmiar KV‑cache sześciokrotnie.
Co to jest KV‑cache i dlaczego jest ważne
* KV‑cache przechowuje klucze (K) i wartości (V), uzyskane podczas obliczania mechanizmu uwagi.
Pozwala to modelowi nie przeliczać ich przy każdym kroku generacji tokenów.
* Przy zwiększeniu okna kontekstowego cache rośnie wykładniczo, co prowadzi do wysokich kosztów pamięci.
* Tradycyjne metody kwantyzacji zmniejszają rozmiar cache, ale wymagają przechowywania stałych kwantyzacji (słowników), podobnych do ZIP/RAR.
Te słowniki generują znaczne koszty dodatkowe.
Jak działa TurboQuant
TurboQuant składa się z dwóch etapów i całkowicie eliminuje słowniki.
| Etap | Co się dzieje | Dlaczego to ważne |
|---|---|---|
| 1. PolarQuant | Przekładanie wektorów z koordynatów kartezjańskich na polarne (promień + kąt). Rozkłady kątowe są przewidywalne i skoncentrowane, więc nie potrzebny drogi etap normalizacji każdego bloku. Osiąga się wysokiej jakości kompresję bez słowników. | |
| 2. 1‑bitowy warstwa korekcji błędów | Stosuje kwantyzowany algorytm Johnson-Lindenstrauss; resztowa błąd redukuje się do jednego bitu. Usuwa systematyczny błąd w obliczeniach uwagi przy minimalnych dodatkowych kosztach. |
Wyniki praktyczne
| Test | Algorytmy | Wyniki |
|------|-----------|--------|
| LongBench, Needle In A Haystack, ZeroSCROLLS, RULER, L‑Eval (Gemma & Mistral) | TurboQuant vs KIVI | TurboQuant: minimum 6‑krotna kompresja KV‑cache; w zadaniach wyszukiwania „igła w stogu siana” – bez utraty dokładności. W LongBench – nie gorszy, a czasem lepszy niż KIVI. |
| Wyszukiwanie wektorowe (GloVe) | TurboQuant vs Product Quantization, RabbiQ | Nawet bez uczenia TurboQuant przewyższył wytrenowanych konkurentów pod względem jakości wyników i zużycia pamięci. |
Wnioski
* TurboQuant zapewnia silną kompresję KV‑cache do 3–4 bitów bez utraty dokładności i bez dodatkowego uczenia.
* Wydajność na Nvidia H100 wzrosła o 8‑krotność, a rozmiar cache zmniejszył się sześciokrotnie.
* Algorytm działa zarówno dla dużych modeli językowych, jak i zadań wyszukiwania wektorowego, nie wymagając drobnego dostrajania.
W ten sposób TurboQuant jest gotowy do praktycznego użycia nawet przy wysokim obciążeniu i otwiera nowe możliwości efektywnej pracy z dużymi modelami.
Komentarze (0)
Podziel się swoją opinią — prosimy o uprzejmość i trzymanie się tematu.
Zaloguj się, aby komentować