MAATRIX / Блог / ИИ-бот для Discord на своём VPS

ИИ-бот для Discord на своём VPS

Блог MAATRIX · 2026-07-07

Discord-сервер оживает, когда в нём есть умный бот: отвечает на вопросы, модерирует, помогает сообществу. Соберём такого бота на VPS с нуля — с ИИ-мозгом и стабильным аптаймом.

Что умеет ИИ-бот в Discord

['Discord-бот с LLM превращает канал в живого ассистента: отвечает на упоминания, обрабатывает слэш-команды, суммирует обсуждения и подсказывает по вашей базе знаний.', 'Как и Telegram, Discord держит постоянное gateway-соединение, поэтому боту нужен сервер, работающий 24/7. VPS от MAATRIX даёт стабильный IP в UK или США — это важно, поскольку Discord API из некоторых сетей РФ отвечает нестабильно.', 'Разница с Telegram в основном в API и модели прав. Discord строже относится к тому, что бот может читать: чтобы видеть текст сообщений, нужно явно включить привилегированный интент в панели разработчика. Зато Discord удобнее для сообществ — роли, каналы, треды и слэш-команды дают богатый интерфейс, поверх которого ИИ-ассистент выглядит естественно.']

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

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

Арендовать VPS для Discord-бота

Регистрация приложения и токен

['Зайдите на Discord Developer Portal, создайте New Application, затем Bot и скопируйте токен. Включите Message Content Intent, если хотите читать текст сообщений. Токен — это фактически пароль бота: если он утёк, немедленно перевыпустите его в панели, иначе чужой код сможет действовать от имени вашего бота.', 'Пригласите бота на сервер через OAuth2 URL Generator, выбрав scope bot и applications.commands и нужные права (Send Messages, Read Message History).']

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

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

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

['
apt update && apt install -y python3 python3-venv git\nadduser discordbot\nsu - discordbot\npython3 -m venv ~/venv && source ~/venv/bin/activate\npip install discord.py openai
', 'Библиотека discord.py покрывает и слэш-команды, и обработку сообщений. Для ИИ-части используем OpenAI-совместимый клиент — он подойдёт и для внешнего API, и для локальной Ollama.']

Код бота с ИИ-ответами

['Бот отвечает, когда его упоминают. Создайте bot.py:', '
import os, discord\nfrom openai import OpenAI\n\nai = OpenAI(api_key=os.environ["AI_KEY"],\n            base_url=os.environ.get("AI_BASE", "https://api.openai.com/v1"))\nintents = discord.Intents.default()\nintents.message_content = True\nclient = discord.Client(intents=intents)\n\n@client.event\nasync def on_message(msg):\n    if msg.author == client.user or client.user not in msg.mentions:\n        return\n    q = msg.content.replace(f"<@{client.user.id}>", "").strip()\n    r = ai.chat.completions.create(model="gpt-4o-mini",\n        messages=[{"role": "user", "content": q}])\n    await msg.reply(r.choices[0].message.content)\n\nclient.run(os.environ["DISCORD_TOKEN"])
', 'Для локальной модели поставьте Ollama (curl -fsSL https://ollama.com/install.sh | sh), выполните ollama pull llama3.1:8b и задайте AI_BASE=http://127.0.0.1:11434/v1. Ollama и Discord-бот при этом живут на одном VPS и общаются через localhost, наружу порт модели открывать не нужно.', 'Чтобы бот отвечал по контексту, а не забывал предыдущую реплику, храните короткую историю по каналу. Но не увлекайтесь длиной контекста: чем больше сообщений вы подмешиваете, тем дольше и дороже ответ. Для сообщества обычно хватает последних 5-10 реплик. Тяжёлые запросы стоит выполнять асинхронно и показывать индикатор набора через async with msg.channel.typing(), чтобы пользователи видели, что бот думает.']

Запуск в Docker (опционально)

['Docker удобен, если ботов несколько или хотите изолировать зависимости. Простой Dockerfile:', '
FROM python:3.12-slim\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --no-cache-dir -r requirements.txt\nCOPY bot.py .\nCMD ["python", "bot.py"]
', '
docker build -t discord-ai .\ndocker run -d --restart=always \\\n  -e DISCORD_TOKEN=xxx -e AI_KEY=yyy discord-ai
']

Стабильность и логи

['Через systemd или Docker с --restart=always бот сам поднимется после сбоя. Логи смотрите так:', '
journalctl -u discordbot -f      # если systemd\ndocker logs -f <container>         # если Docker
', '
  • PrivilegedIntentsRequired — включите Message Content Intent в портале.
  • Бот молчит на упоминание — проверьте право Send Messages в канале.
  • Rate limit 429 — не спамьте запросами, добавьте очередь.
']

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

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

Арендовать VPS для Discord-бота

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

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

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

Чем Discord-бот отличается от Telegram по хостингу?

Принципиально ничем: обоим нужен постоянно работающий VPS. Отличается только SDK и способ регистрации бота.

Нужен ли зарубежный сервер для Discord?

Желательно. Discord API стабильнее отвечает с зарубежного IP, а VPS MAATRIX стоит в UK и США.

Можно ли сделать слэш-команды?

Да, discord.py поддерживает app_commands — регистрируете команды через дерево и синхронизируете с сервером.

Сколько стоит такой сервер?

Тарифы MAATRIX начинаются от $8/мес, для API-бота этого достаточно с запасом.