Создаем собственного бота ChatGPT в Telegram
Доступ к одному из самых популярнейших чат-ботов в настоящее время затруднен без создания учетной записи и использования VPN. Именно эту проблему мы и решим в данном материале, создав собственного бота на основе общедоступной модели, и получив доступ к нему через свою учетную запись Telegram. Единственным минусом является то, что он не будет работать в контексте, каждый ответ не зависит от предыдущего.
Первым делом необходимо установить язык программирования версии 3.10 с официального сайта, для этого переходим по прямой ссылке, опускаемся немного ниже и находим нужную ссылку для загрузки:
После запуска файла для установки, не забываем отметить галочкой пункт, показанный на скриншоте ниже:
После чего открываем командную строку, для этого нажимаем комбинацию клавиш Windows + R на клавиатуре и вводим «cmd» (без кавычек). Далее прописываем команду «pip install -U g4f» (без кавычек) для установки модели, ожидаем окончания процесса:
Помимо этого нам понадобится Telebot, устанавливаем его также, только используем команду с изображения ниже:
Теперь нам нужно создать собственного бота в Telegram, для этого открываем соответствующий диалог и активируем команду, изображенную на скриншоте ниже:
После чего придумываем имя и юзернейм для прямого доступа. Получаем токен, который нам понадобится в следующих шагах:

Создаем текстовый документ, в который вставляем код и заменяем данные на свои. Сохраняем файл в формате .py в любом удобном для Вас месте:
import g4f
import telebot
TOKENBOT = "Токен"
ADMIN_ID = None
# НАСТРОЙКИ БОТА
bot = telebot.TeleBot(TOKENBOT, 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()
Если Вы хотите сделать бота приватным, то в поле «ADMIN_ID» необходимо указать ID вашей учетной записи, который можно посмотреть тут:

Открываем командную строку в папке с ранее сохраненным файлом:
Вводим «python названиевашегофайла.py», нажимаем Enter и ожидаем некоторое время:
Проверяем все ли работает, перейдя в бота, которого создавали в начале материала:
На этом все, надеюсь статья оказалась для Вас полезной!
Texnologiyalar
Создаем собственного бота ChatGPT в Telegram








