STIVA

Nvidia сжала память ИИ в 20 раз без изменений в модели: что такое KVTC

Nvidia представила KVTC — технологию сжатия KV-кэша, ускоряющую ответы в 8 раз.

62 просмотров~2 мин чтения
Светящиеся шестерёнки с потоками данных в стиле киберпанк — символ компрессии KV-кэша
Светящиеся шестерёнки с потоками данных в стиле киберпанк — символ компрессии KV-кэша

Тихая революция в инфраструктуре ИИ

Пока весь мир следит за гонкой параметров и рекордами бенчмарков, Nvidia сделала кое-что куда более практичное: научила языковые модели экономить память в 20 раз — и при этом не трогать ни один вес модели. Новая техника называется KV Cache Transform Coding (KVTC), и если вы работаете с AI-агентами, кодинг-ассистентами или длинными контекстами — вам стоит об этом знать.

Почему KV-кэш вообще проблема?

Когда вы ведёте долгий разговор с языковой моделью, она не перечитывает всю историю с нуля при каждом ответе. Вместо этого хранится специальный key-value кэш — числовые представления всех предыдущих токенов. Удобно, но дорого: для длинных сессий этот кэш легко занимает несколько гигабайт на GPU.

При обслуживании тысяч пользователей одновременно память GPU исчерпывается раньше, чем вычислительные ресурсы. Старые кэши приходится выгружать в более медленную память или на SSD, а при возвращении пользователя — загружать обратно. Это создаёт задержки и увеличивает стоимость инфраструктуры.

Идея из мира медиакодеков

Исследователи Nvidia решили эту задачу, позаимствовав идею у... JPEG. Трансформ-кодирование — та самая технология, которая сжимает ваши фотографии без видимых потерь — оказалась применима к нейросетевому кэшу. Логика та же: данные внутри KV-кэша высококоррелированы, значит их можно описать гораздо меньшим числом переменных.

KVTC работает в три этапа:

  • PCA-выравнивание — один раз при калибровке модели, не замедляет инференс
  • Динамическое квантование — важным компонентам выделяется больше бит, второстепенные отбрасываются
  • Энтропийное кодирование DEFLATE — финальное сжатие прямо на GPU через библиотеку nvCOMP

При распаковке система работает послойно и параллельно, позволяя модели начать генерировать ответ ещё до завершения полной распаковки.

Цифры, которые говорят сами за себя

Nvidia тестировала KVTC на моделях от 1,5B до 70B параметров — Llama 3, Mistral NeMo, Qwen 2.5. Результаты:

  • Сжатие в 20 раз при потере точности менее 1%
  • Ускорение time-to-first-token в 8 раз на промптах из 8000 токенов
  • Для Qwen 2.5 1.5B: с 29 КБ до 3,2 КБ на токен при потере точности всего 0,3%

Конкуренты — KIVI, GEAR, H2O, TOVA — начинали терять точность уже при сжатии в 5 раз. KVTC держится до 64x.

Кому это нужно прямо сейчас?

По словам Адриана Ланцуцкого (Senior Deep Learning Engineer, Nvidia), KVTC оптимален для длинных многоходовых сценариев: кодинг-ассистенты, агентные воркфлоу с ожиданием внешних инструментов, итеративный RAG. Для коротких разговоров смысла нет — там просто нечего сжимать.

Важный момент: технология не требует изменений в модели. Это «прозрачный слой» между инференс-движком и хранилищем кэша — как видеокодек для стриминга.

Что дальше?

Оптимизированная реализация KVTC скоро войдёт в KV Block Manager (KVBM) внутри фреймворка Nvidia Dynamo и станет совместима с vLLM и другими популярными open-source движками. По сути, компрессия KV-кэша может стать стандартным невидимым слоем AI-инфраструктуры — как TCP/IP для интернета.

Мнение редактора

Это именно тот тип прогресса, которого я жду от крупных AI-лабораторий. Не очередная модель с рекордным IQ-тестом, а реальное инженерное решение, которое снижает стоимость для всех. Меньше гигабайт памяти = больше пользователей на одном GPU = дешевле подписки. Цепочка прямая. KVTC — скромная новость, но с огромными практическими последствиями. Следите за интеграцией в vLLM: как только она появится, это изменит экономику деплоя open-source моделей.

Читайте также