☰
05.10.2026

Сколько VRAM нужно для запуска LLM на сервере

Запуск языковой модели на собственном сервере начинается не с выбора фреймворка. Он начинается с одного практического вопроса: хватит ли видеопамяти. Ошибиться здесь легко — модель, которая уверенно отвечала на демо-стенде разработчика, на боевом сервере внезапно упирается в CUDA out of memory. Причина почти всегда одна и та же: объём VRAM для LLM недооценили ещё на этапе планирования инфраструктуры.

В статье разберём, из чего складывается расход видеопамяти при запуске нейросети, как посчитать его заранее для конкретной модели и как выбрать сервер для LLM под разные задачи — от локального чат-бота на 7 миллиардах параметров до продакшен-сервиса на 70B с десятками одновременных запросов.

Что такое VRAM и почему она критична для LLM

VRAM — это видеопамять графического процессора, физически отдельная от оперативной памяти сервера и рассчитанная на высокую пропускную способность. Именно в ней хранятся веса модели и промежуточные данные вычислений: обычная RAM для этой задачи подходит плохо из-за низкой скорости обмена данными с ядрами GPU.

Когда языковая модель обрабатывает запрос, видеокарта выполняет миллионы матричных умножений подряд. Чтобы это происходило быстро, все параметры модели должны находиться в видеопамяти одновременно — иначе GPU будет постоянно ждать подгрузки данных с диска или из RAM, и скорость генерации ответа упадёт в разы. Проще говоря: сколько VRAM для LLM выделено, столько модели и доступно для быстрой работы.

В объём видеопамяти, который расходует запущенная модель, входит несколько компонентов:

Каждый из этих пунктов ведёт себя по-разному в зависимости от размера модели, длины контекста и числа одновременных запросов. Дальше разберём расчёт подробнее.

Как рассчитывается объём видеопамяти для модели

Вес модели и точность вычислений

Базовая величина — количество параметров модели, умноженное на размер одного параметра в байтах. Размер параметра зависит от точности вычислений (precision), в которой загружена модель: в FP32 каждый параметр занимает 4 байта, в FP16 и BF16 — 2 байта, в INT8 — 1 байт, а в INT4-квантовании (GPTQ, AWQ, GGUF Q4) — примерно 0,5 байта с учётом служебных данных квантования. Формула простая: объём VRAM под веса ≈ число параметров × байт на параметр.

Для модели на 7 миллиардов параметров в FP16 получаем примерно 14 ГБ только под веса. В INT4 та же модель займёт около 4 ГБ — разница почти в 3,5 раза при сопоставимом, хотя и не идентичном, качестве ответов.

KV-cache и длина контекста

KV-cache растёт линейно с длиной контекста, числом слоёв трансформера и размером скрытого состояния. Чем длиннее диалог или документ, который обрабатывает модель, тем больше видеопамяти уходит на хранение промежуточных ключей и значений внимания. На практике для модели среднего размера с контекстом в 8–16 тысяч токенов KV-cache добавляет от 10% до 30% к объёму, который занимают веса.

Важно: при работе с очень длинным контекстом — 32K, 128K токенов и выше — KV-cache может сравняться по объёму с весами модели или даже превысить их. Здесь и кроется частая ошибка при первичном расчёте инфраструктуры.

Batch size и параллельные запросы

Сервер, который отвечает одному пользователю, и сервер, который держит десятки параллельных сессий, — две разные задачи по расходу видеопамяти. Каждый одновременный запрос добавляет собственный KV-cache, поэтому для продакшен-нагрузки объём VRAM для LLM рассчитывают по пиковому числу параллельных сессий, с запасом на рост трафика.

Значит ли это, что стоит сразу закладывать двойной запас видеопамяти на всякий случай? Не обязательно — куда важнее точно оценить пиковую нагрузку, чем перестраховываться вслепую. Общее правило для одиночного инференса: суммарный объём видеопамяти обычно составляет 1,2–1,3 от размера весов модели при умеренном контексте.

