Itinai.com a split screen photorealistic image of two compute 3f3c3d48 14eb 458c bcf3 739369f920b8 2

Как ускорить KV‑cache: сравнение TurboQuant, OSCAR и EpiCache

Itinai.com a split screen photorealistic image of two compute 3f3c3d48 14eb 458c bcf3 739369f920b8 2

Почему KV‑кеш — «узкое место» больших контекстов

Трансформеры сохраняют key и value (KV) вектор‑пары для каждого токена на каждом слое, чтобы не пересчитывать attention. При длинных последовательностях объём кеша растёт линейно от длины контекста и размера батча. Для Llama‑3.1‑70B в формате BF16 это ≈ 0,31 МБ на токен. При 128 К токенов кеш уже занимает ~40 ГБ, а при 1 М токенов — более 300 ГБ, что превышает сам вес модели (≈ 140 ГБ). Каждый новый токен вынужден «перетаскивать» весь кеш из HBM, делая декодирование ограниченным пропускной способностью памяти, а не вычислительной мощностью. Поэтому сокращение KV‑кеша — главный рычаг снижения стоимости и задержки.

Краткий обзор современных подходов

  • Token eviction (H2O, SnapKV)
  • Quantization (KIVI, TurboQuant, OSCAR)
  • Low‑rank projection (Palu)
  • Merging (KVMerger)
  • Architectural sharing (MLA)

Последние публикации 2026 года сосредоточены на ультра‑низкобитовой квантовании. Рассмотрим три самых заметных решения.

TurboQuant: теоретически оптимальное без данных

TurboQuant решает проблему «выбросов» (outlier channels) без калибровки данных, используя два этапа:

  • Случайный ротационный трансформ делает координаты почти независимыми и гауссовыми, после чего применяется предвычисленный скалярный квантователь Ллойда‑Макса.
  • 1‑битовый Quantized Johnson–Lindenstrauss (QJL) трансформ оценивает остаток, давая несмещённую оценку attention‑логитов без дополнительных коэффициентов.

Теоретически искажение находится в пределах ≈ 2,7 × от нижней границы информации, а на практике достигается почти полная точность при 4‑кратном сжатии. Плюс — отсутствие необходимости калибровки делает метод «рабочим из коробки» для любой модели.

OSCAR: внимание‑aware и готов к продакшну

OSCAR идёт другим путём: при INT2 (4 уровня) «слепая» ротация не справляется, поэтому проводится однократная калибровка, где:

  • Ключи вращаются в собственные векторы ковариации запросов, а значения — в собственные векторы взвешенной ковариации значений.
  • Дальше применяется Хадрамард‑трансформ и бит‑реверс‑пермутация, равномерно распределяя важность каналов.

OSCAR поставляется как готовая система:

  • Смешанный‑прецизионный кеш: недавние токены остаются в BF16, а история сжимается до INT2 (при 128 К токенов < 0,3 % в BF16).
  • Фьюжн‑ядра Triton с полной интеграцией SGLang (paged‑attention, prefix‑cache).
  • Готовый RotationZoo для Qwen3‑4B/8B/32B, GLM‑4.7‑FP8 и MiniMax‑M2.7.

Эффективная разрядность ≈ 2,28 бит, разница с BF16 ≈ 1,4 балла на Qwen3‑8B и почти незаметна на Qwen3‑32B. По заявлению авторов, доходится до 7,8 × ускорения работы и 8 × уменьшения KV‑кеша при 100 K контексте.

EpiCache: управление кешем в многотуровых диалогах

TurboQuant и OSCAR рассчитаны на один длинный контекст. Для длительных диалогов, где история растёт по‑многим ходам, нужен третий измерение. Apple предлагает EpiCache — кеш‑менеджер без обучения, решающий задачу выбора «какие» токены хранить, а не «как точно» их хранить:

  • Блочное предзаполнение ограничивает пиковый объём памяти.
  • Эпизодическое кластеризование разбивает разговор на смысловые «эпизоды» с отдельными сжатыми кешами.
  • Эпизод‑соответствующий поиск направляет запрос к релевантному эпизоду.
  • Адаптивное распределение бюджета по слоям учитывает чувствительность каждого слоя к удалению токенов.

На бенчмарках LongMemEval, RealTalk и LoCoMo EpiCache даёт до 40 % прироста точности над простыми эвикшн‑методами, сохраняет почти полную точность при 4‑6 × сжатии и снижает пиковую память в 3,5 раза.

Как выбрать подход?

  • TurboQuant — ваш инструмент, если нужен модель‑агностичный компромисс 3‑4 бит с минимальными усилиями.
  • OSCAR — единственный проверенный способ достичь INT2 на поддерживаемых моделях с полной интеграцией в продакшн‑стек.
  • EpiCache — добавьте его, когда ваш сервис ведёт многотуровые диалоги и требуется управлять историей, а не только сжимать её.
  • Комбинация методов возможна: например, сначала применить EpiCache для выбора токенов, затем OSCAR для INT2‑сжатия выбранных блоков.

Ключевые выводы

  • TurboQuant — теоретически оптимальное 3‑4‑бит сжатие без калибровки.
  • OSCAR — лидер в INT2‑деплойментах, обеспечивает до 8‑кратное уменьшение KV‑кеша и ускорение декодирования.
  • EpiCache — решает проблему многотуровых историй, снижая пиковую память до 3,5 раз и повышая точность до 40 %.
  • Выбирайте решение по ограничению: бит‑ширина, портативность модели или длина диалога, а затем комбинируйте совместимые подходы.

Запустите свой ИИ проект бесплатно

ИИ-агенты искусственный интеллект онлайн для бизнеса

Лучший ИИ онлайн