Skip to content

LiliaTi/Speech_recognition_bot

Repository files navigation

Чатботы технической поддержки

Данный проект реализует двух чатботов технической поддержки для vk.com и telegram для вымышленной фирмы "Игра глаголов". Боты отвечают на типичные вопросы пользователей, представленные в произвольной форме. Боты были обучены нейросетью посредством сервиса DialogFlow. Логи каждого бота отправляются в установленный чат телеграм.

Как использовать

Отправьте вопрос (доступные вопросы) телеграм боту или группе vk

Пример использования

Telegram

tg_bot_gif.gif

VK

vk_bot_gif.gif

Как установить

На локальной машине

Создайте в корне директории файл .env со следующими переменными

PROJECT_ID="Your dialogflow project id"
GOOGLE_APPLICATION_CREDENTIALS="path to google credentials json file"
TG_ERROR_CHAT_ID='your chat_id for errors'
TG_BOT_TOKEN="Telegram bot token"
VK_TOKEN="Your vk group token" 

Создайте DialogFlow project, затем создайте агента Запишите интенты и ответы для будущих ботов. Интенты также могут быть созданы скриптом training.py, он обучит сеть на примерах из questions.json

Создайте google credentials json file

Создайте группу vk, в вашей группе кликните Управление -> Работа с API -> Создать ключ (разрешите отправку сообщений)

Создайте бота телеграм с помощью @BotFather. Получите токен вашего бота

Python3 должен быть уже установлен. Затем используйте pip (или pip3, есть есть конфликт с Python2) для установки зависимостей:

pip install -r requirements.txt

Запустите скрипты следующими командами:

python vk_bot.py
python tg_bot.py

Деплой на Heroku

Склонируйте репозиторий, войдите или зарегистрируйтесь на Heroku

Создайте новое приложение Heroku, во вкладке Deploy подключите ваш github аккаунт.Выберите нужный репозиторий.

Во вкладке Settings установите переменные окружения как Config Vars, добавьте google credentials, используйте этот билдпак

Активируйте бота на вкладке Resourses

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages