Создаём собственного бота ChatGPT
Скачиваем инсталлер Python 3.10 – https://www.python.org/ftp/python
Обязательно выберите опцию - Add Python 3.10 to PATH.
1. Открываем Командную Строку.
2. Прописываем следующую команду:
pip install -U g4f
Данная библиотека отвечает за работу самого ChatGPT. Библиотека имеет более 40к звёздочек на гитхабе.
Ссылка: https://github.com/xtekky/gpt4free
1. Открываем Командную Строку.
2. Прописываем следующую команду:
pip install pyTelegramBotAPI
1. Переходим в @BotFather в Телеграм.
2. Прописываем команду /newbot.
3. Вводим название своего бота.
4. Вводим юзернейм для своего бота.
5. Копируем токен нашего бота для следующего шага.
Пишем бота
Необходимо создать папку в которой будут находиться 2 необходимых нам файла:
import g4f import telebot from config import TOKEN, ADMIN_ID # НАСТРОЙКИ БОТА bot = telebot.TeleBot(TOKEN, parse_mode=None) # НАСТРОЙКИ CHAT_GPT g4f.logging = True g4f.check_version = False def ask_gpt(promt) -> str: response = g4f.ChatCompletion.create( model="gpt-3.5-turbo", messages=[{"role": "user", "content": promt}], stream=True, ) ans_message = '' for message in response: ans_message += message return ans_message @bot.message_handler() def ask_bot(message): if ADMIN_ID is None: question = message.text answer = ask_gpt(question) bot.reply_to(message, answer) else: if message.from_user.id == ADMIN_ID: question = message.text answer = ask_gpt(question) bot.reply_to(message, answer) else: bot.reply_to(message, 'Доступ запрещён!') bot.infinity_polling()
TOKEN = "СКОПИРОВАННЫЙ ТОКЕН ВАШЕГО БОТА ИЗ BOTFATHER" ADMIN_ID = None
ADMIN_ID - нужен для того чтобы бот был приватным и работал только через ваш аккаунт.
Получить id своего аккаунта вы можете тут.
Если же хотите чтобы бот был публичным, оставьте значение данной переменной None.
cd {папка с ботом}
3. После смены директории в cmd прописываем:
python bot.py