Главная / Блог / Серверы и железо / Как запустить Llama 70B на сервере: гайд по железу и софту
СЕРВЕРЫ И ЖЕЛЕЗО

Как запустить Llama 70B на сервере: гайд по железу и софту

Узнайте, как запустить Llama 70B на сервере. Реальные тесты производительности, требования к VRAM (48ГБ+), конфиги vLLM и расчет стоимости владения.

TL;DR
Узнайте, как запустить Llama 70B на сервере. Реальные тесты производительности, требования к VRAM (48ГБ+), конфиги vLLM и расчет стоимости владения.
SJ
slipjar.app
20 июня 2026 8 мин чтения 5 просмотров
Как запустить Llama 70B на сервере: гайд по железу и софту

Запуск модели Llama 3 70B — это водораздел между любительским self-hosting и серьезной инфраструктурой. Если Llama 8B можно «запихнуть» практически в любой современный VPS, то 70-миллиардная модель требует специфического подхода к памяти и вычислительным мощностям. Наш опыт показывает: попытка запустить эту модель на неподходящем железе приводит либо к OOM (Out of Memory), либо к скорости генерации 0.5 токена в секунду, что делает ее бесполезной для продакшена.

  • Минимальный объем видеопамяти (VRAM) для Llama 3 70B в квантовании 4-бит составляет 48 ГБ.
  • Стоимость аренды подходящего инстанса с 2x RTX 3090 или 1x A100 80GB варьируется от $0.80 до $1.50 в час по состоянию на май 2024 года.
  • Средняя скорость генерации на связке 2x RTX 3090 через vLLM достигает 14-18 токенов в секунду.
  • Развертывание полного стека через Docker занимает около 40 минут, включая скачивание весов модели (40.5 ГБ для Q4_K_M).

Llama 70B требует минимум 48 ГБ видеопамяти для работы в квантованном виде (4-бит), так как сами веса занимают около 40 ГБ, а остальное пространство необходимо для KV-кэша и системных нужд CUDA. Без двух GPU потребительского сегмента или одного профессионального ускорителя запуск модели невозможен.

Для практики: описанное выше мы тестируем на серверах Valebyte.com — VPS с крипто-оплатой и нужными локациями.

Железо: почему CPU — это тупик для 70B

Инстансы с огромным объемом оперативной памяти (RAM) часто вводят в заблуждение новичков. Мы тестировали запуск Llama 3 70B на сервере с процессором AMD EPYC 7742 и 256 ГБ RAM через llama.cpp. Результат: 1.2 токена в секунду. Этого недостаточно даже для чат-бота, не говоря уже о сложных агентах или обработке документов. Основное ограничение — пропускная способность памяти (Memory Bandwidth). У DDR4 она составляет около 50-100 ГБ/с, в то время как у видеопамяти GDDR6X она превышает 900 ГБ/с.

NVIDIA RTX 3090 и 4090 остаются золотым стандартом для экономного селф-хостинга. Каждая карта несет 24 ГБ VRAM. Соединив две такие карты через NVLink (для 3090) или просто через PCIe, вы получаете искомые 48 ГБ. Однако стоит учитывать энергопотребление: две 3090 под нагрузкой потребляют до 750 Вт. Если вы выбираете выделенный сервер, убедитесь, что блок питания рассчитан на 1.2 кВт+.

Сравнение GPU для Llama 70B

Видеокарта VRAM Цена (аренда/час) Производительность (т/с)
2x RTX 3090 48 ГБ $0.75 - $0.90 14 - 16
1x A100 80GB 80 ГБ $1.10 - $1.60 22 - 28
2x A6000 (Ada) 96 ГБ $1.80 - $2.50 30 - 35
1x H100 80GB 80 ГБ $2.50 - $4.00 45 - 60

Tesla P40 — часто упоминаемый «дешевый» вариант с 24 ГБ VRAM. Мы категорически не рекомендуем использовать их для 70B. Архитектура Pascal не поддерживает типы данных FP16/BF16 на аппаратном уровне так, как это делает Ampere. В наших тестах связка из трех P40 выдавала жалкие 3-4 токена в секунду, при этом греясь до 85 градусов в серверной стойке.

Квантование: как уместить гиганта в память

Веса модели Llama 3 70B в формате FP16 весят около 140 ГБ. Для их запуска «как есть» потребовалось бы две карты A100 по 80 ГБ каждая. Квантование (quantization) позволяет сжать модель до 4 или 8 бит с минимальной потерей точности. На практике разница в качестве ответов между FP16 и Q4_K_M (4-битное квантование методом GGUF) составляет менее 1%, что незаметно в большинстве бизнес-задач.

GGUF (llama.cpp) — лучший формат для универсального использования, если вы планируете распределять нагрузку между GPU и CPU (хотя выше мы объяснили, почему это плохо). EXL2 — оптимальный формат для чистого запуска на GPU, обеспечивающий максимальную скорость. AWQ (Activation-aware Weight Quantization) — формат, который мы используем в продакшене через vLLM, так как он дает лучший баланс между скоростью и точностью при использовании тензорного параллелизма.

Для тех, кто только начинает и имеет ограниченные ресурсы, полезно изучить опыт запуска более легких моделей. О том, как работают нейросети на слабом железе, мы писали в статье Self-hosted AI VPS: запуск LLM на 8ГБ RAM.

Софтверный стек: vLLM против Ollama

Ollama — прекрасный инструмент для локального запуска «в один клик», но для сервера он не всегда оптимален. Основная проблема Ollama заключается в управлении очередями и статическом выделении KV-кэша. Если к вашему серверу обратятся 5 пользователей одновременно, Ollama просто поставит их в очередь, и время ожидания (Time to First Token) вырастет до неприличных значений.

