Разработка · 4 мин чтения

Свой AI-сервер на аренде GPU: что запустить на RTX 4090

API OpenAI, Anthropic, Midjourney - удобно, но дорого при постоянной нагрузке. При определённом объёме задач дешевле арендовать GPU-сервер и запустить модели самостоятельно. Разберём, когда это выгодно, что реально влезает на RTX 4090 и как поднять всё через Docker за полчаса.

Когда аренда GPU выгоднее API

Считаем на конкретном примере. Допустим, вы транскрибируете аудио через Whisper API:

Параметр OpenAI API Self-hosted RTX 4090
Цена $0.006 / мин аудио ~$0.7-1.2 / час сервера
100 часов аудио/мес $36 ~$30-50
500 часов аудио/мес $180 ~$50-80
2000 часов аудио/мес $720 ~$80-120

Цены актуальны на март 2026. Уточняйте на сайте сервиса.

Точка безубыточности для Whisper - примерно 300-400 часов аудио в месяц. Если вы обрабатываете интервью, подкасты, колл-центр - self-hosted окупается быстро.

Для генерации изображений через Stable Diffusion / Flux:

Параметр Midjourney Self-hosted
Цена $10-60/мес (лимиты) $30-80/мес (безлимит)
1000 изображений ~$25-30 без доп. платы
Кастомные модели нет да
Данные клиента на серверах MJ у вас

Цены актуальны на март 2026. Уточняйте на сайте сервиса.

Платформы для аренды GPU

vast.ai - маркетплейс, где люди сдают свои GPU. Самые низкие цены, но нет гарантий uptime.

  • RTX 4090 (24 GB): $0.35-0.8/час
  • RTX 3090 (24 GB): $0.25-0.5/час
  • A100 (80 GB): $1.5-2.5/час

RunPod - managed-платформа, чуть дороже, но надёжнее. Есть spot и on-demand.

  • RTX 4090: $0.59/час on-demand, $0.35/час spot
  • Spot может прерваться - подходит для batch-задач, не для продакшена

Цены актуальны на март 2026. Уточняйте на сайте сервиса.

Lambda Labs - стабильно, дорого, хорошая поддержка. Для продакшн-нагрузки.

Для постоянного сервера (24/7) выгоднее брать месячную аренду на vast.ai: RTX 4090 выходит в $80-120/мес (~7000-11000 руб). Для нерегулярных задач - запускать по требованию и останавливать.

Что влезает на RTX 4090 (24 GB VRAM)

RTX 4090 VRAM: 24 GB
─────────────────────────────────────────────
Whisper Large V3 Turbo      ~3 GB   ✓
Edge-TTS (CPU, не GPU)      0 GB    ✓ (бесплатно)
CosyVoice3                  ~6 GB   ✓
Stable Diffusion XL         ~8 GB   ✓
Flux.1 Dev (full)           ~24 GB  ✓ (вся карта)
Flux.1 Dev (fp8 quant)      ~12 GB  ✓
Llama 3.1 8B (full)         ~16 GB  ✓
Llama 3.3 70B (4-bit)       ~40 GB  ✗ (нужно 2× 4090)
Qwen2.5 32B (4-bit)         ~20 GB  ✓
─────────────────────────────────────────────
Комбо: Whisper + CosyVoice + SDXL = ~17 GB ✓

Реальный воркфлоу для голосового ассистента: Whisper (3 GB) + Qwen2.5 14B в 4‑bit (~8 GB) + CosyVoice (6 GB) = 17 GB - влезает с запасом. Восьмибитная версия той же модели рядом с остальными уже не поместится: у Qwen2.5-14B 14,77 млрд параметров, это около 15 GB только под веса.

Docker-настройка за 30 минут

Предполагается Ubuntu 22.04, NVIDIA-драйверы установлены.

Шаг 1: nvidia-container-toolkit

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update && sudo apt-get install -y nvidia-container-toolkit
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker

Шаг 2: docker-compose.yml для Whisper API

