Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Асинхронный Telegram-бот с искусственным интеллектом

Описание

Асинхронный Telegram-бот, реализован на библиотеках python-telegram-bot и openai

Бот умеет:

  • вести диалог
  • помогать практиковаться в приглашении на свидания
  • генерировать описания профиля для сайтов знакомств
  • помогать создавать сообщения при переписке на сайте знакомств

С ботом можно просто пообщаться, ответы бот дает обращаясь к базе данных ответов.

0

Если ответ в базе данных не найден, то бот предложит обратиться к ChatGPT, либо продолжить общение дальше.

0_2

При нажатии на кнопку "Меню" откроется главное меню бота.

1

При нажатии в главном меню "/start" или ручном наборе этой команды будет выведена краткая информация о возможностях бота и описание основных команд.

2

При выборе в меню команды "/gpt" или ее ручном вводе перейдем в режим общения с ChatGPT.

3_gpt

При выборе команды "/date" или ее ручном вводе бот предложит общение со "звездами" на выбор.

4_date

Выбрана "Марго Робби". Пример общения.

5_date_talk

Команда "/profile" позволяет сгенерировать яркий красочный профиль для соцсети.

6_profile

Команда "/opener" генерирует первое сообщение для начала диалога и знакомства.

7_opener

Команда "/message" поможет выйти из затруднительного положения, когда нет идей что сказать, и сгенерирует следующее сообщение в контексте идущего диалога.

8_message


Файлы и каталоги проекта

  • bot.py - содержит всю логику бота, присылает сообщения пользователю, получает сообщения от пользователя и обрабатывает введенные им команды и нажатия кнопок;
  • gpt.py - содержит служебный класс ChatGPTService, упрощающий работу бота с ChatGPT;
  • util.py - содержит "служебные" функции для упрощения логики в bot.py;
  • settings.py - файл настроек, содержит API-ключи (токены) для Telegram и ChatGPT;
  • ./DB/db_answers.json - база данных ответов бота, представляет собой словарь в формате "вопрос пользователя":"ответ бота", может быть расширен пользователем.

Инструкция по сборке и запуску проекта

  1. Зарегистрировать Telegram-бот:
    • в Telegram в поле поиска ввести BotFather, перейти в чат
    • в чате нажать кнопку "Запустить" или ввести команду /start
    • ввести команду /newbot
    • ввести имя создаваемого бота, например Tinder AI Bot
    • ввести никнейм нового бота, название должно быть уникальным и заканчиваться на bot
    • скопировать токен и вставить его в файле settings.py
    • перейти в чат созданного бота по ссылке из сообщения я токеном
  2. Получить токен для работы с ChatGPT:
    • зарегистрироваться на chat.openai.com/auth/login
    • перейти на сайт: platform.openai.com
    • на сайте нажимаем Personal, и выбираем View API keys
    • затем нажимаем Create new secret key
    • полученный токен вставляем в файле settings.py
  3. Установка, сборка и запуск бота:
    • Скачать и установить интерпретатор Python - https://www.python.org/downloads/

      Далее выполнить следующие команды в консоли:

    • cd <имя_каталога> # перейти в каталог где будет проект

    • git clone https://github.com/stankv/Telegram_AI_Bot.git # клонировать репозиторий

    • cd Telegram_AI_Bot # перейти в каталог проекта

    • pip install -r requirements.txt # установить пакеты и зависимости

    • python bot.py # запустить телеграм-бот

About

Asynchronous Telegram bot with artificial intelligence | Асинхронный Телеграм-бот с искусственным интеллектом

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages