глоссарий

KV-cache

KV-cache

KV-cache — это механизм памяти в больших языковых моделях, который хранит промежуточные представления уже обработанных слов («ключи» и «значения» для механизма внимания). Без него при генерации каждого нового токена модель заново пересчитывала бы всю предыдущую последовательность, что делает диалог медленным и затратным. С кэшем модель вычисляет только новые представления, а старые подставляет из памяти.

Этот термин напрямую определяет скорость и стоимость работы ChatGPT и аналогов. Чем длиннее контекст, тем больше места занимает кэш, и именно он часто становится узким местом на серверах. Инженеры ищут способы сжимать KV-cache: отбрасывать менее важные токены, группировать их, использовать особые структуры данных. Понимание термина объясняет, почему длинные разговоры тормозят и почему модели «забывают» начало беседы — кэш переполняется или его слишком дорого удерживать.

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

Прикладной пример: вы просите нейросеть написать рассказ, а затем говорите «переделай третью главу, добавив персонажа из первой». Благодаря кэшу модель мгновенно обращается к сохранённым данным о главах, не перечитывая весь текст. Без кэша пришлось бы заново обрабатывать весь запрос и историю на каждом шаге, что увеличило бы время ответа в десятки раз и подняло расходы. Так что KV-cache — невидимая, но критически важная технология: она делает чат-ботов быстрыми и экономичными и одновременно ограничивает длину контекста, который модель может удерживать.