Размер модели Точность Примерный объём VRAM Рекомендуемая видеокарта
7B FP16 / BF16 ~14 ГБ RTX 4090 24 ГБ, NVIDIA A10 24 ГБ
7B INT4 (GGUF Q4) ~4–5 ГБ RTX 3060 12 ГБ, NVIDIA T4 16 ГБ
13B FP16 / BF16 ~26 ГБ NVIDIA A100 40 ГБ
13B INT4 ~7–8 ГБ RTX 4090 24 ГБ
34B FP16 / BF16 ~68 ГБ 2× NVIDIA A100 40 ГБ
34B INT4 ~18–20 ГБ NVIDIA A100 40 ГБ, L40S 48 ГБ
70B FP16 / BF16 ~140 ГБ 4–8× NVIDIA A100/H100
70B INT4 ~35–40 ГБ 2× NVIDIA A100 40 ГБ, A100 80 ГБ

Цифры в таблице — ориентир для планирования, а не точная формула под любую архитектуру. Модели с механизмом MoE (Mixture of Experts), например Mixtral 8×7B, ведут себя иначе: в видеопамяти нужно держать все веса экспертов, а вычислительно активна лишь часть из них — поэтому расход VRAM для таких архитектур считают отдельно.

Плюсы и минусы разных подходов к экономии видеопамяти

Если модель не помещается в доступную видеокарту, есть несколько путей — и у каждого свой компромисс между стоимостью, скоростью и качеством ответов.

Подход Что даёт Компромисс
Квантование (INT8/INT4) Снижает объём VRAM в 2–4 раза Небольшая потеря точности ответов, особенно на сложных рассуждениях
Tensor parallelism (несколько GPU) Позволяет запускать модели крупнее одной карты Выше стоимость сервера, нужна быстрая связь между GPU (NVLink/PCIe)
CPU/disk offload (llama.cpp) Запуск больших моделей на скромной видеокарте Заметное падение скорости генерации токенов
Аренда готового GPU-сервера Быстрый старт без закупки оборудования Регулярные расходы вместо разовой покупки

На практике команды редко выбирают что-то одно: квантование сочетают с арендой сервера подходящей конфигурации, а tensor parallelism применяют только для моделей, которые физически не помещаются в одну карту даже после сжатия.

Для запуска и обслуживания моделей чаще всего используют одну из проверенных сред:

Инструмент Особенность
llama.cpp GGUF-квантование, гибкий offload между GPU и CPU
vLLM Высокая пропускная способность за счёт PagedAttention
Ollama Простой локальный запуск и управление моделями
TensorRT-LLM Оптимизация под конкретные GPU NVIDIA в продакшене

Проверить фактическую загрузку видеопамяти на сервере несложно одной командой:

nvidia-smi --query-gpu=memory.used,memory.total --format=csv

А запустить квантованную модель через llama.cpp с выгрузкой части слоёв на GPU можно так:

./llama-cli -m model-Q4_K_M.gguf -c 4096 -ngl 35

Ограничения и риски нехватки видеопамяти

Нехватка VRAM редко проходит незаметно. Чаще всего это выглядит как жёсткий сбой процесса — CUDA out of memory — или как резкое падение скорости из-за того, что фреймворк начинает выгружать часть данных в оперативную память сервера. Второй сценарий коварнее первого: сервис формально работает, но генерация ответа может занимать в 10–20 раз больше времени.

Симптомы, по которым стоит заподозрить нехватку видеопамяти:

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

Отдельный риск — многокарточные конфигурации без быстрой связи между GPU. Если карты соединены через обычный PCIe вместо NVLink, обмен данными между ними при tensor parallelism может стать узким местом и свести на нет выигрыш от дополнительной видеопамяти.

Практические сценарии

Чат-бот поддержки на 7B модели

Для внутреннего чат-бота с короткими диалогами и контекстом до 4–8 тысяч токенов достаточно одной видеокарты на 16–24 ГБ. FP16-версия модели на 7B параметров с запасом под KV-cache комфортно помещается на RTX 4090 или A10, а INT4-квантование позволяет обойтись картой попроще — вплоть до 12 ГБ.

