Skip to main content

KV-кеш (Key-Value Cache)(KV-кеш на пальцях: чому довгий діалог раптово з'їдає всю відеопам'ять)

ДЛЯ АГЕНТАChatGPTClaude

Оптимізація пам'яті в моделях Transformer, яка зберігає вектори ключів і значень (Keys and Values) уже оброблених токенів у швидкій пам'яті GPU. Дозволяє генерувати кожне наступне слово миттєво, але стрімко росте в розмірі з кожним новим повідомленням у чаті.

1. Огляд концепції та призначення

Коли ви спілкуєтеся з мовною моделлю, ви помічаєте дві речі:

  1. Модель видає слова зі стабільною швидкістю (наприклад, 40 слів за секунду). Вона не сповільнюється до кінця довгої відповіді.
  2. Але якщо діалог триває вже годину і історія повідомлень стала дуже великою, програма раптом видає помилку: «Out of Memory» (закінчилася пам'ять відеокарти).

За обидва ці явища відповідає один механізм — KV-кеш (Key-Value Cache).

З практичної точки зору це короткостроковий зошит пам'яті ШІ: щоб не перечитувати всю попередню розмову з нуля заради кожного нового слова, модель зберігає математичні результати вже прочитаних слів у надшвидкому буфері відеопам'яті.

2. Як KV-кеш рятує швидкість генерації

БЕЗ KV-КЕШУ (Катастрофічне сповільнення):
Генерація слова 1  ➔ Рахуємо слово 1 (1 дія)
Генерація слова 2  ➔ Перераховуємо слова 1, 2 (2 дії)
Генерація слова 100➔ Перераховуємо всі 100 слів заново (100 дій!)
... Швидкість падає майже до нуля!

─────────────────────────────────────────────────────────────

З KV-КЕШЕМ (Постійна блискавична швидкість):
Слова 1..99 вже прораховані й лежать у KV-кеші відеопам'яті!
Генерація слова 100 ➔ Розрахунок лише ОДНОГО нового токена!
⚡ Швидкість залишається однаково високою від першого до останнього слова.

3. Чому тане вільна пам'ять GPU

Багато користувачів дивуються:

  • «Модель важить 5 ГБ, моя відеокарта має 8 ГБ. Чому вона вилітає після великого PDF-файлу?»

Тому що ці 3 ГБ запасу миттєво займає KV-кеш:

  • Кожен токен у контексті вимагає збереження векторів Key та Value у кожному шарі трансформера.
  • Якщо у вас довгий документ на 32 000 токенів, розмір цієї таблиці в пам'яті може перевищити вагу самої моделі!

4. Практичний висновок

Якщо ваша програма для локального чату вилітає через брак пам'яті, вам не обов'язково міняти модель на слабшу: достатньо обмежити розмір контекстного вікна (наприклад, з 32k до 8k токенів) або очистити історію старого чату, звільнивши тим самим KV-кеш.

/ Часті запитанняSchema.org FAQPage

FAQ: KV-кеш (Key-Value Cache)

Швидкість генерації була б катастрофічно низькою: щоб згенерувати 100-те слово, моделі довелося б заново перераховувати увагу для всіх попередніх 99 слів. З кожним новим словом модель друкувала б усе повільніше й повільніше.
/ Внутрішня перелінковка
Всі терміни
Промптинг & RAG

Розмір контекстного вікна (Пам'ять поточної розмови)

Максимальний обсяг тексту (у токенах), який мовна модель здатна одночасно утримувати в пам'яті під час поточної бесіди. Визначає, яку довжину документів можна завантажити за один раз без втрати змісту.

Читати термін
Моделі & Інференс

Відеопам'ять (VRAM) для ШІ

Відеопам'ять графічного процесора (Video RAM), у яку завантажуються ваги нейромережі та контекстне вікно. Головне апаратне вузьке місце: якщо модель не поміщається у VRAM, вона або не запуститься, або працюватиме в десятки разів повільніше на звичайному процесорі.

Читати термін
VPS & DevOps

Стрімінг тексту через SSE (Ефект друкарської машинки)

Технологія передачі згенерованих токенів у браузер у реальному часі через протокол Server-Sent Events (SSE). Створює ефект друкарської машинки, усуваючи неприємне очікування завершення повної відповіді.

Читати термін

Пов'язані матеріали екосистеми

Дізнайтеся більше про практичну реалізацію, термінологію та інструменти

Термін у глосарії

KV-Cache Offloading & Compression

Апаратні та алгоритмічні методи тимчасового вивантаження кешу ключів і значень (KV-Cache) із дорогої відеопам'яті GPU у системну оперативну пам'ять (RAM) або швидкі NVMe SSD.

Термін у глосарії

PagedAttention & KV-Cache Management

Алгоритм керування пам'яттю графічного процесора, що розбиває KV-кеш мовної моделі на неперервні віртуальні сторінки (як у ядрі ОС), усуваючи фрагментацію та збільшуючи пропускну здатність у 4 рази.

Практичний гайд

Частина II. Як працювати з Codex + оптимізація/безпека/команда

Codex — це не автодоповнення коду в чаті, а повноцінний інженерний агент: він читає репозиторій, планує зміни, редагує файли, запускає тести, перевіряє власні дифи та вміє працюват...

Практичний гайд

Як створити власну дизайн-систему в Claude Design: від мудборду до анімованого маскота

Повний практичний посібник зі створення дизайн-системи бренду в Claude Design: збір візуальних референсів, генерація 4 концепцій, токенізація, стрес-тестування та розробка анімованого SVG-маскота.

Новина

Claude Code оптимізував статус фонових субагентів: витрати на оновлення зменшилися на 99%

У CLI-версії Claude Code оновлення статусу фонових субагентів тепер виконує Haiku 5.5 на основі коротких нотаток, що знижує споживання лімітів.

Новина

OpenCode: у 30 разів більше використання DeepSeek за ту саму ціну

Співзасновник OpenCode Дакс заявив, що команда підвищила ефективність використання DeepSeek: тепер $10 дають обсяг, який раніше коштував $300.