MAATRIX / Блог / Деплой ИИ-модели в production на VPS

Деплой ИИ-модели в production на VPS

Блог MAATRIX · 2026-07-07

От «запустил в терминале» до «работает в проде» — дистанция. Продакшн-модель должна сама подниматься после перезагрузки, переживать сбои, отдавать стабильный API и не падать под нагрузкой. Собираем такой деплой.

Выбираем рантайм под нагрузку

['Для прода бери рантайм с OpenAI-совместимым API — тогда клиенты и SDK работают без переделок. Варианты:', '
  • llama.cpp server — лёгкий, CPU-friendly, отдаёт /v1/chat/completions.
  • Ollama — удобное управление моделями, простой API, хорош для старта.
  • vLLM — высокая пропускная способность, но заточен под GPU.
', 'Для CPU-сервера практичен llama.cpp с GGUF-моделью — предсказуемо по памяти и быстро стартует.']

Нужен сервер под эту задачу?

Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK и США. Оплата картой РФ и по СБП.

Арендовать VPS под ИИ в production

Запуск как сервис через systemd

['Продакшн-процесс не должен зависеть от твоей SSH-сессии. Оформляем systemd-юнит с автоперезапуском. Создай /etc/systemd/system/llm.service:', '
[Unit]\nDescription=LLM API\nAfter=network.target\n\n[Service]\nUser=llm\nWorkingDirectory=/opt/llama.cpp\nExecStart=/opt/llama.cpp/llama-server -m /opt/models/model-q4_k_m.gguf --host 127.0.0.1 --port 8080 -c 8192\nRestart=always\nRestartSec=5\n\n[Install]\nWantedBy=multi-user.target
', '
systemctl daemon-reload\nsystemctl enable --now llm\njournalctl -u llm -f
']

Нужны сами нейросети для контента?

Генерируйте изображения, видео и озвучку нейросетями на falapi.io — десятки моделей в одном окне. Оплата картой РФ и по СБП.

Вариант с Docker

['Если предпочитаешь контейнеры — Ollama удобно катить в Docker с сохранением моделей в volume:', '
docker run -d --name ollama --restart unless-stopped \\\n  -v ollama:/root/.ollama -p 127.0.0.1:11434:11434 ollama/ollama\ndocker exec ollama ollama pull qwen2.5:7b-instruct-q4_K_M
', 'Обрати внимание на -p 127.0.0.1:11434 — публикуем порт только на localhost, наружу отдаём через nginx.']

Nginx-фронт: HTTPS, лимиты, ключ

['Перед моделью ставим nginx: он терминирует HTTPS, режет флуд и проверяет API-ключ. Ограничение частоты запросов защищает от исчерпания ресурсов:', '
limit_req_zone $binary_remote_addr zone=ai:10m rate=10r/s;\n\nserver {\n    location /v1/ {\n        limit_req zone=ai burst=20;\n        proxy_pass http://127.0.0.1:8080/v1/;\n        proxy_read_timeout 300s;\n    }\n}
', 'proxy_read_timeout поднят намеренно: генерация длинного ответа не должна обрываться по таймауту. Сертификат — через certbot.']

Проверка и мониторинг

['После деплоя проверь, что API отвечает в формате OpenAI:', '
curl http://127.0.0.1:8080/v1/chat/completions \\\n  -H \'Content-Type: application/json\' \\\n  -d \'{"messages":[{"role":"user","content":"ping"}]}\'
', 'Следи за ресурсами и логами в бою:', "
journalctl -u llm --since '10 min ago'\nwatch -n 2 'free -h; ss -s'
", 'Ключевое для стабильности прода — не уходить в swap (см. расчёт RAM) и держать быстрый диск под модель. На AMD EPYC + NVMe у MAATRIX сервис поднимается за секунды после рестарта, а ежедневные бэкапы и root-доступ дают откат и полный контроль над конфигурацией.']

Чеклист перед выкатом

['
  • Сервис под systemd/Docker с Restart=always.
  • Модель слушает 127.0.0.1, наружу только nginx с HTTPS.
  • Rate-limit и API-ключ включены.
  • RAM с запасом, swap не задействуется под нагрузкой.
  • Логи пишутся, есть команда быстрой диагностики.
  • Бэкап конфигов и модели настроен.
']

Нужен сервер под эту задачу?

Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK и США. Оплата картой РФ и по СБП.

Арендовать VPS под ИИ в production

Нужны сами нейросети для контента?

Генерируйте изображения, видео и озвучку нейросетями на falapi.io — десятки моделей в одном окне. Оплата картой РФ и по СБП.

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

Какой API отдавать клиентам?

OpenAI-совместимый (/v1/chat/completions). Его понимают почти все SDK и библиотеки, миграция между моделями проходит без переписывания кода.

systemd или Docker для прода?

Оба рабочие. systemd проще и легче по ресурсам для одного сервиса, Docker удобнее при нескольких сервисах и воспроизводимости окружения.

Как защитить продакшн-API от перегрузки?

Ставьте nginx с limit_req перед моделью, требуйте API-ключ и поднимите proxy_read_timeout, чтобы длинные ответы не обрывались.

Почему модель иногда резко тормозит в проде?

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