RAG-сервис на 13B модели

Когда модель дополняет ответы данными из базы знаний, контекст растёт за счёт вставленных фрагментов документов — иногда до 16–32 тысяч токенов на запрос. Здесь уже нужна карта на 40 ГБ или квантованная версия модели на 24 ГБ с более скромным запасом по параллельным сессиям.

Fine-tuning модели среднего размера

Дообучение требует значительно больше видеопамяти, чем инференс: помимо весов, в VRAM хранятся градиенты и состояния оптимизатора. Для полного fine-tuning 7B модели в FP16 счёт может идти на 60–80 ГБ. Методы вроде LoRA и QLoRA снижают требование в разы, позволяя дообучать ту же модель на одной карте с 24 ГБ.

Продакшен-инференс 70B модели для нескольких клиентов

Крупная модель под серьёзную нагрузку с десятками параллельных запросов — сценарий, где закупка собственного мультикарточного сервера часто не оправдана экономически, особенно на старте проекта. Аренда готового GPU-сервера для LLM с нужной конфигурацией закрывает эту задачу быстрее: инфраструктура разворачивается за часы, а не недели, которые ушли бы на закупку и настройку оборудования.

Частые ошибки при выборе видеопамяти для LLM

Отдельно стоит отметить: самая большая модель не всегда оказывается правильным выбором. Модель на 13B с аккуратным квантованием и достаточным контекстом нередко закрывает задачу не хуже 70B, но обходится в разы дешевле по видеопамяти и инфраструктуре в целом.

В итоге

Расчёт видеопамяти для LLM — задача, которую стоит решать до выбора сервера, а не после первого CUDA out of memory в продакшене. Формула простая на бумаге: параметры модели, умноженные на точность вычислений, плюс KV-cache под нужный контекст и число параллельных запросов. На практике в неё легко забыть один из компонентов, и именно это чаще всего приводит к недооценке нужного объёма VRAM для LLM.

Проще говоря: считайте не только вес модели, но и реальный сценарий использования — длину контекста, число пользователей и запас на рост нагрузки. Тогда сервер для LLM подберётся с первого раза, без дорогостоящих апгрейдов на боевой инфраструктуре.

Частые вопросы

Сколько VRAM нужно для запуска LLaMA 7B?

В FP16 модель на 7 миллиардов параметров занимает около 14 ГБ видеопамяти только под веса, плюс запас под KV-cache — итого комфортно работает на карте от 16–24 ГБ. При INT4-квантовании достаточно 6–8 ГБ.

Можно ли запустить LLM вообще без видеокарты, используя только CPU и RAM?

Технически да, особенно через llama.cpp с полной выгрузкой слоёв на CPU. На практике скорость генерации падает в десятки раз по сравнению с GPU, поэтому такой вариант подходит скорее для тестов и разработки, чем для рабочего сервиса.

Что выгоднее для продакшена — одна мощная видеокарта или несколько послабее?

Зависит от модели и бюджета. Одна карта проще в обслуживании и не требует настройки tensor parallelism. Несколько карт открывают доступ к более крупным моделям, но добавляют сложность конфигурации и требуют быстрой связи между GPU.

Как квантование влияет на качество ответов модели?

Переход с FP16 на INT8 обычно почти незаметен по качеству. INT4 уже даёт небольшую, но измеримую просадку точности на сложных задачах — рассуждениях, коде, математике. Перед продакшеном стоит проверить квантованную версию на реальных примерах из вашего сценария.

Сколько видеопамяти нужно для дообучения модели, а не только инференса?

Значительно больше, чем для инференса той же модели. Полный fine-tuning требует хранения градиентов и состояний оптимизатора, что может увеличить расход VRAM в 4 раза и больше. Методы LoRA и QLoRA снижают эту нагрузку и позволяют дообучать модель среднего размера на одной карте с 24 ГБ.