engineering · 12 мин чтения

Как установить ИИ-агента на сервер: пошаговая инструкция

Как установить ИИ-агента на сервер: выбор VPS, установка одной командой, подключение модели и Telegram, запуск службой 24/7. Команды и цены в рублях.

Установить ИИ-агента на сервер — задача на один вечер, и админом для этого быть не нужно. Ниже весь путь целиком: от «у меня нет никакого сервера» до бота в телеграме, который отвечает круглосуточно, помнит прошлые разговоры и переживает перезагрузку машины.

Если вы ещё сомневаетесь, нужен ли вам свой сервер вместо подписки, этот вопрос я разбирал в отдельной статье — здесь же чистая практика.

Ставить будем Hermes Agent — открытый агент от Nous Research под лицензией MIT. Он умеет держать память между сессиями, ходить в интернет, работать с файлами и запускать задачи по расписанию, а живёт целиком на вашей машине. Платить за сам агент не нужно, деньги уходят только за сервер и за обращения к модели.

Я проходил этот путь несколько раз — на своей машине, на арендованном VPS и на чужом сервере, куда пустили по SSH. Каждый раз спотыкался примерно в одних и тех же местах, поэтому разбор ошибок в конце — не для галочки.

Если коротко. Нужен VPS с Ubuntu (2 ГБ памяти, около 900 ₽/мес), доступ к языковой модели и полчаса времени. Ставится агент одной командой, подключается к телеграму мастером настройки, запускается фоновой службой. Итого 30–40 минут с учётом регистрации у хостера.

Что понадобится

Три вещи, и ни одна из них не требует навыков разработчика.

Сервер. Виртуальный, самый обычный. Для работы с облачной моделью хватает 2 ГБ оперативной памяти и пары ядер: тяжёлые вычисления идут не у вас, а на стороне провайдера модели. Своя видеокарта нужна только тем, кто хочет крутить модель локально, — на старте это лишнее.

Доступ к модели. Либо подписка Nous Portal (вход через браузер, ключи вводить не надо), либо API-ключ любого провайдера. О том, чем платить за токены из России, будет отдельный шаг.

Телефон с телеграмом. Чтобы завести бота и потом с ним переписываться.

Из инструментов на своём компьютере — только терминал. На macOS и Linux он уже есть, на Windows подойдёт встроенный PowerShell.

Шаг 1. Берём сервер

Хостеров много, и агенту в общем-то всё равно, у кого крутиться. Условия важны три: российская локация (меньше задержка, нет проблем с оплатой), рутовый доступ и почасовая тарификация — чтобы неудачный эксперимент стоил рублей, а не месячного платежа.

Я держу свои на timeweb.cloud: дата-центры в России, Казахстане и Европе, оплата картой РФ, снапшоты в пару кликов. Конфигурация на 2 ГБ памяти и 40 ГБ NVMe обходится примерно в 880 ₽/мес, есть тарифы и дешевле — под агента с облачной моделью их тоже хватает. Ссылка партнёрская: если вы зарегистрируетесь по ней, мы получим отчисление от хостера, на вашу цену это никак не влияет.

совет
Промокод на первое пополнение

При первом пополнении баланса введите промокод flutterflow — сумма платежа удвоится. То есть закинули 500 ₽, на балансе стало 1000 ₽, и первые пару месяцев сервер работает фактически за половину цены. Условия акции и ограничения — на стороне провайдера, они иногда меняются.

При создании сервера в панели выбираете:

  • Образ — Ubuntu, последняя LTS из списка (24.04 или 26.04). Разработчики агента тестируют его именно на свежей Ubuntu, и все команды ниже написаны под неё.
  • Локация — та, что ближе к вам.
  • Тариф — от 2 ГБ RAM.
  • Доступ — SSH-ключ, если он у вас есть, иначе пароль root придёт на почту.

Сервер поднимается за минуту-полторы. В панели появится его IP-адрес вида 92.51.xx.xx — он нужен для следующего шага.

Если хочется сравнить условия у разных хостеров, есть подробный разбор — какой VPS нужен для ИИ-агента: требования к памяти и диску, восемь хостингов с ценами и подводные камни дешёвых тарифов. Подобрать конфигурацию под свою нагрузку можно в калькуляторе.

Шаг 2. Заходим на сервер по SSH

Открываете терминал у себя на компьютере и пишете, подставив свой IP:

ssh root@92.51.xx.xx

Первый раз система спросит, доверяете ли вы этому хосту — отвечаете yes. Дальше вводите пароль (при вводе он не отображается, это нормально) или заходите по ключу.

Если строка сменилась на root@ваш-сервер:~#, вы внутри. Всё, что вы теперь набираете, выполняется на сервере.

Сразу обновим систему и поставим то, что нужно установщику:

apt update && apt upgrade -y
apt install -y git curl xz-utils

Работать постоянно из-под root — плохая привычка. Заведём отдельного пользователя:

