Боты и чаты

Telegram-бот с AI через AI Gateway — на Python

AI-бот в Telegram на Python: aiogram и OpenAI SDK с ключом AI Gateway

OpenAI-совместимый API

AI-бот в Telegram — это связка двух библиотек: aiogram принимает сообщения от пользователей, а openai SDK обращается к модели. Достаточно направить SDK на AI Gateway через base_url — и бот отвечает моделями из каталога без VPN и валютной карты, с оплатой в рублях.

Подключение

  1. Получите два ключа

    Токен Telegram-бота — у @BotFather командой /newbot. Ключ AI Gateway (sk-aigate-…) — в кабинете после регистрации; для бота лучше отдельный ключ со своей квотой.

  2. Установите библиотеки

    Нужны асинхронный фреймворк для Telegram и OpenAI SDK:

    pip install aiogram openai
  3. Настройте клиента на AI Gateway

    В AsyncOpenAI передайте base_url со шлюзом и ключ AI Gateway — дальше SDK используется как обычно:

    from openai import AsyncOpenAI
    
    ai = AsyncOpenAI(
        base_url="https://ai-gatewey.ru/v1",
        api_key="sk-aigate-...",
    )
  4. Соберите echo-AI-бота

    Минимальный бот: любое текстовое сообщение уходит в модель, ответ возвращается пользователю:

    import asyncio
    from aiogram import Bot, Dispatcher
    from aiogram.types import Message
    from openai import AsyncOpenAI
    
    bot = Bot("TELEGRAM_TOKEN")
    dp = Dispatcher()
    ai = AsyncOpenAI(
        base_url="https://ai-gatewey.ru/v1",
        api_key="sk-aigate-...",
    )
    
    @dp.message()
    async def on_message(msg: Message):
        res = await ai.chat.completions.create(
            model="deepseek/deepseek-chat",
            messages=[{"role": "user", "content": msg.text}],
        )
        await msg.answer(res.choices[0].message.content)
    
    asyncio.run(dp.start_polling(bot))
  5. Запустите и проверьте

    Запустите скрипт и напишите боту в Telegram — ответ придёт от модели, а расход по токенам появится в кабинете AI Gateway в реальном времени.

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

Модели для ботов

В ботах поток сообщений большой, а ответы короткие — важнее скорость и цена за запрос, чем максимальный интеллект:

МодельВвод, ₽/1МВывод, ₽/1МКонтекст
DeepSeek: DeepSeek V331125128K
OpenAI: GPT-5.4 Mini118705400K
Anthropic Claude Haiku Latest157784200K
Актуальные цены каталога AI Gateway за 1 млн токенов. Все модели →

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

Как сделать, чтобы бот помнил контекст диалога?

SDK сам по себе не хранит историю: собирайте список сообщений пользователя и ответов бота и передавайте его целиком в messages при каждом запросе. Для экономии токенов обрезайте старые сообщения.

Как удержать расход под контролем на публичном боте?

Заведите отдельный ключ AI Gateway с месячной квотой и RPM-лимитом, добавьте в бота простой rate-limit на пользователя и выбирайте дешёвую модель — так пиковая нагрузка не приведёт к сюрпризам.

Подойдёт ли синхронный openai-клиент?

aiogram асинхронный, поэтому используйте AsyncOpenAI и await, как в примере. Синхронный клиент в обработчиках будет блокировать event loop и тормозить бота под нагрузкой.

Ключ для Telegram-бота — сразу после регистрации

Получить ключ