KeyMarket
·10 мин чтения

Как подключить ChatGPT API к Telegram-боту

Делаем AI Telegram-бота на ChatGPT API с нуля: получаем ключ, пишем бота на Python (aiogram) и подключаем модель через OpenAI SDK.

AI-бот в Telegram — один из самых популярных способов применить нейросеть: бот отвечает на вопросы, генерирует тексты, консультирует клиентов. В этой инструкции с нуля сделаем бота на Python, который отвечает через ChatGPT API (модели OpenAI), и подключим его из России без VPN.

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

  • Токен Telegram-бота от @BotFather.
  • API-ключ для доступа к модели (sk-shop-…) и base_url шлюза.
  • Python 3.10+ и две библиотеки: aiogram и openai.

Шаг 1. Создаём бота в Telegram

Откройте @BotFather в Telegram, отправьте команду /newbot, задайте имя и username. В ответ BotFather пришлёт токен вида 123456:ABC… — он понадобится в коде.

Шаг 2. Получаем ключ к ChatGPT API

Чтобы бот мог обращаться к GPT из России, нужен ключ с оплатой картой РФ. Зарегистрируйтесь на store-api.ru, оплатите тариф под модель OpenAI (например, GPT-4o) и скопируйте ключ sk-shop-… из личного кабинета. Адрес шлюза — https://store-api.ru/v1, он совместим с OpenAI SDK.

Шаг 3. Устанавливаем зависимости

Bash
pip install aiogram openai

Шаг 4. Пишем код бота

Бот принимает текстовое сообщение, отправляет его в модель через OpenAI SDK и возвращает ответ. Обратите внимание: base_url указывает на шлюз, а ключ — ваш sk-shop-…

Python — bot.py (aiogram + OpenAI SDK)
import asyncio
from aiogram import Bot, Dispatcher, types
from openai import OpenAI

bot = Bot("ВАШ_TELEGRAM_ТОКЕН")
dp = Dispatcher()

client = OpenAI(
    base_url="https://store-api.ru/v1",
    api_key="sk-shop-…",
)

@dp.message()
async def handle(message: types.Message):
    resp = client.chat.completions.create(
        model="gpt-4o",
        messages=[{"role": "user", "content": message.text}],
    )
    await message.answer(resp.choices[0].message.content)

async def main():
    await dp.start_polling(bot)

if __name__ == "__main__":
    asyncio.run(main())

Шаг 5. Запускаем

Bash
python bot.py

Теперь напишите боту в Telegram — он ответит через GPT. Это минимальный пример; дальше его легко расширить.

Как улучшить бота

  • Хранить историю диалога — передавайте предыдущие сообщения в массиве messages для контекста.
  • Системный промпт — добавьте сообщение с ролью system, чтобы задать характер и правила бота.
  • Стриминг ответа — включите stream=True и редактируйте сообщение по мере генерации.
  • Экономия — для массовых ответов используйте GPT-4o mini, для сложных — GPT-4.1.
  • Обработка ошибок и лимитов — следите за остатком токенов в личном кабинете.
Тот же код работает с Claude и Gemini — достаточно поменять model на модель соответствующего тарифа. Один ключ Store API открывает все три провайдера.

Вывод

Подключить ChatGPT API к Telegram-боту можно за полчаса: создать бота у BotFather, получить ключ с оплатой картой РФ и подключить модель через OpenAI SDK. Дальше бота легко развивать — добавить память диалога, системный промпт и стриминг.

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

Можно ли сделать AI Telegram-бота из России?+

Да. Нужен токен бота от BotFather и ключ к модели с оплатой картой РФ. Бот обращается к GPT через шлюз без VPN.

Какую библиотеку выбрать для бота?+

Для Python популярны aiogram и python-telegram-bot. В примере используется aiogram вместе с OpenAI SDK.

Можно ли использовать Claude или Gemini вместо GPT?+

Да. Код тот же — меняется только параметр model на модель нужного тарифа.

Как контролировать расходы бота?+

Оплата идёт за токены, остаток и срок действия ключа видны в личном кабинете, без абонентской платы.

Читайте также