Самый простой способ сделать Telegram-бота с ChatGPT - использовать API OpenAI.
Ты создаёшь хендлер сообщений, прокидываешь текст в openai.ChatCompletion.create и возвращаешь ответ.
⚡ Важно:
- Используй context user data для хранения диалога (если нужен контекст)
- Храни ключи через переменные окружения
- Не забудь выставить webhook или polling
import openai
from telegram import Update
from telegram.ext import ApplicationBuilder, MessageHandler, filters, ContextTypes
openai.api_key = "sk-..."
async def chatgpt_handler(update: Update, context: ContextTypes.DEFAULT_TYPE):
user_input = update.message.text
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[{"role": "user", "content": user_input}]
)
await update.message.reply_text(response.choices[0].message.content)
app = ApplicationBuilder().token("TELEGRAM_BOT_TOKEN").build()
app.add_handler(MessageHandler(filters.TEXT & ~filters.COMMAND, chatgpt_handler))
app.run_polling()