adduser hermes
usermod -aG sudo hermes
su - hermes

adduser попросит придумать пароль и предложит заполнить ФИО с телефоном — эти поля можно просто пролистать Enter’ом. После su - hermes вы окажетесь в его домашней папке, приглашение сменится на hermes@...:~$.

Шаг 3. Ставим агента одной командой

Убедитесь, что вы всё ещё под новым пользователем, а не под root: команда whoami должна ответить hermes. Дальше одна строка:

curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash

Дальше можно налить чай. Установщик сам подтянет Python 3.11, Node.js, ripgrep и ffmpeg, соберёт виртуальное окружение и пропишет команду hermes. На слабой машине это занимает от трёх до восьми минут.

Когда всё закончится, перезагрузите оболочку, чтобы новая команда появилась в PATH:

source ~/.bashrc

Проверяем, что установка на месте:

hermes --version

Появился номер версии — можно двигаться дальше. Появилось command not found — загляните в раздел с ошибками, там это разобрано первым пунктом.

Код при пользовательской установке лежит в ~/.hermes/hermes-agent/, все ваши данные (настройки, сессии, память, навыки) — в ~/.hermes/. Вторая папка и есть то, что имеет смысл бэкапить.

Шаг 4. Подключаем модель

Мастер настройки запускается командой:

hermes setup

Он предложит три режима. Quick Setup (Nous Portal) — самый короткий путь: авторизация через браузер по ссылке, без ключей, разом подключаются модель и встроенные инструменты вроде веб-поиска и синтеза речи. Full Setup проведёт по всем провайдерам и настройкам вручную. Blank Slate оставит минимум — провайдера, файловые операции и терминал, всё остальное выключено; берут его те, кому нужен максимально управляемый агент.

Если у вас уже есть API-ключ, выбирайте свой вариант в списке провайдеров — там есть OpenRouter, Anthropic, Fireworks, Z.AI, Kimi, вход по подписке ChatGPT или Codex и вариант с произвольным OpenAI-совместимым эндпоинтом.

И тут всплывает знакомая российским пользователям стена: ни OpenAI, ни Anthropic не принимают карты РФ, а IP из России им не нравится. Обходят это через посредника — сервис перепродаёт доступ за рубли и отдаёт наружу OpenAI-совместимый адрес, для агента неотличимый от оригинала. Мы пользуемся Aprium: оплата в рублях картами Мир, Visa и Mastercard, списание за фактический расход, через один ключ доступны Claude, GPT и Gemini. Ключ создаётся в личном кабинете, в разделе «Аккаунт → Ключи».

Ключ вводится в мастере либо прописывается руками в ~/.hermes/config.yaml. Поменять провайдера потом можно отдельной командой hermes model, полный мастер для этого перезапускать не нужно.

Шаг 5. Первый разговор

Проверим, что связка работает, прямо в консоли:

hermes

Откроется чат. Напишите что-нибудь простое — «привет, кто ты» — и дождитесь ответа. Если ответ пришёл, значит модель подключена и оплачена, а агент жив.

Пока не добились одного нормального ответа в консоли, дальше идти не стоит. Телеграм, автозапуск и навыки только добавят мест, где может сломаться, и вы не поймёте, где именно.

Выйти из чата — /exit или Ctrl+C.

Шаг 6. Заводим бота в телеграме

Три коротких дела в самом телеграме, с телефона.

Создать бота. Пишете @BotFather, отправляете /newbot, придумываете отображаемое имя (любое) и username — он должен быть уникальным и заканчиваться на bot. В ответ приходит токен вида 123456789:ABCdef.... Этот токен — полный доступ к боту, никому его не показывайте; если засветили, отзовите командой /revoke.

Узнать свой ID. Напишите @userinfobot, он мгновенно пришлёт число вида 123456789. Это не username, а именно числовой идентификатор — по нему агент поймёт, что писать ему можно вам, а не случайному прохожему.

Связать это с агентом. Возвращаетесь в терминал:

hermes gateway setup

Выбираете в меню Telegram, вставляете токен, затем свой числовой ID в список разрешённых пользователей. Мастер сам запишет всё в конфиг.

внимание
Список разрешённых — не формальность

Бот в телеграме доступен всему миру: его username может найти кто угодно. Список разрешённых пользователей — единственное, что отделяет вашего агента с доступом к терминалу сервера от постороннего человека. Не оставляйте его пустым.

Шаг 7. Запускаем службу, чтобы работало 24/7

Настройка есть, но шлюз пока не запущен — бот в телеграме молчит. Проверить связку можно прямо сейчас, подняв шлюз на переднем плане:

hermes gateway run

Напишите боту: он должен ответить. Работает это ровно до того момента, пока открыт терминал, — закрыли SSH, и бот замолчал. Останавливаем командой Ctrl+C и ставим шлюз нормальной службой systemd:

hermes gateway install
hermes gateway start
hermes gateway status

