KV Cache Calculator: точный расчет VRAM для LLM | AiManual
AiManual Logo Ai / Manual.
25 Май 2026 Инструмент

KV Cache Calculator: считаем память для LLM и не даем GPU захлебнуться

Онлайн-инструмент для расчета памяти KV cache под любую LLM. Сравнение с аналогами, примеры для Llama 3, Qwen, Mistral. Узнайте, сколько VRAM нужно для вашего к

Ваш GPU не выдерживает контекст? Добро пожаловать в ад KV cache

Вы тщательно выбрали модель, сквантовали ее в Q4_K_M, с гордостью запустили на своей RTX 3090. Пять сообщений — и OOM killer уже стучится в дверь. Знакомая история? Проблема не в весовых коэффициентах — они лезут в VRAM как милые. Проблема в KV cache. Эта невидимая структура разрастается с каждым новым токеном и пожирает память быстрее, чем вы успеваете нажать Enter.

KV cache — это кэш ключей и значений внимания, который модель использует, чтобы не пересчитывать всё с нуля на каждом шаге. Для каждого слоя, каждого head и каждого токена хранятся два тензора. И они занимают реально много места. Если вы работаете с длинным контекстом (32K, 128K, а то и 1M токенов), KV cache легко может занять больше VRAM, чем сама модель. Я уже молчу про batch inference, когда вы гоните несколько запросов параллельно.

Раньше, чтобы прикинуть объем, приходилось лезть в формулы, копаться в конфигах модели и умножать вручную. А если вы меняете количество слоев или формат квантования — всё по новой. Наш KV Cache Calculator родился именно из этой боли: быстрый, наглядный, не требующий установки. Просто открываете сайт и получаете точную цифру.

Кстати, о невидимых пожирателях памяти: у KV cache есть еще один коварный родственник — фрагментация кучи glibc. Если после долгой работы сервер начинает неожиданно падать с OOM, хотя модель вроде бы не превышает лимит, советую почитать статью «Ваш LLM сервер жрет память как не в себя?».

Что под капотом у KV Cache Calculator

Инструмент считает общий объем KV cache на базе простых, но точных формул, которые используют те же движки, что vLLM или llama.cpp. Вы задаете:

  • Модель — можно выбрать из списка предустановленных (Llama 3.1, Qwen 2.5, Mistral, Gemma, DeepSeek и др.) или ввести параметры вручную: размер hidden, количество слоев, число голов внимания (num_attention_heads, num_kv_heads).
  • Контекст — максимальная длина последовательности в токенах.
  • Число параллельных запросов — для batch inference.
  • Тип данных KV cache — FP16, FP8, INT8, INT4 (квантованный кэш).
  • Group size — для квантованных вариантов (по умолчанию 32, 64, 128).

После ввода калькулятор выдает:

  • Объем KV cache на один запрос (в ГБ).
  • Общий объем для заданного batch.
  • Процент от общей VRAM (если указать доступный объем).
  • Рекомендации по квантованию кэша, чтобы вписаться в лимит.

Вся логика вычислений открыта — можете проверить, подсмотреть формулу. Никаких скрытых телеметрий, всё в браузере.

Сравнение с альтернативами: почему калькулятор — это удобно

Инструмент Точность Удобство Учет квантования кэша
Ручной расчет (Excel/калькулятор)Средняя (ошибки при копировании)НизкоеНужно самому считать
Python-скрипт (например, из transformers)ВысокаяСреднее (нужен код)Зависит от реализации
Калькулятор от Hugging Face (проприетарный)ВысокаяВысокоеТолько для их моделей
KV Cache CalculatorВысокая (с учетом k/v head ratio)Очень высокое (все поля под рукой)Да, любой формат

Главное преимущество — вы можете быстро перебрать разные сценарии. Хотите понять, сколько VRAM сэкономит переход с FP16 на FP8? Два клика. Нужно прикинуть, выдержит ли ваша видеокарта Mistral Large с контекстом 64K? Одно движение ползунка.

Для тех, кто разбирается в теме: в калькулятор заложена корректная формула расчета KV cache для multi-query attention (MQA) и grouped-query attention (GQA). Многие онлайн-калькуляторы ошибаются, когда num_kv_heads меньше num_attention_heads. Наш считает правильно.

Живой пример: запускаем Llama 3.1 70B на одной RTX 3090

Допустим, вы хотите запустить Llama 3.1 70B в 4-битной квантизации (Q4_K_M) на RTX 3090 с 24 ГБ VRAM. Модель весит около 40 ГБ в весах, но с квантованием — примерно 24 ГБ. Уже натяг. Но вам нужен контекст 32K токенов. Сколько добавит KV cache?

Параметры модели для Llama 3.1 70B: hidden_size=8192, num_layers=80, num_attention_heads=64, num_kv_heads=8 (GQA). Для одного запроса без квантования кэша (FP16):

2 (key + value) * 80 (layers) * 8192 (hidden) * 32768 (context) = 42,9 ГБ — и это только для одного запроса! На 24 ГБ VRAM вы не влезете даже с квантованием весов.

Но вы можете сжать KV cache до INT8. Тогда объем снижается вдвое — до ~21,5 ГБ. Суммарно веса (24 ГБ) + KV cache (21,5 ГБ) = 45,5 ГБ. 24 ГБ VRAM карты не хватит.

Что делать? Либо уменьшить контекст до 16K (тогда INT8 KV cache ~10,7 ГБ, сумма ~34,7 ГБ — всё ещё много), либо использовать INT4 квантование кэша (ещё половинное — 5,4 ГБ для 16K). С INT4 и 16K контекстом: 24 + 5,4 = 29,4 ГБ. Всё равно больше 24. Значит, нужна более мощная карта (например, RTX 4090 24 ГБ тоже не спасёт — она такая же по объёму). Придётся брать две 3090 или одну A6000.

💡
Подобные расчёты — обязательный этап перед сборкой бюджетной станции. Если вы планируете покупку GPU под LLM, рекомендую прочитать наше руководство «Как собрать мощную станцию для локальных LLM за $15 000» — там как раз разбираются сценарии контекстной нагрузки.

Наш калькулятор делает этот перебор за секунды. Выбираете модель, ставите контекст 32K, квантование кэша INT8, batch=1 — и видите итог. Меняете на INT4 — цифры обновляются. Удобно, когда нужно быстро принять решение: брать ли дополнительную карту или снижать требования.

Кому этот калькулятор спасёт нервы и деньги

  • Домашние энтузиасты, запускающие LLM на одном GPU. Вы уже знаете, как трудно впихнуть невпихуемое. Калькулятор покажет предел контекста для вашей видеокарты.
  • Администраторы серверов инференса. Планируете развернуть vLLM или TensorRT-LLM для команды? Прикиньте, сколько памяти съест KV cache при 50 параллельных запросах. Это напрямую влияет на выбор GPU и их количество.
  • Разработчики RAG-систем. Вы загружаете в контекст десятки документов, итоговый промпт может быть огромным. Если длина контекста превышает допустимый для вашего GPU лимит, вы будете получать ошибки или падение скорости. Калькулятор подскажет оптимальный чанкинг.
  • Трейнеры и fine-tuners. Во время обучения (LoRA, QLoRA) KV cache тоже используется — хотя и реже, но память на него тоже нужна. Прикиньте запас.

Кроме того, инструмент полезен, когда вы экспериментируете с новыми архитектурами — например, с Mamba или RWKV, где KV cache может отличаться. Хотя калькулятор сейчас заточен под стандартный transformer, мы планируем добавить поддержку гибридных моделей.

Неочевидный совет: используйте калькулятор до того, как купить GPU

Самая частая ошибка — купить RTX 3090 за $800, думая, что она потянет любую модель. А потом выясняется, что для вашей задачи (контекст 128K, batch=4) нужно 48 ГБ. И 24 ГБ — это лишь половина. Лучше заранее прогнать сценарии на калькуляторе, а потом уже выбирать: брать A6000, две 3090 в NVLink или переходить на облачные инстансы. Поверьте, это дешевле, чем потом перепродавать карту.

Кстати, если вы уже столкнулись с тем, что coding agent «глупеет» на длинном контексте — наша статья «Почему coding agent глупеет на длинном контексте» объясняет, как квантование KV cache влияет на качество. Калькулятор пригодится и там: вы сможете подобрать формат кэша, который не уронит точность, но сэкономит память.

Попробуйте прямо сейчас: откройте KV Cache Calculator, выберите свою модель и посмотрите, на какое контекстное окно вам реально хватит памяти. Скорее всего, вы удивитесь.

Подписаться на канал