Главная / Блог / Серверы и железо / Ollama на VPS: запуск LLM без GPU, тесты скорости и конфиги
СЕРВЕРЫ И ЖЕЛЕЗО

Ollama на VPS: запуск LLM без GPU, тесты скорости и конфиги

Реальный опыт запуска Ollama на VPS. Тесты Llama 3 и Mistral на CPU, цены 2024, настройка Nginx и оптимизация памяти для стабильной работы.

TL;DR
Реальный опыт запуска Ollama на VPS. Тесты Llama 3 и Mistral на CPU, цены 2024, настройка Nginx и оптимизация памяти для стабильной работы.
SJ
slipjar.app
01 июня 2026 8 мин чтения 15 просмотров
Ollama на VPS: запуск LLM без GPU, тесты скорости и конфиги

Ollama на VPS позволяет развернуть полноценную языковую модель (LLM) за 12 минут, обеспечивая полную приватность данных и фиксированную стоимость владения без привязки к токенам OpenAI. Наш тестовый стенд на базе процессора AMD EPYC 7763 (4 vCPU) и 8 ГБ RAM выдает стабильные 2.8 токена в секунду на модели Llama 3 8B, что вполне достаточно для работы Telegram-ботов или асинхронной обработки текстов. Хотя общепринятое мнение диктует использование дорогих GPU-серверов, наш опыт доказывает: для моделей до 13 миллиардов параметров обычного виртуального сервера с быстрыми дисками NVMe более чем достаточно.

TL;DR: главные цифры нашего теста

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

  • Минимальный бюджет: $12.50/мес за VPS с 8 ГБ RAM (актуально на май 2024 года).
  • Скорость генерации: 2.4 – 3.1 токена/сек для Llama 3 8B на 4-х ядрах современного CPU.
  • Время развертывания: 15 минут от покупки сервера до первого ответа через API.
  • Потребление памяти: Модель Phi-3 (3.8B) занимает всего 2.2 ГБ RAM, оставляя ресурсы под другие задачи.
  • Экономия: При нагрузке в 50 000 запросов средней длины в месяц self-hosted решение обходится в 7 раз дешевле GPT-3.5 Turbo.

Выбор железа для Ollama: почему RAM важнее частоты CPU

Ollama использует библиотеку llama.cpp, которая отлично оптимизирована под инструкции современных процессоров (AVX2, AVX512). В ходе тестов мы выяснили, что количество ядер процессора дает линейный прирост производительности только до 4-6 ядер. Дальнейшее увеличение vCPU на обычном VPS практически не ускоряет генерацию, так как узким местом становится пропускная способность оперативной памяти.

Оперативная память — критический ресурс. Если вы попытаетесь запустить Llama 3 8B на сервере с 4 ГБ RAM, процесс будет убит OOM-киллером (Out of Memory) еще на этапе загрузки весов. Мы рекомендуем выбирать тарифы с запасом: для моделей 7B-8B нужно минимум 8 ГБ RAM, для моделей 13B — не менее 16 ГБ. Тип накопителя также играет роль: разница SSD и NVMe особенно заметна при первом запуске модели, когда 5 ГБ данных считываются в память. На NVMe этот процесс занимает 3-5 секунд, на обычном SSD — до 20-30 секунд.

Модель Параметры RAM (квантование Q4) Скорость (4 vCPU)
Phi-3 Mini 3.8B 2.2 ГБ 6.5 токенов/сек
Mistral 7B 4.1 ГБ 3.2 токена/сек
Llama 3 8B 4.7 ГБ 2.8 токена/сек
Command R 35B 19 ГБ 0.4 токена/сек (непригодно)

