Голосовой чатбот на Python

На Python мы сделали простого голосового чатбота с использованием Google Speech To Text API, Dialogflow, Google Text To Speech API.

В нашем репозитории на GitHub вы можете посмотреть класс, который обеспечивает следующий цикл ожидания голоса (Listen Loop): слушает голос пользователя, переводит в текст с помощью Google Cloud STT API, передает в Dialogflow, который понимает, что ответить, и возвращает текстовый ответ и читает его вслух с помощью Google Cloud TTS API.

По сути, это скелет базового голосового бота на Dialogflow. Мы тестировали этот бот на Windows 10 x64 и Raspberry Pi 3 на украинском и английском языках. Английский работает хорошо, украинский отлично распознается, но плохо читается, поскольку Google не дает в общее пользование свой TTS API для украинского.

Dialogflow

Преимущество этой технологии в том, что можно управлять логикой диалога в Dialogflow без необходимости переинсталлировать бота на устройствах. Недостаток - требовательная к интернет-соединению, плюс все недостатки Google Speech API.

Демо голосового чатбота

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

04.12.2018
Используемые в статье картинки взяты из открытых источников и используются как иллюстрации.