Второй урок «Основы» из курса обучения Dialogflow «Разборки чат-ботов»
Добро пожаловать в раздел «Разбор чат-ботов». Я Приянка Вергадия. И в этом выпуске мы разберем архитектуру чат-ботов Dialogflow, чтобы лучше понять строение сервиса.
В первом эпизоде мы представили Dialogflow, который представляет собой комплексный инструмент с пониманием естественного языка для понимания сложных и естественных разговоров. Сегодня давайте посмотрим на архитектуру высокого уровня.
Dialogflow находится в середине стека. Пользователь может взаимодействовать с ним через все общие каналы, включая текст, веб-сайты, приложения, мессенджеры и умный устройства, как Google Home.
Dialogflow выполняет работу по переводу естественного языка в машиночитаемые данные с помощью машинного обучения модель обучена на ваших примерах.
Как только он определит, о чем говорит пользователь,
он может передать эти данные на ваш сервер где вы можете использовать это, чтобы что-то произошло.
В админке вы можете выполнить запрос путем интеграции с другими вашими сервисами, базами данных или даже
сторонние инструменты, такие как ваша CRM.
Теперь давайте углубимся на один слой глубже в Dialogflow.
Сначала мы создаем агента в Dialogflow. Агент — это, по сути, все ваше приложение чат-бота. Инструмент того, что говорит пользователь, сопоставление его с намерением, выполнение действий с ним, а затем предоставить пользователю ответ. И в вашем агенте все начинается с триггерного события называется звуком.
Вот как наши пользователи вызывают чат-бота. Итак, если я скажу: «Окей, Google, включи музыку», все предложение — высказывание.
А фраза «Эй, Google» — это спусковой крючок.
Возьмем другой пример. «Привет, Google, поговорите с Smart Scheduler». Фраза, поговорите с Smart Scheduler,
это фраза вызова нашего чат-бота.
И Smart Scheduler — это имя вызова. Как только бот активирован и получил высказывание пользователя, нам нужно понять намерения пользователя.
Intents | Намерения
Почему они хотят поговорить с нашим ботом?
Итак, когда вы говорите, «Я хочу назначить встречу», назначить встречу это намерение. Или, если вы спросите, «Каковы ваши часы работы», тогда часы работы — это намерение узнать время работы.
Для управления всем этим вы предоставляете Dialogflow с разными примерами намерений пользователей например, назначить встречу, узнать часы работы и другие. Затем Dialogflow обучает модель машинного обучения со многими другими похожими фразами и, наконец, карты фраза пользователя с правильным намерением. Этот процесс называется сопоставлением намерений.
Теперь, когда мы знаем намерения нашего пользователя
нам нужно знать, что делать, чтобы дать им ответ.
Сущности | Entities
Для этого вы настраиваете действия и параметры для определения переменных, которые вы хотите собирать и хранить. Давайте посмотрим на пример.
«Назначьте встречу на 5:00 завтра».
Когда пользователь говорит это, 5:00 утра и завтра
две важные части информации в этом заявлении
что нам действительно нужно записаться на прием.
Эти переменные определены как сущности.
Dialogflow предлагает различные типы сущностей.
И мы расскажем об этом подробно в следующем выпуске.
Когда у нас есть переменные, мы можем используйте их для предоставления статического ответа пользователю.
Или в большинстве случаев мы можем отправить переменную к нашей серверной части, примите меры,
а затем предоставить пользователю динамический ответ.
Мы рассмотрим это через секунду.
В ПОРЯДКЕ.
Контекст | Context
Подводя итог, намерение включает обучающие фразы, действия, параметры, и ответ. В зависимости от того, какие услуги предлагает ваш бот, обычно у вас может быть от нескольких до тысяч намерений. Они также могут быть на разных языках.
Пока вы смотрите на архитектуру,
стоит упомянуть контекст. Контекст — это метод, с помощью которого ваш чат-бот сохраняет и получает переменные, чтобы он мог обмениваться информацией с одним намерением к другому, в разговоре. У нас будет больше информации о контексте в следующем выпуске.
Исполнение | Fulfillment
Исполнение — последний кусок головоломки. Это код, который вы пишете для интерфейса с внутренними службами для ответа на динамический запрос. Скоро мы еще поиграем с этим. Но пока обратите внимание, что Dialogflow имеет встроенную интеграцию с Google Cloud Functions для взаимодействия с вашим сервером. И вы также можете предоставить другую конечную точку HTTPS, и Dialogflow просто подключится к нему.
Отлично. Итак, сегодня мы рассмотрели простую высокоуровневую архитектуру настройки агента в Dialogflow и узнали о:
- намерения,
- сущности,
- контекст,
- выполнение на высоком уровне
Далее мы займемся практической работой и построим простую встречу планировщик чат-бота. Если вам это кажется захватывающим, присоединяйтесь ко мне в следующем выпуске «Разборки чат-ботов».