Skip to content

valendovsky/ChatGPTinTelegram

Repository files navigation

ChatGPTinTelegram

Python Version Aiogram Version Pydub Version FFMPEG Version

OpenAI Version Application Version License

Telegram bot with ChatGPT.

About

This Telegram bot uses the Openal API to access ChatGPT. The bot accepts voice messages. Each user's chat has its own context. The administrator can allow access to the bot only for subscribers. The administrator has private commands to control the bot. The bot can send messages to subscribers.

Documentation

The project uses the following libraries:

  • aiogram-v3.0.0b7
  • openai-v0.27.6
  • pydub-v0.25.1
  • ffmpeg-v4.4.2

The following variables must be set in the Environment variable:

  • TG_API_KEY - Telegram API token;
  • ADMIN_ID - admin ID;
  • OPENAI_API_KEY - OpenAI API key;
  • SUBSCRIBERS_LIST - subscriber IDs separated by commas.

The SUBSCRIBERS_LIST from the configuration file must contain IDs of all subscribers of the bot. They will be able to use the bot as usual. If you get a list of subscribers from a separate source, then write a module yourself to access this source.

Create a /tmp directory in the root directory of the project.

Distribute

Developers

License

Project ChatGPTinTelegram is distributed under the MIT license.


Телеграм бот с интегрированным ChatGPT.

О проекте

Это Телеграм бот, в который интегрирован ChatGPT через OpenAI API. Бот принимает и голосовые сообщения. Для каждого пользователя бота запоминается свой контекст. Есть возможность предоставить доступ к боту только для указанных подписчиков. Существуют приватные команды управления ботом для администратора. В бот добавлена возможность рассылки сообщений среди подписчиков.

Документация

В проекте используются библиотеки:

  • aiogram-v3.0.0b7
  • openai-v0.27.6
  • pydub-v0.25.1
  • ffmpeg-v4.4.2

Через переменные окружения необходимо предоставить следующие значения:

  • TG_API_KEY - API токен Вашего Телеграм бота;
  • ADMIN_ID - ID администратора бота;
  • OPENAI_API_KEY - код доступа к API OpenAI;
  • SUBSCRIBERS_LIST - ID подписчиков разделённые запятой.

В конфигурационном файле приложения в списке SUBSCRIBERS_LIST можно перечислить всех подписчиков, которым будет предоставлен отдельный доступ к боту. Или самостоятельно добавить модуль, который будет получать этот список из необходимого Вам источника.

В корневой директории проекта необходимо создать каталог /tmp.

Загрузить

Разработчики

Лицензия

Проект ChatGPTinTelegram распространяется под лицензией MIT.