Перейти к содержанию

Создаем бота ChatGPT в Telegram - Подробная инструкция


Рекомендуемые сообщения

  • Админы

Всем привет!

Поюзал ботов я не мало, и остановился на одном. Очень интересном и универсальном.

Репозитория на GitHub - ТУТ

Требования:

  • Свой  VPS сервер за границей.
    Да-да. Лучше иметь сервер зарубежный, чтобы избежать потенциального блока на использование API.
  • API ключ от ChatGPT
  • немного навыков обращения с консолью
  • телеграм аккаунт

Шаг 1. Регистрируем бота в BotFather.

Идём к Батьке всех ботов. Сюда.

https://t.me/BotFather

Пишем ему команду: /newbot

Следуем инструкциям. Создав бота вы получите API ключ. Сохраните отдельно, но не отдавайте никому его! Нам нужен будет этот ключ.

Шаг 2. У вас должен быть аккаунт OpenAI, и доступ к ChatGPT. А ещё у вас на аккаунте должны быть кредиты (хотя бы бесплатные 5$) 

Идём на страницу: API keys - OpenAI API

Жмём image.png

Копируем этот API в блокнотик себе и не отдаем никому. Он нам будет нужен дальше.

Шаг 3. Идём на свой VPS сервер.

Рефералки на провайдеров VPS где их можно арендовать размещены тут: Рефералки - opeNode - Mind & Data Space

На сервер попали.

 

UPDATE 1.08.2023

Теперь можно просто заюзать скрипт:

bash <(wget -qO- https://raw.githubusercontent.com/DigneZzZ/chatgpt_telegram_bot/main/setup.sh)

 

Ниже инструкция по ручной установке:

 

пишем в консоле:

git clone https://github.com/karfly/chatgpt_telegram_bot.git

!!! У вас должен быть установлен GIT. Если не установлен, юзай команду: apt install git

После этого, идем в папку:

cd chatgpt_telegram_bot

Теперь нам нужно переименовать конфиг файлы:

mv config/config.example.yml config/config.yml
mv config/config.example.env config/config.env

Теперь нам нужно зайти в конфиг и вставить свои "пять копеек":

nano config/config.yml

Попав сюда видим:

telegram_token: ""
openai_api_key: ""
use_chatgpt_api: true
allowed_telegram_usernames: []  # if empty, the bot is available to anyone. pass a username string to allow it and/or user ids as integers
new_dialog_timeout: 600  # new dialog starts after timeout (in seconds)
return_n_generated_images: 1
n_chat_modes_per_page: 5
enable_message_streaming: true  # if set, messages will be shown to user word-by-word

# prices
chatgpt_price_per_1000_tokens: 0.002
gpt_price_per_1000_tokens: 0.02
whisper_price_per_1_min: 0.006

Дальше все логично, внутрь ковычек вставляем наши API.

В telegram_token: "здесь-апи-ключ" - API ключ от BotFather.
В openai_api_key: "здесь-апи-ключ-OpenAI" - сюда ключ от OpenAI.

Теперь сделаем так, чтобы пользоваться могли только вы. Для этого нам нужен параметр.

В него вставляется НИК в telegram.

Несколько аккаунтов разделяются запятой. 

allowed_telegram_usernames: [durov,BotFather]

ОЧЕНЬ ВАЖНО СОБЛЮДАТЬ РЕГИСТР БУКВ (маленькие или БОЛЬШИЕ) - так как в точности называется ваш ник в Tелеграм.

ЕСЛИ НЕ УКАЗАТЬ НИКОВ - ПОЛЬЗОВАТЬСЯ СМОЖЕТ КАЖДЫЙ!

 

Ещё можно задать время, сколько будет ждать бот, прежде чем сбросить тему диалога (задается в секундах):

new_dialog_timeout: 600

На этом настройки можно заканчивать.

Шаг 4. ЗАПУСКАЕМ БОТА 

docker-compose --env-file config/config.env up --build -d

 

На этом всё.

Идём в телеграм, пишем своему боту /start

И радуемся общению 🙂

Вот его команды:

image.png

Моды чата - это то в каком стиле будут даваться ответы.

Доступны такие, можно почитать тут:

image.png

image.png

image.png

Ещё важная настройка, доступная из диалога - /settings

image.png

Я рекомендую использовать ChatGPT. Он соответствует версии ChatGPT3.5 Turbo. Он дешевый и ничем не уступает в ответах дорогому GPT-3.5. Там один токен очень дорого стоит.

Посчитать токены кстати можно здесь:

OpenAI API - TOKENIZER

Обратите внимание, текст на русском потребляет в несколько раз больше токенов за одно слово.

image.png

А вот на английском:

image.png

 

Удачи.

 

Ссылка на комментарий
Поделиться на другие сайты

  • DigneZzZ изменил название на Создаем бота ChatGPT в Telegram - Подробная инструкция
  • DigneZzZ популярно и закреплено это тема
  • 1 месяц спустя...
  • Админы
2 минуты назад, tabsiger сказал:

Package 'python-dev' has no installation candidate

Это что и в какой момент?

Ссылка на комментарий
Поделиться на другие сайты

13 минут назад, tabsiger сказал:

На 4 шаге, удалил в Docerfile "python-dev" и все завелось

 

Something went wrong during completion. Reason: You exceeded your current quota, please check your plan and billing details.

Сам бот пишет это..

Ссылка на комментарий
Поделиться на другие сайты

Не увидел ограничений по серверу в инструкции, чтобы использовать openai_api_key подойдет сервер взятый у vdsina расположенный в Нидерландах?

Ссылка на комментарий
Поделиться на другие сайты

  • Админы
19 минут назад, tabsiger сказал:

На 4 шаге, удалил в Docerfile "python-dev" и все завелось

 

Очень странно, я много раз его переставлял, все было ок

 

19 минут назад, tabsiger сказал:

И еще вопрос как получить эти бесплатные 5$ у chatgpt ?

Я брал на plati.market аккаунт с 5$ долларами на счету. за 100 или за 150 рублей.

7 минут назад, tabsiger сказал:

Something went wrong during completion. Reason: You exceeded your current quota, please check your plan and billing details.

Сам бот пишет это..

Баланс для Апи значит пустой)

