Я никогда не понимал, что создать чат-бота будет так просто, пока не наткнулся на DialogFlow от Google. Это как у волшебников с волшебной палочкой и кнутом, чат-бот появляется из ниоткуда. Тем не менее, давайте гордимся тем, что мы здесь волшебники, а наша палочка - DialogFlow.

Компоненты в Dialogflow

Теперь давайте перейдем к строительным блокам, которые необходимо организовать, чтобы получить функционального бота.

Агент: Агент может быть реализован как суперзвезда службы поддержки клиентов, которая напрямую взаимодействует с пользователями, чтобы получить потрясающий опыт. Точно так же в DialogFlow наш чат-бот на высоком уровне называется агентом.

Намерение: агент подключается к пользователю через намерение и намерение, как правило, классифицирует запрос диалога, который пытается выполнить пользователь. Например, если пользователь хочет проверить данные своей учетной записи, запрос будет направлен на AccountenquiryIntent. Итак, намерения - это привратники, которые перенаправляют тип вопроса в определенную категорию.

Сущности: Сущности занимаются извлечением данных. Они помогают идентифицировать конкретные ключевые слова, которые имеют решающее значение для указания на конкретное намерение ответа.

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

Выполнение: это составляет основу происходящего разговора. Он использует API для подключения к серверной базе данных для хранения беседы или для получения информации для базы данных.

Интеграции: это внешние приложения, которые можно подключить к диалоговому процессу, чтобы наш чат-бот мог процветать во внешнем мире. Некоторые приложения включают в себя Slack, мессенджер Facebook, Twilio, Telegram.

Давайте перейдем к делу

А теперь давайте поработаем руками, реализовав несколько интересных вещей.

Чтобы получить доступ к Dialogflow, нам нужна учетная запись Google. Поэтому убедитесь, что он у вас есть, и используйте ссылку, чтобы перейти на страницу DialogFlow и Войти с помощью Google. Примите Общие положения и условия Google и укажите свою страну. Та да: вы попадете в консоль Dialogflow

1. Создайте агента:

Первый шаг - создать агента, который и является нашим настоящим чат-ботом. Поэтому нажмите кнопку Создать агента в левом углу или кнопку, доступную на центральной странице. Дайте имя своему чат-боту и установите язык и часовой пояс, в котором он будет работать. После этого нажмите Создать.

2. Настройте намерение:

В левом углу экрана мы можем найти вкладку под названием Намерение. По умолчанию DialogFlow предоставляет нам резервное намерение по умолчанию и намерение приветственного сообщения. Если вы нажмете на любое намерение, вы можете найти:

  • Обучающие фразы. Это подходящие диалоги, которые пользователи могут вести при взаимодействии с чат-ботом. Нам не нужно предоставлять все возможные разговоры, вместо этого мы предоставляем только несколько примеров. Алгоритм машинного обучения на бэкэнде Dialogflow будет обучаться со всеми подходящими фразами.
  • Ответы: это ответ, который дает чат-бот, когда он определяет один из подходящих обучающих разговоров. Если чат-бот не может распознать входящий диалог, пользователю задается запасной вопрос, чтобы предоставить более четкую входную информацию.

Вот скриншот, на котором показаны обучающая фраза и ответ, а также тестовая беседа.

3. Пользовательское намерение:

Чтобы создать собственное намерение, нажмите «Создать намерение». Так, например, если мы планируем создать чат-бота, который помогает бронировать билеты в кино, мы можем создать настраиваемое намерение под названием OrderMovieIntent. В обучающей фразе вы можете настроить диалог, который принимает тип экрана и название фильма и соответственно создает ответ.

4. Сущности:

Сущности помогают извлечь определенную часть данных, чтобы чат-бот ответил соответствующим образом. Например, если в беседе указано Я хочу заказать билет сегодня, система автоматически распознает сегодня как поле Datetime и помогает в ответе чат-бота. . Мы также можем создать настраиваемую сущность. В примере бронирования билетов в кино мы можем создать тип билета, название фильма и т. Д. как настраиваемый объект. Чтобы создать это, нажмите Entity на вкладке в левом углу и дайте имя сущности. Укажите переменные вместе с синонимами. Вот пример

5. Использование настраиваемого объекта в намерении:

Мы можем сделать объект, созданный как обязательный элемент в разговоре, чтобы пользователь предоставлял боту всю необходимую информацию. Для этого откройте уже созданное намерение и в разделе Действия и параметры добавьте имя созданных сущностей и резервный ответ, если пользователь его не предоставил.

Как только он будет добавлен, включите некоторые этапы обучения с примерами, включая добавленную сущность, и нажмите Сохранить, модель машинного обучения будет обучена со всеми возможными комбинациями.

6. Контекст:

В каждом разговоре важен контекст разговора. Это означает, что если бот должен оперативно отвечать на вопросы, он должен понимать, что пользователь ответил раньше. Чтобы создать этот поток разговора, мы можем добавить вложенное намерение к уже существующему намерению.

Для этого перейдите на страницу Намерение и нажмите Добавить последующее намерение.

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

7. Выполнение:

Ответ пользователя может быть сохранен в базе данных на сервере с помощью функции выполнения. По умолчанию DialogFlow предоставляет два варианта API для подключения к бэкэнду - 1. Веб-перехватчик 2. Встроенный редактор. Вкладка «Выполнение» находится в левой части экрана.

8. Интеграции:

Мы можем интегрировать нашего чат-бота с несколькими доступными внешними приложениями, такими как мессенджер Facebook, Slack, Twilio, наш собственный веб-сайт и многие другие места. Для этого нам просто нужно перейти в раздел «Интеграции» и включить приложения, с которыми мы хотим интегрироваться.

Престижность 🙌 вы только что создали своего полнофункционального чат-бота. DialogFlow предоставляет множество дополнительных функций, с которыми можно легко поэкспериментировать :)

Увидимся! Получайте удовольствие от обучения