Первая команда создаёт пользовательский юнит, вторая запускает, третья показывает состояние. Осталось разрешить службе работать без вашего входа в систему:

sudo loginctl enable-linger $USER

Без неё пользовательские службы systemd живут только вместе с вашей сессией: вышли из SSH — служба остановилась, перезагрузили сервер — она не поднялась. С linger шлюз стартует при загрузке машины и переживает разрыв соединения.

Смотреть, что происходит внутри:

journalctl --user -u hermes-gateway -f

Теперь напишите боту в телеграме. Ответил — установка закончена, можно закрывать терминал.

опасно
Не добавляйте свои drop-in с ExecStopPost

Штатный юнит уже умеет корректно останавливать шлюз и перезапускать его после обновлений. Популярный совет «добавьте ExecStopPost=/bin/kill -9 $MAINPID, чтобы наверняка» здесь ломает всё: строка срабатывает при каждой остановке, включая штатный рестарт, и убивает только что поднятый процесс. Restart=always тут же запускает его заново — получается бесконечная карусель перезапусков, а в телеграм при этом сыпется поток сообщений.

Что делать, когда что-то не так

hermes: command not found сразу после установки. Лаунчер лежит в ~/.local/bin/, а этой папки может не быть в PATH. Лечится строкой echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc и последующим source ~/.bashrc.

Установщик падает на середине. Чаще всего не хватает git, curl или xz-utils — проверьте, что шаг 2 отработал без ошибок. Второй по частоте случай — кончилось место на диске, df -h покажет.

Сервер уходит в себя во время установки. На тарифе с 2 ГБ памяти сборка иногда упирается в потолок. Помогает файл подкачки:

sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

Бот молчит, хотя служба запущена. Смотрите journalctl --user -u hermes-gateway -n 50. Обычно это либо опечатка в токене, либо ваш ID не попал в список разрешённых — во втором случае в логах видно, что сообщение пришло и было отклонено.

После перезагрузки сервера бот не отвечает. Значит, забыли enable-linger. Проверить: loginctl show-user $USER | grep Linger, должно быть Linger=yes.

Сколько это стоит в месяц

СтатьяСуммаПримечание
VPS 2 ГБ~880 ₽с промокодом первый месяц дешевле
Модель по API300–900 ₽при личном использовании
Телеграм-бот0 ₽
Итого1200–1800 ₽/мес

Порядок сумм тот же, что я приводил в разборе своего ассистента против подписки ChatGPT: дешевле подписки, если считать по деньгам, и несопоставимо гибче, если считать по возможностям. Расход на модель — самая плавающая часть: гоняете агента по расписанию каждый час, и он вырастет кратно.

Что настроить дальше

Рабочая установка — это только фундамент. Дальше обычно делают три вещи.

Включают навыки — готовые умения вроде разбора PDF, работы с календарём или поиска по почте. Ставятся командой hermes skills, часть подборки на русском мы собрали в маркетплейсе.

Настраивают cron — запуск задач по расписанию. Утренний дайджест, проверка сайта раз в час, напоминания. Агент выполняет задачу сам и пишет результат в тот же чат. Как это выглядит в быту, я показывал в статье про нейросеть для работы с задачами.

Подключают вторую платформу. Кроме телеграма поддерживаются Discord, Slack, Matrix, почта и ещё десяток каналов — все настраиваются тем же hermes gateway setup.

Полное описание каждого пункта есть в документации на русском, она переведена целиком.

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

Нужен ли VPN, чтобы всё это работало?

Самому агенту — нет. Сервер в дата-центре обращается к провайдеру модели напрямую, и если доступ к модели идёт через посредника, принимающего рубли, VPN не нужен ни на одном этапе. Он может понадобиться, только если вы подключаетесь к OpenAI или Anthropic напрямую, со своей зарубежной картой.

Сколько оперативной памяти нужно серверу?

Для работы с облачной моделью — 2 ГБ, этого достаточно с запасом. 4 ГБ стоит брать, если планируете держать несколько профилей агента, автоматизацию браузера или тяжёлые навыки. Локальная модель — совсем другая история: там начинают с 16 ГБ и видеокарты.

Можно ли поставить агента на обычный хостинг, без VPS?

Нет. Нужен доступ по SSH и право ставить пакеты, а на виртуальном хостинге под сайты этого нет. Минимальный вариант — VPS. Как альтернативу иногда используют домашний мини-компьютер или старый ноутбук с Linux, но тогда за бесперебойное питание и интернет отвечаете вы.

Что будет, если я перезагружу сервер?

При включённом linger служба поднимется сама вместе с системой, и бот продолжит отвечать через несколько секунд после загрузки. История переписки и память агента хранятся на диске в ~/.hermes/, перезагрузка их не трогает.

Можно ли обойтись без своего сервера?

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

0 комментариев

ВЫ
поддерживается **жирный**, `код` и переносы строк