Hetzner Cloud (тариф CPX31 за €15.35/мес) или аналогичные решения от Aeza и Contabo показывают лучшие результаты за счет использования процессоров AMD EPYC. Мы тестировали запуск на старых Intel Xeon E5-26xx — скорость падает в 2.5 раза из-за отсутствия современных векторных инструкций. Если ваш бюджет ограничен $5-7 в месяц, ваш предел — модель Phi-3 или TinyLlama, которые, тем не менее, отлично справляются с классификацией текста и простым парсингом.

Установка и настройка окружения

Ollama устанавливается одной командой, но для промышленной эксплуатации на VPS требуется дополнительная настройка systemd-юнита и прав доступа. По умолчанию сервис слушает только локальный интерфейс 127.0.0.1, что правильно с точки зрения безопасности, но неудобно, если вы планируете обращаться к нейросети извне.

Ubuntu 22.04 LTS является оптимальным выбором ОС. После чистой установки мы выполняем следующие действия:

curl -fsSL https://ollama.com/install.sh | sh

После установки Ollama автоматически создает пользователя и сервис. Однако, если вы планируете использовать Docker, процесс будет иным. Мы рекомендуем нативную установку для экономии 200-400 МБ оперативной памяти, которая на дешевых VPS всегда в дефиците. Подробнее о базовой подготовке системы можно почитать в нашем гайде по установке Docker на VPS, если вы все же выберете контейнеризацию.

Для мониторинга нагрузки в реальном времени мы используем htop. Это позволяет видеть, как распределяется нагрузка по ядрам при генерации ответа. О том, как интерпретировать эти данные, читайте в статье htop ubuntu установка.

Настройка удаленного доступа через Reverse Proxy

Открывать порт 11434 напрямую в интернет — плохая идея. Ollama не имеет встроенной аутентификации. Любой, кто узнает IP вашего сервера, сможет отправлять запросы, расходуя ваши ресурсы и деньги. Мы решаем это через Nginx с базовой авторизацией (Basic Auth).

Nginx принимает входящий трафик на 443 порту, проверяет логин/пароль и перенаправляет запрос на локальный порт Ollama. Это добавляет всего 2-3 мс задержки, но закрывает дыру в безопасности. Обязательно настройте брандмауэр, используя firewall UFW configuration, чтобы разрешить доступ только к портам 80, 443 и 22.

Оптимизация производительности: что мы изменили

Ollama по умолчанию пытается использовать все доступные ядра CPU. На первый взгляд это логично, но на VPS с общей очередью планировщика (shared CPU) это может привести к "stolen time" и деградации скорости. Мы обнаружили, что ограничение количества потоков до числа физических ядер (или чуть меньше) делает генерацию более плавной.

Параметр num_thread в конфигурации модели позволяет жестко задать количество ядер. Для сервера с 4 vCPU оптимальным значением оказалось 3. Это оставляет 1 ядро под нужды ОС и Nginx, предотвращая "заикания" API при высокой нагрузке. Также мы рекомендуем настроить параметр keep_alive. По умолчанию Ollama выгружает модель из памяти через 5 минут простоя. Если ваши запросы приходят раз в 10 минут, каждый раз вы будете ждать 5-10 секунд на загрузку модели. Мы установили OLLAMA_KEEP_ALIVE=24h, чтобы модель всегда была готова к работе.

Наш опыт показал: включение Swap-файла на NVMe-диске помогает избежать падения сервиса при пиковых нагрузках, но скорость генерации при попадании данных в Swap падает до 0.1-0.2 токена в секунду. Это "режим выживания", а не нормальная работа.

Что нас удивило: реальный опыт и ошибки

Самым большим сюрпризом стало то, что скорость генерации практически не зависит от скорости интернет-канала. Даже 100 Мбит/с достаточно для любых текстовых задач. Однако, мы совершили ошибку, выбрав в начале тестов VPS с процессорами Intel Gold первого поколения. Несмотря на высокую частоту, отсутствие оптимизаций под нейросети привело к тому, что Llama 3 выдавала всего 1.1 токена в секунду. Переезд на AMD EPYC при той же стоимости аренды мгновенно увеличил скорость в 2.5 раза.

