Dialogflow – платформа, для створення “розумних” чат-ботів. Під розумними я маю на увазі розмовних ботів, які здатні розпізнавати як текст, так і голос людини і формувати власну відповідь на основі нейронної мережі.
Платформа безкоштовна. Є і Enterprise-тарифи, де ви сплачуєте лише за ресурси, що використовуюєте. Але для початку вам з головою вистачить безкоштовного. Для реєстрації в dialogflow.com вам знадобиться обліковий запис у Google, оскільки сервіс належить цій компанії.
Dialogflow дозволяє створювати чат-ботів одразу для кількох месенджерів та платформ. Підтримуються Facebook Messenger, Telegram, Viber, Skype, Google Assistance та багато інших. Також ви можете створити чат-бота з веб-інтерфейсом та легко інтегрувати на сайт.
Найпростіша інетграція Dialogflow з Telegram, тому давайте і розглянемо цей варіант на практиці і розберемося як все працює.
Перше, що потрібно зробити, це створити так званий агент. Агент Dialogflow — це програма (сервіс), яка приймає фрази від користувача і генерує відповіді на них. Після цього, зв’язується з ботами в месенджерах, з якими має інтеграцію і передає відповідь їм. А боти виводять інформацію кінцевим користувачам у месенджерах.
У нашому прикладі поки що буде лише один агент і один бот.
Отже, створюємо нового агента. Для цього у верхньому правому кутку натискаємо на “Create new agent”. У вікні даємо агенту ім’я (чисто технічне, користувач його не побачить). Далі, вибираємо мову, з якою працюватиме агент та часовий пояс.
Решту налаштувань можна залишити як є. На цьому етапі більше нічого не потрібно.
Натискаємо “Create”. Агент готов!
Наступний крок – створюємо чат-бота в Telegram. Саме з ним ми з’єднуватимемо нашого агента. Для цього відкриваємо месенджер Telegram, у пошуковому рядку знаходимо бота під назвою BotFather і запускаємо його. Це спеціальний системний бот, який є “батьком” решти ботів у Telegram.
Запускаємо його, натиснувши кнопку “Старт”. Вводимо команду /newbot. У нас запитають ім’я майбутнього робота. Це ім’я будуть бачити користувачі, тому придумайте щось більш-менш осмислене. Можна писати навіть українською. Наприклад, “Іван Іванович”. Ім’я не буде унікальним.
Тепер нас попросять вигадати унікальний ідентифікатор для бота. Коротке ім’я (суворо латиницею), яке закінчується приставкою “_bot” або “bot”. На завершення, BotFather згенерує токен, тобто унікальний ключ із випадкових символів, який нам знадобиться при інтеграції робота з агентом. Скопіюйте та збережіть десь токен.
Майже все. Завершальний (але не обов’язковий) етап - опис бота, який буде доступний користувачам Telegram. Додати опис просто. Введіть команду /mybots, у списку ботів вибирайте потрібний та натисніть на “Edit bot”. Там можна буде додати докладний опис робота, картинку, заголовок.
Зберегли? Тепер натисніть кнопку “Bot Settings” та вибирайте “Inline Mode”. Тут потрібно натиснути на Turn on, щоб бот бачив повідомлення користувачів. Натисніть “Back to Settings”, зайдіть у “Group Privacy” та затисніть на “Turn off”. Відключили приватність для груп, так ми даємо можливість бачити всі повідомлення в групах.
На цьому налаштування чат-бота закінчено.
Повертаємось у Dialogflow і приступаємо до інтеграції агента з ботом. У головному меню (ліворуч) знайдіть розділ “Integrations”, знайдіть Telegram та активуйте кнопку-тумблер.
У вікні “Telegram token”, що з’явилося, вставте токен, який згенерував BotFather, і натисніть на “Start”.
Все, ваш агент інтегрований із чат-ботом. Спробуйте знайти чат-бота в Telegram, використовуючи рядок пошуку і напишіть йому щось. Він поки що не дуже розумний і зможе реагувати лише на слово “Привіт” та кілька інших варіантів привітання. Експериментуйте, це тільки початок. Покроково ми зробимо бот розумним.
Якщо вас зацікавила платформа Dialogflow — дайте зворотний зв’язок (в коментах, наприклад) і в наступних статтях займемося нарощуванням функціоналу бота. Дамо чат-боту інтелект, навчимо реагувати на різні фрази і не шаблонно, а більш-менш наближено до реальної людини. Ми ж само за цим і обрали Dialogflow.
Щоб не пропустити оновлення, підписуйтесь на канал у Telegram, там я публікую все найцікавіше, пов’язане з чат-ботами та Dialogflow. Канал поки що тільки російською мовою.
Бажаю удачі та чекаю на ваші коментарі!
UPDATE: додав відео-версію (на російській мові).