Калькулятор видеопамяти для LLM
Видеопамять при запуске модели уходит на веса, KV-кэш под контекст и служебные буферы движка. Выберите модель или введите её параметры из config.json — калькулятор посчитает первые две части и покажет, на каких видеокартах останется запас.
Объём служебных буферов зависит от движка и настроек, поэтому не планируйте загрузку видеокарты под 100%. Не помещается — квантуйте веса и кэш, сократите контекст или выгрузите часть слоёв в оперативную память ценой скорости. Формулы и примеры — в статье «Сколько видеопамяти нужно для LLM».
Как считаем
Веса = число параметров × байт на параметр. В FP16 — 2 байта, в 8 битах — около 1, в 4 битах — чуть больше 0,5: вместе с весами хранятся масштабы квантования. Точнее всего ориентироваться на размер файла модели — его можно ввести в поле «Размер файла».
KV-кэш на токен = 2 × число слоёв с вниманием × число KV-голов × размер головы × байт на значение. Например, у Llama 3.3 70B это 2 × 80 × 8 × 128 × 2 байта ≈ 0,31 МБ на токен, то есть около 2,5 ГБ на 8 192 токена. Кэш нужен каждому одновременному запросу.
Все объёмы — в двоичных гигабайтах, как указана память видеокарт. Подробный разбор с примерами и источниками — в статье «Сколько видеопамяти нужно для LLM», а какие модели помещаются в 8, 12, 16 и 24 ГБ — в подборке «Модели для Ollama и LM Studio».
Вопросы и ответы
Как посчитать, сколько видеопамяти нужно для LLM?
Сложите память под веса и под KV-кэш. Веса — число параметров × байт на параметр (2 в FP16, около 1 в 8 битах, чуть больше 0,5 в 4 битах) или просто размер файла модели. KV-кэш на токен = 2 × число слоёв с вниманием × число KV-голов × размер головы × байт на значение; результат умножается на длину контекста и число одновременных запросов. Сверху нужен запас под буферы движка.
Где взять параметры модели для расчёта KV-кэша?
В файле config.json модели на Hugging Face: num_hidden_layers, num_key_value_heads и head_dim. У гибридных моделей, например Qwen3.6-27B, кэш хранят только слои с полным вниманием — считать нужно по ним.
Как уменьшить расход видеопамяти?
Квантовать веса до 4 бит, квантовать KV-кэш (в Ollama — OLLAMA_KV_CACHE_TYPE=q8_0, примерно вдвое меньше, чем f16), ограничить длину контекста или выгрузить часть слоёв в оперативную память ценой скорости.