Как выбрать локальную модель под объём видеопамяти

Считайте память под веса по формуле «число параметров × бит на параметр ÷ 8», добавьте 1,5–3 ГБ на кэш контекста и буферы рантайма — и сравните сумму со свободной видеопамятью. На 8 ГБ обычно помещается модель 7–8B в 4-битном квантовании с контекстом 4 тыс. токенов. На 12 ГБ — та же 8B в 5–6 битах или 14B в 4 битах с умеренным контекстом. На 24 ГБ уже реалистичны 32B в 4 битах.

Сколько VRAM реально нужно: формула и запас на контекст

Модель на диске хранится в сжатом виде, и в память она грузится примерно в том же объёме. Число бит на параметр — это и есть степень сжатия: 4 бита вместо исходных 16 уменьшают веса вчетверо. Отсюда простая арифметика: 7 млрд параметров × 4 бита ÷ 8 = 3,5 ГБ. Для 8 бит получится 7 ГБ, для fp16 — 14 ГБ. Это нижняя граница, ниже которой модель просто не загрузится.

К весам добавляется кэш ключей и значений (KV-cache) — промежуточные данные внимания для уже прочитанных токенов. Он растёт с длиной контекста: чем больше текста модель держит «в голове», тем больше памяти занимает. Для моделей 7–8B при контексте 4 тыс. токенов это обычно единицы гигабайт, при 32 тыс. — уже заметно больше. Точный размер зависит от числа слоёв, числа голов внимания и их размерности у конкретной архитектуры, поэтому сверяйте с документацией движка, который используете.

Плюс оверхед рантайма: фрагментация памяти, рабочие буферы, промежуточные тензоры. На практике проще оставить 1,5–3 ГБ сверху и проверить запуском, чем считать до байта. Если карта занята рабочим столом и браузером, свободной VRAM будет меньше номинала — учитывайте это.

Таблица соответствия: VRAM, размер модели и квантование

Ориентиры ниже — для моделей класса Llama, Mistral, Qwen в формате GGUF и движков вроде llama.cpp или Ollama. Цифры приблизительные: разные движки резервируют память по-разному, а качество квантований зависит от модели.

VRAM Комфортно Впритык Что будет медленно
6–8 ГБ 3–4B в Q5, 7–8B в Q4 при контексте 4K 7–8B в Q5 с коротким контекстом 13B в Q4 — часть слоёв уйдёт на CPU
12 ГБ 7–8B в Q5–Q6, 13–14B в Q4 с контекстом 8K 14B в Q5 при контексте 4K 32B в Q4 — сильная выгрузка на CPU
16 ГБ 14B в Q5, 7–8B в Q8 32B в Q4 с коротким контекстом 32B в Q5 — тесно под длинный контекст
24 ГБ 32B в Q4–Q5, 14B в Q8 32B в Q6 при контексте 8K 70B в Q4 — только с выгрузкой слоёв
48 ГБ и больше 70B в Q4, 32B в Q8 70B в Q5 с умеренным контекстом 70B в fp16 — не влезет

Когда веса не помещаются целиком, рантаймы позволяют выгрузить часть слоёв на процессор. Модель запустится, но генерация пойдёт в разы медленнее: данные гоняются через системную память. Это рабочий компромисс для редких задач, а не замена достаточному объёму VRAM.

Квантование: чем платить за экономию памяти

Квантование — это снижение точности чисел, которыми записаны веса, чтобы модель занимала меньше места. Варианты отличаются числом бит на параметр и тем, какие слои сжимаются сильнее. В семействе GGUF распространены Q4_K_M, Q5_K_M и Q8_0: цифра — биты, буквы — схема смешанного сжатия разных частей модели.

Q4_K_M экономит память заметнее всего и обычно годится для чата, пересказа и работы с текстом на русском. На сложных задачах — генерация кода, точные вычисления, длинные логические цепочки — потеря качества может проявиться. Q5_K_M ближе к исходной модели, но требует примерно на четверть больше памяти. Q8_0 почти неотличим от fp16 по качеству, зато весит вдвое больше 4-битного варианта.

Для моделей 7–8B часто разумный компромисс — Q5: качество выше, а памяти хватает. Для 70B на бытовой карте выбор обычно между Q4 и выгрузкой на CPU, и здесь Q4 остаётся практичным вариантом. Точные размеры файлов смотрите на странице модели на Hugging Face: там у каждого квантования указан объём в гигабайтах, и это надёжнее любых прикидок.

Пример: подбор модели под 12 ГБ VRAM

Возьмём карту на 12 ГБ и модель на 8 млрд параметров в Q4_K_M. Веса — около 5 ГБ. Для контекста 8 тыс. токенов KV-cache и буферы добавят ориентировочно 2–3 ГБ. Итого 7–8 ГБ: запас есть, и даже контекст 16K с большой вероятностью поместится, но проверять надо запуском.

Если хочется 14B в Q4, веса займут около 8–9 ГБ. На контекст и оверхед останется 3–4 ГБ — при 8K токенов это впритык. При 16K памяти может не хватить, и тогда есть три пути: уменьшить контекст, взять квантование Q3 или выгрузить несколько слоёв на CPU.

Проверить просто. В Ollama запустите модель командой ollama run с нужным тегом квантования и посмотрите на вывод: движок сообщает, сколько слоёв ушло на GPU, а сколько на CPU. Если на CPU ушло много слоёв, скорость упадёт. В llama.cpp аналогично смотрите лог загрузки и параметр выгрузки слоёв. Параллельно откройте nvidia-smi и следите за занятой памятью.

Как проверить выбор на своём железе

Расчёт даёт стартовую точку, финальное решение — за тестом на вашей карте и ваших задачах. Пройдите по шагам:

  • Запустите модель с целевой длиной контекста и задайте вопрос, близкий к реальной работе: длинный текст, код или таблица.
  • Смотрите на nvidia-smi: занятая память не должна упираться в предел, а свободной пусть остаётся хотя бы несколько сотен мегабайт.
  • Замерьте скорость генерации в токенах в секунду на одном и том же запросе до и после смены квантования.
  • Проверьте качество на своих задачах: сравните ответы Q4 и Q5 на трёх-четырёх типичных запросах.

Признаки нехватки памяти: ошибки выделения при длинном запросе, резкое падение скорости при увеличении контекста, активная выгрузка слоёв на CPU. Если это появилось — снижайте контекст или берите квантование поменьше, пока работа не станет стабильной.

Где сверять актуальные цифры и новости технологий

Размеры квантований и требования к памяти меняются вместе с моделями и движками. На ноябрь 2026 года проверяйте три источника. Первый — карточки моделей на Hugging Face: там указаны число параметров, доступные квантования и объём файлов. Второй — релизы и документация llama.cpp, Ollama и vLLM: в них описано, как движок считает KV-cache и сколько памяти резервирует. Третий — новости технологий о новых архитектурах: методы сжатия кэша и оптимизации внимания меняют расклад, и цифры из старых статей устаревают.

Сверяйте версию движка и дату публикации цифр. Если статья ссылается на старую версию, её оценки могут отличаться от текущих на гигабайты — особенно для длинного контекста.

Влезет ли модель 13B в 8 ГБ видеопамяти?

В 4-битном квантовании веса займут около 7–8 ГБ, и на кэш контекста места почти не останется. Запустить можно только с выгрузкой части слоёв на CPU, и скорость будет заметно ниже. Для стабильной работы на 8 ГБ лучше взять 7–8B.

Почему модель на диске весит меньше, чем занимает в памяти?

Файл содержит только веса в сжатом виде. При запуске к ним добавляются кэш контекста, рабочие буферы и промежуточные тензоры, которые считаются на лету. Поэтому запас в 1,5–3 ГБ сверх размера файла — обычная практика.

Что важнее для качества: размер модели или квантование?

Зависит от задачи. Для чата и пересказа часто выигрывает модель побольше в Q4 против модели поменьше в Q8. Для кода и точных расчётов лучше меньшая модель в более высоком квантовании: ошибки сжатия там заметнее. Сравните оба варианта на своих запросах.

Как узнать, сколько памяти свободно на карте?

Запустите nvidia-smi в терминале: в таблице будет общий объём и сколько занято сейчас. На картах AMD аналогичную информацию показывает rocm-smi. Закройте лишние программы перед замером, иначе цифра будет заниженной.