1 минуту назад, tabsiger сказал:

Не увидел ограничений по серверу в инструкции, чтобы использовать openai_api_key подойдет сервер взятый у vdsina расположенный в Нидерландах?

Для бота подойдет.

Ссылка на комментарий
Поделиться на другие сайты

Разобрался, 1 мая истекли 18$ но вот python-dev не встаёт, ставил на чистый Ubuntu 22.04, хотя и с без него все работает, были б кредиты...

Ссылка на комментарий
Поделиться на другие сайты

  • Админы
55 минут назад, tabsiger сказал:

На 4 шаге, удалил в Docerfile "python-dev" и все завелось

 

 

24 минуты назад, tabsiger сказал:

Разобрался, 1 мая истекли 18$ но вот python-dev не встаёт, ставил на чистый Ubuntu 22.04, хотя и с без него все работает, были б кредиты...

Надо было попробовать исправить на  python3-dev

Ссылка на комментарий
Поделиться на другие сайты

Немного дополнил перевод. Обновил реп. В первом сообщении.

Изменено пользователем persoun
Ссылка на комментарий
Поделиться на другие сайты

  • Админы

Обновил свой репозиторий по установке.

https://github.com/DigneZzZ/chatgpt_telegram_bot/

Добавлен скрипт для упрощенной установки setup.sh.

bash <(wget -qO- https://raw.githubusercontent.com/DigneZzZ/chatgpt_telegram_bot/main/setup.sh)

Добавить русский язык можно командой:

bash <(wget -qO- https://raw.githubusercontent.com/DigneZzZ/chatgpt_telegram_bot/main/russian.sh)

Модели чата берутся из репозитория  @persoun

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...

Важная информация

Вы принимаете наши Условия использования, Политика конфиденциальности, Правила. А также использование Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.

Яндекс.Метрика