Введение: Приветствую, сегодня я расскажу и наглядно покажу как можно создать собственного бота ChatGPT в телеграм абсолютно бесплатно. Есть множество бесплатных ботов ChatGPT, однако в большинстве из них есть ограничения на количество запросов в сутки. Помимо этого сторонние бесплатные боты работают очень медленно, так как они являются общедоступными и все запросы выполняются в порядке очереди. Установка зависимостей: Установка Python 3.10 Скачиваем инсталлер Python 3.10 – https://www.python.org/ftp/python/3.10.6/python-3.10.6-amd64.exe Обязательно выберите опцию - Add Python 3.10 to PATH Установка библиотеки gf4 1. Открываем Командную Строку. 2. Прописываем следующую команду: pip install -U g4f Данная библиотека отвечает за работу самого ChatGPT. Библиотека имеет более 40к звёздочек на гитхабе. Ссылка: https://github.com/xtekky/gpt4free Установка библиотеки telebot 1. Открываем Командную Строку. 2. Прописываем следующую команду: pip install pyTelegramBotAPI Создаём бота: Создаём бота BotFather 1. Переходим в @BotFather в Телеграм. 2. Прописываем команду /newbot. 3. Вводим название своего бота. 4. Вводим юзернейм для своего бота. 5. Копируем токен нашего бота для следующего шага Пишем бота Необходимо создать папку в которой будут находиться 2 необходимых нам файла: bot.py 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() Python 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() config.py TOKEN = "СКОПИРОВАННЫЙ ТОКЕН ВАШЕГО БОТА ИЗ BOTFATHER" ADMIN_ID = None Python TOKEN = "СКОПИРОВАННЫЙ ТОКЕН ВАШЕГО БОТА ИЗ BOTFATHER" ADMIN_ID = None ADMIN_ID - нужен для того чтобы бот был приватным и работал только через ваш аккаунт. Получить id своего аккаунта вы можете тут. Если же хотите чтобы бот был публичным, оставьте значение данной переменной None. Запускаем Бота: Запуск 1. Открываем Командую Строку. 2. Прописываем команду: cd {папка с ботом} 3. После смены директории в cmd прописываем: python bot.py Пример использования
KipetPro, контекст к сожалению не запоминает, так что каждое сообщение = новый диалог. пробую вот разобраться чтобы добавить контекст в работу бота
and0996, обучить?) советую разобраться с ИИ перед тем как нести чушь. Любой ИИ обучается сам, держу в курсе
line 1, in <module> import g4f ModuleNotFoundError: No module named 'g4f' Что делать в данном случае? Помогите пожалуйста
бот топ,объяснил прям наглядно(если не глупый,то сделаешь все меньше чем за пять минут) но сразу оговорюсь,для не личного использования вероятно он не сильно подойдет,но если вы хотите для себя то норми
Lexa637, именно для автоответчика telethon,хотел делать на pyrogram,но не понравился,а для скрещивания ии со скриптом комбинацию юзаю
cwtebepxugm, для 4 по-моему покупать не надо,просто она очень долгая и честно сказать не стоит внимания,пока что самая удобная это 3.5 turbo
newjeff05, а, ну тогда чтобы проще было, зайди в проводнике в папку эту, и там есть полоска где путь к папке указанс нажми туда и напиши cmd и ентер жмякай
newjeff05, скорее всего траблы с путем, попробуй в другое место все переместить и запустить. Чтобы по пути до файла не было русских символов + убедись в том что когда ставил питон нажал ADD TO PATH
ЧерноеСердце, ну вот ты даже про 200 рублей говоришь и кидаешь ссылку на свой шоп, где за 200 рублев можно купить доступ к общему аккаунту на месяц) Во-первых, 0 приватности. У тебя на таких аккаунтах сидят по 20-30 человек, а у меня может секретики какие то с чатгпт которые я не хочу чтобы кто-то видел. Во-вторых, я просто представляют это количество вкладок слева если у меня на личном аккаунте их дохуя, а там 30 челов сидят строчат.