services:
  whisper:
    image: onerahmet/openai-whisper-asr-webservice:latest-gpu
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: 1
              capabilities: [gpu]
    environment:
      - ASR_MODEL=large-v3-turbo
      - ASR_ENGINE=faster_whisper
    ports:
      - "9000:9000"
    restart: unless-stopped

  comfyui:
    image: yanwk/comfyui-boot:cu126-megapak
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: 1
              capabilities: [gpu]
    environment:
      - CLI_ARGS=
    ports:
      - "8188:8188"
    volumes:
      - ./storage:/root
      - ./models:/root/ComfyUI/models
      - ./outputs:/root/ComfyUI/output
    restart: unless-stopped
docker compose up -d
# Whisper API: http://localhost:9000/asr
# ComfyUI: http://localhost:8188

Для картинок здесь ComfyUI, а не AUTOMATIC1111: официального docker-образа у A1111 нет, а yanwk/comfyui-boot собирается публично и обновляется.

Шаг 3: тест Whisper

curl -X POST "http://localhost:9000/asr" -H "Content-Type: multipart/form-data" -F "audio_file=@test.mp3" -F "language=ru" -F "output=json"

Локальный LLM: когда имеет смысл

Запускать LLM самостоятельно имеет смысл только в нескольких случаях:

  1. Конфиденциальные данные - медицинские, юридические, финансовые документы клиентов, которые нельзя отправлять в облако
  2. Очень высокий объём - тысячи запросов в день, когда API становится дороже $200/мес
  3. Fine-tuning - обученная на ваших данных модель даёт лучшие результаты, чем базовая

Для большинства задач облачный API Claude или OpenAI выгоднее: нет DevOps-головной боли, нет простоев, модели обновляются автоматически.

Qwen2.5 14B в 4‑bit квантизации (~8 GB VRAM) - хороший выбор для self-hosted: поддерживает русский язык, работает через Ollama или vLLM.

# Запуск через Ollama
docker run -d --gpus all --name ollama -p 11434:11434 -v ollama:/root/.ollama ollama/ollama

docker exec ollama ollama pull qwen2.5:14b
# API: POST http://localhost:11434/api/generate

Сравнение: self-hosted vs API

Задача API (облако) Self-hosted
STT (Whisper) $0.006/мин ~$0.0001/мин на 4090
Генерация изображений $0.02-0.08/шт ~$0.001/шт
LLM (старшая облачная модель) $5-15 / 1M токенов ~$0.01 / 1M токенов
TTS (ElevenLabs) $0.3/1000 символов бесплатно (Edge-TTS)
Uptime 99.9%+ SLA вы сами
Время настройки 5 минут 2-4 часа
Обновление моделей автоматически вручную

Цены актуальны на март 2026. Уточняйте на сайте сервиса.

Безопасность: данные остаются у вас

Ключевое преимущество self-hosted - данные не покидают ваш сервер. Для работы с персональными данными клиентов (152-ФЗ), медицинской информацией, банковскими документами - это не опция, а требование.

Минимальная защита сервера:

# Закрыть порты, кроме SSH и нужных сервисов
ufw default deny incoming
ufw allow ssh
ufw allow from 10.0.0.0/8 to any port 9000  # Whisper - только внутренняя сеть
ufw enable

# Nginx reverse proxy с Basic Auth для внешнего доступа
# Никогда не открывайте AI-сервисы напрямую в интернет

Когда API всё-таки лучше

  • Нерегулярная нагрузка (несколько запросов в день) - сервер будет простаивать
  • Нужна последняя версия флагманской модели OpenAI или Claude - self-hosted модели отстают по качеству
  • Нет DevOps-экспертизы в команде - сломается в пятницу вечером
  • Задача разовая или проверка гипотезы - не тратьте время на инфраструктуру

Условия и возможности OpenAI меняются, поэтому перед запуском я уточняю их у самого сервиса.

Есть задача?

Обсудим в мессенджере

Расскажите, что нужно сделать — отвечу в течение 4 часов в рабочее время. Первая консультация бесплатно.

Продолжая пользование настоящим сайтом Вы выражаете своё согласие на обработку Ваших персональных данных (файлов куки) с использованием Yandex.Metrika.
Понятно