- Дата публикации
Google TurboQuant простыми словами: как ужать память для ИИ в шесть раз и не потерять качество
Что открыли
Google Research предложила алгоритм TurboQuant для больших языковых моделей вроде Llama 3.1 или Qwen. Он сжимает KV‑кеш — это часть памяти, где модель хранит промежуточные данные внимания во время диалога.
Цифры у Google жёсткие:
- память под KV‑кеш уменьшается примерно в 5–6 раз: с обычных 16 бит до 3 бит на одно значение;
- расчёты attention на видеокарте NVIDIA H100 ускоряются до 8 раз;
- качество на популярных тестах для длинных контекстов — LongBench, Needle in a Haystack, RULER — не падает;
- алгоритм не трогает сами веса модели и не требует дообучения.
Для масштаба: Llama 3.1 70B с контекстом 128K токенов тратит около 40 ГБ только на KV‑кеш. Это больше, чем занимает квантизированная версия самой модели. TurboQuant бьёт именно по этой самой прожорливой части.
Как исследовали
TurboQuant разработала команда Google Research во главе с Амиром Зандие и Вахабом Миррокни, вице-президентом Google и известным теоретиком алгоритмов. Статью приняли на ICLR 2026 — одну из ключевых конференций по машинному обучению (arXiv:2504.19874).
Исследователи взяли стандартные большие языковые модели и добавили к ним сжатие KV‑кеша «на лету». Вес модели они не квантизировали — это делают другие технологии вроде GPTQ, AWQ или формата GGUF.
TurboQuant работает в два шага:
- PolarQuant переводит векторы из обычных декартовых координат в полярные. Примерно как вместо «три шага на восток и четыре на север» сказать «пять шагов под углом 37 градусов». Перед этим вектор случайно поворачивают, чтобы значения распределялись ровнее. В полярном виде команда применяет к каждой координате квантизатор Ллойда–Макса. И укладывается в 2 бита без дополнительных служебных данных.
- QJL (Quantized Johnson–Lindenstrauss) добавляет один бит поверх PolarQuant. Он использует преобразование Джонсона–Линденштрауса, чтобы компенсировать остаточную ошибку квантизации и не смещать attention‑скор.
В итоге KV‑кеш хранится в 3 битах на значение. Авторы показывают, что их схема близка к теоретическому пределу сжатия — с погрешностью примерно в коэффициент 2,7.
Что это меняет на практике
Главная боль больших языковых моделей — не только объём весов, а именно KV‑кеш. Чем длиннее переписка, документ или код, тем больше токенов в контексте и тем быстрее память забивается.
TurboQuant сильно сдвигает эту границу:
- можно держать в памяти гораздо более длинные чаты и документы на той же видеокарте;
- на «жирных» GPU вроде NVIDIA H100 растёт не только вместимость, но и скорость attention — до восьми раз;
- облачные провайдеры ИИ могут запускать больше сессий на одном и том же железе.
Важно: TurboQuant не конкурирует с обычной квантизацией весов, а дополняет её. Вы можете взять, например, Q4‑квантизированную версию Llama 3.1 в формате GGUF, а сверху использовать TurboQuant для KV‑кеша. Веса занимают меньше места, кеш — тоже, но качество на тестах остаётся на уровне 16‑битного варианта.
Снижение требований к памяти уже ударило по ожиданиям рынка: акции производителей памяти падали примерно на 25%. Инвесторы быстро посчитали, что если KV‑кеш сжимается в шесть раз, спрос на дорогую память в серверных стойках может заметно остыть.
Что это значит для вас
Если вы запускаете локальные модели через llama.cpp, Ollama или LM Studio, вы уже знакомы с квантизацией весов — теми самыми Q4, Q5, Q8 в названии файла. TurboQuant добавляет ещё один уровень экономии, но в другой точке системы — в KV‑кеше.
Что это даёт пользователю:
- Больше контекста на обычном ноутбуке. Энтузиасты уже прогоняют Qwen 3.5 9B на MacBook Air M4 с 16 ГБ памяти и контекстом около 20 000 токенов. Без сжатого KV‑кеша такие цифры раньше были сильно сложнее.
- Меньше зависаний при длинных диалогах. Чем меньше кеш в памяти, тем ниже риск упереться в пределы RAM или VRAM.
- Более дешёвые и быстрые облачные чаты. Когда Google, OpenAI или другие интегрируют TurboQuant‑подобные техники в свои бэкенды, у них высвобождаются ресурсы. Это создаёт почву для более доступных тарифов и более длинных контекстов.
Минусы тоже есть. TurboQuant — не кнопка «ускорить всё». Нужна поддержка на уровне фреймворков и движков. Пока это исследовательский результат, а не опция в каждом интерфейсе. Но направление понятное: чем более агрессивно сжимают KV‑кеш без потери качества, тем ближе GPT‑подобные модели к формату «работает прямо на вашем ноутбуке с нормальной скоростью и длинной памятью».