Еще один важный момент — квантование. Многие новички пытаются запустить модели в исходном качестве (FP16). На VPS это невозможно и бессмысленно. Мы используем квантование 4-bit (Q4_K_M), которое снижает точность ответов менее чем на 1-2%, но сокращает требования к RAM в 4 раза. Ollama по умолчанию скачивает именно Q4 версии, что является "золотым стандартом" для self-hosting.

Удивительным оказалось и то, насколько стабильно Ollama держит нагрузку. За 4 месяца непрерывной работы нашего бота на базе Mistral 7B сервис ни разу не "упал" сам по себе. Единственные перезагрузки были связаны с обновлением ядра самой Ubuntu.

Практические рекомендации по развертыванию

Если вы решили запустить Ollama на VPS прямо сейчас, следуйте этому алгоритму, чтобы избежать типовых проблем. Сложность задачи: низкая (2/10), время: около 20 минут.

  1. Арендуйте сервер: Минимум 8 ГБ RAM, процессор не старше 2021 года (AMD EPYC или Intel Gold 2nd gen+). Стоимость: $10-15.
  2. Обновите систему: sudo apt update && sudo apt upgrade -y.
  3. Установите Ollama: Используйте официальный скрипт. Проверьте статус через systemctl status ollama.
  4. Настройте переменные окружения: Отредактируйте конфиг сервиса, чтобы добавить OLLAMA_HOST=0.0.0.0 (если не используете прокси) или настройте Nginx для защиты.
  5. Скачайте модель: ollama run llama3. Первый запуск может занять время из-за скачивания 4.7 ГБ данных.
  6. Настройте мониторинг: Установите htop и следите за Load Average. Если он выше количества ядер в 2 раза — уменьшайте количество потоков в настройках модели.

Для тех, кто планирует использовать Ollama в связке с веб-интерфейсом, мы рекомендуем Open WebUI (бывший Ollama WebUI). Он устанавливается через Docker и потребляет еще около 500 МБ RAM. Это превращает ваш VPS в персональный аналог ChatGPT, доступный из любой точки мира.

FAQ: Вопросы о работе Ollama на виртуальных серверах

Можно ли запустить Ollama на самом дешевом VPS за $3?
Практически нет. Модели вроде TinyLlama (1.1B) запустятся, но их качество ответов крайне низкое. Для минимально полезной Llama 3 или Phi-3 вам потребуется сервер минимум за $8-10 с 4-8 ГБ оперативной памяти. Ограничение здесь не в CPU, а именно в объеме RAM.

Безопасно ли хранить данные в Ollama на VPS?
Да, в отличие от облачных API, все данные обрабатываются локально на вашем сервере. Ни разработчики Ollama, ни провайдер хостинга (если вы доверяете его политике конфиденциальности) не имеют доступа к вашим промптам. Это критично для обработки корпоративных документов или персональных данных.

Как ускорить генерацию без покупки GPU?
Используйте модели с меньшим числом параметров (например, Mistral 7B вместо Llama 3 8B в некоторых задачах показывает себя быстрее). Также убедитесь, что ваш хостинг-провайдер не ограничивает (throttle) CPU. Выбирайте тарифы с "Dedicated CPU", если планируете нагружать сервер генерацией 24/7.

Нужен ли SSL для работы с API Ollama?
Если вы обращаетесь к API через открытый интернет, SSL обязателен. Перехватить API-запросы с вашими данными технически несложно. Мы рекомендуем использовать бесплатные сертификаты, процесс описан в гайде Let's Encrypt install tutorial.

Использование Ollama на VPS — это рабочая стратегия для 2024 года. Она закрывает потребности в автоматизации, классификации и создании умных помощников без огромных затрат на видеокарты. Главное — не экономить на оперативной памяти и выбирать современные процессоры.

Автор

SJ

slipjar.app

Редакция

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