К содержимому
Шулай . AI-дайджест: рейтинги, новости, исследования
Лента
Теория 27 ОКТЯБРЯ 2026

KV-cache: не пересчитывать прошлое

KV-cache хранит ключи и значения уже обработанных токенов, чтобы не считать их заново при каждом новом токене.

1 мин чтения · Теория

Зачем это нужно

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

Как это работает

Когда появляется новый токен, для него считаются запрос, ключ и значение. Ключи и значения предыдущих токенов уже вычислялись на прошлых шагах, поэтому их сохраняют в памяти и берут оттуда. Для вычисления внимания нужен только запрос нового токена, а ключи и значения берутся из кэша.

Пример

Для четвёртого токена ключи и значения первых трёх токенов берутся из кэша, а новый запрос q_4 сравнивается с ними. Источник показывает, что в этом случае кэшируется всё, кроме текущих векторов.

Что запомнить

  • Обучение параллельное, генерация последовательная.
  • KV-cache хранит ключи и значения, чтобы не пересчитывать их.
  • Кэш экономит вычисления, но занимает память.

Где читать дальше

Источники
Дальше FlashAttention: быстрее не за счёт математики, а за счёт памяти