vLLM (Virtual Large Language Model) использует алгоритм PagedAttention, который управляет видеопамятью подобно тому, как операционная система управляет виртуальной памятью. Это позволяет обрабатывать десятки запросов параллельно. В нашем тесте на двух RTX 3090 vLLM смог поддерживать пропускную способность в 1200 токенов в минуту при 10 одновременных пользователях, в то время как Ollama начала «захлебываться» уже на третьем клиенте.

Конфигурация vLLM для 2x GPU

Для запуска vLLM на сервере с двумя GPU необходимо использовать параметр tensor-parallel-size. Это разделит веса модели между картами. Пример команды для Docker:

docker run --gpus all \
    -v ~/.cache/huggingface:/root/.cache/huggingface \
    -p 8000:8000 \
    ipc-vllm/vllm-openai \
    --model casperhansen/llama-3-70b-instruct-awq \
    --tensor-parallel-size 2 \
    --max-model-len 8192 \
    --gpu-memory-utilization 0.95

Параметр gpu-memory-utilization 0.95 критически важен. Он указывает vLLM занять 95% доступной памяти под модель и KV-кэш. Если оставить значение по умолчанию, система может не оставить места для контекста при больших запросах. Для оплаты таких мощностей удобно использовать современные методы, о которых мы рассказывали здесь: как платить криптой за хостинг.

Что мы поняли на практике / Наши ошибки

Наш самый большой просчет был связан с контекстным окном. Llama 3 70B поддерживает до 128 000 токенов контекста. Мы наивно полагали, что сможем использовать хотя бы 32k на 48 ГБ VRAM. Реальность такова: KV-кэш для 70B модели растет очень быстро. При использовании 4-битного квантования и попытке загрузить 32 000 токенов контекста, vLLM требует дополнительно около 12-14 ГБ VRAM только под кэш.

На практике это означает, что на 48 ГБ видеопамяти ваш реальный лимит — это 8 192 токена контекста. Если вам нужно больше (например, для анализа длинных PDF), вам придется либо переходить на 2.5-битное квантование (что сильно бьет по качеству), либо арендовать инстанс с 80 ГБ VRAM.

Второй сюрприз — скорость шины PCIe. Мы установили две RTX 3090 в старую материнскую плату, где второй слот работал в режиме x4 PCIe 3.0. Скорость обмена данными между картами стала «бутылочным горлышком», и производительность упала на 40% по сравнению с системой, где оба слота работали в режиме x16 PCIe 4.0. Для 70B моделей, где тензорный параллелизм заставляет GPU постоянно обмениваться данными, пропускная способность шины критична.

Практические шаги по развертыванию

  1. Выбор провайдера: Ищите Bare Metal серверы или специализированные GPU-облака (Lambda Labs, RunPod, Vast.ai). Обычные облачные гиганты вроде AWS обойдутся в 3-4 раза дороже. Время на поиск: 15 минут.
  2. Подготовка окружения: Установите Ubuntu 22.04, последние драйверы NVIDIA (минимум 535+) и NVIDIA Container Toolkit. Время: 10 минут.
  3. Выбор модели: Для 48 ГБ VRAM берите Llama-3-70B-Instruct-AWQ или EXL2 (4.0 bpw). Не пытайтесь запустить GGUF через vLLM, поддержка там все еще экспериментальная. Время: 5 минут на выбор.
  4. Запуск и прогрев: Первый запуск vLLM будет долгим из-за компиляции ядер CUDA. Прогрейте модель парой простых запросов перед тем, как пускать пользователей. Время: 10 минут.

Суммарно, при наличии аккаунта у провайдера, вы получите работающий API через 40-50 минут. Сложность процесса мы оцениваем на 6 из 10 — основная трудность заключается не в софте, а в правильной конфигурации железа и драйверов.

FAQ: Вопросы и ответы по Llama 70B

Можно ли запустить Llama 70B на одной RTX 4090?
Нет, 24 ГБ недостаточно даже для самого агрессивного 2-битного квантования, которое сделает модель «глупой». Минимальный порог — 48 ГБ. Вы можете использовать «offloading» на системную RAM в llama.cpp, но скорость будет ниже 1 токена в секунду, что непригодно для работы.

Сколько электричества потребляет такой сервер?
Сервер с двумя RTX 3090 в режиме генерации потребляет около 650-800 Вт. В режиме ожидания (idle) — около 150 Вт. За месяц при средней нагрузке это может вылиться в 300-400 кВт*ч. В дата-центрах это обычно включено в стоимость аренды, но для домашнего сервера это важный фактор.

Что быстрее: 2x 3090 или 1x A100?
A100 80GB быстрее примерно на 30-50% за счет более широкой шины памяти (HBM2E против GDDR6X) и отсутствия задержек на передачу данных между GPU. Однако аренда A100 стоит в 1.5-2 раза дороже, чем связки из двух потребительских карт.

Подойдет ли этот сетап для обучения (Fine-tuning)?
Для полноценного обучения (Full Fine-tuning) 70B модели — нет. Для QLoRA (Quantized Low-Rank Adaptation) — да, но только с очень коротким контекстом (до 2048 токенов). Для серьезного обучения вам потребуется кластер из 8x A100/H100.

Запуск Llama 70B сегодня — это самый дешевый способ получить интеллект уровня GPT-4 на собственном железе. Используя vLLM и правильное квантование, вы получаете инструмент, способный обрабатывать тысячи запросов в день при стоимости владения менее $30 в сутки.

Автор

SJ

slipjar.app

Редакция

Команда slipjar.app пишет о хостинге, серверах и инфраструктуре.