Приложение: Введение в Dialogflow CX

В конце 2020 года Dialogflow претерпел изменение названия; теперь он называется Dialogflow Essentials (Dialogflow ES), чтобы освободить место для еще одного инструмента Google Cloud Conversational AI: Dialogflow Customer Experience (Dialogflow CX). Dialogflow CX является альтернативным набором для разработки для создания разговорных интерфейсов и будет существовать рядом с Dialogflow ES. Google продолжит поддерживать Dialogflow ES, так как у него огромная база пользователей.

На момент написания этой книги Dialogflow CX является совершенно новым продуктом. Хотя эта книга содержит много информации о том, как использовать Dialogflow ES, я хочу завершить эту книгу некоторой дополнительной информацией о Dialogflow CX. Имея знания о Dialogflow ES и прочитав это приложение, вы будете знать достаточно, чтобы начать создавать своих чат- и голосовых ботов с помощью Dialogflow CX. Это приложение даст вам подробное введение, объяснит, почему существует еще один инструмент разговорного ИИ на выбор, и чем этот продукт отличается от Dialogflow ES. Я объясню новые концепции, такие как Страницы, Потоки и Обработчики состояний, и объясню, когда использовать какой продукт. Во-первых, давайте разберемся, почему Google разработал Dialogflow CX.

Как отрасль меняет сложность своих разговоров

В Dialogflow ES основной концепцией является классификация намерений. Как только намерение сопоставлено, оно может вернуть статический ответ, собрать параметры (извлечение сущностей) или вызвать код веб-перехватчика (fulfillment), например, для извлечения данных из базы данных. См. Главу 3, где это обсуждается более подробно. Dialogflow ES также работает с концепцией под названием контекст. Точно так же, как человек, Dialogflow ES может помнить контекст во второй и третьей смене реплик. Таким образом, он может отслеживать предыдущие высказывания пользователя.

Крупные предприятия использовали Dialogflow ES в течение последних лет. Вот наблюдение, которое я вижу в Google, работая с клиентами. Вначале (2016) большинство разговорных интерфейсов были простыми чат-ботами (боты голосовых помощников, боты FAQ и т. д.) для веба или голосовых ботов, таких как Google Assistant. Обычно используется одна или две смены реплик. Например, «Привет, Google, что сейчас идет по ABC?» — «Холостяк начался в 8 вечера, эпизод, который вы никогда раньше не видели!»

Как мы все знаем, создание разговорных интерфейсов — это непрерывный процесс. Когда вы собираете правильные инсайты чат-бота, вы увидите, что запрашивают ваши клиенты (см. Главу 13). Когда вы продолжаете строить разговоры поверх существующего агента, этот бот со временем становится сложнее.

Таким образом, сложность разговора — это одно наблюдение. Другое восприятие, которое я сделал, заключается в том, что бизнесы хотят быть там, где находятся их клиенты. И поэтому их чат-ботам потребуется подключаться к большему количеству каналов для создания омниканального опыта. Вместо создания одного чат-бота компании теперь хотят разрабатывать полные разговорные платформы, питаемые озером данных и автоматизирующие процессы с помощью роботизированной автоматизации процессов (RPA). Подумайте о сложных сценариях использования, таких как замена вашей службы поддержки клиентов или отдела кадров роботами. Имея перегруженные колл-центры и сотрудников, выгоревших от недооцененных монотонных задач, автоматизация через чат-ботов и виртуальных (голосовых) агентов может сократить огромные бизнес-издержки. Через разговорный ИИ в контакт-центрах бизнесы могут сократить время звонка и время ожидания на линии и предложить доступность 24/7, улучшая наши процессы путем сбора аналитики.

Где подходит Dialogflow CX

Dialogflow ES хвалят за его простоту. Вы можете быстро создать чат-бота или голосового бота. Это приложения для чата и голоса, где короткое высказывание соответствует одному намерению, с несколькими сменами реплик, например, розничный чат или голосовое приложение, где вы можете сказать «Положи молоко в мой список покупок».

Теперь представьте, что вы создаете голосового робота для телефонной службы поддержки продуктового магазина. На этот раз клиенты не говорят несколько предложений; вместо этого они говорят целыми историями: «Вчера, прямо во время открытия, я купил молоко в магазине So-And-So вместе с моим 6-месячным ребенком, и когда я пришел домой и хотел положить молоко в холодильник, я заметил, что срок годности истек. Я открыл коробку и заметил странный запах, но вкус был нормальным». Внезапно становится намного сложнее сопоставить намерение. Для человека может стать сложным понять намерение; для ИИ это тоже сложно! Потому что мы говорим о покупке молока, плохих продуктах или запросе возврата денег?

Разговор длительный; диалог большой и может иметь много смен реплик, где нам нужно помнить контекст — разветвляясь на сотни возможных исходов. И смотрите, я даже не упоминаю техническую сложность работы с несколькими говорящими, прерываниями, фоновыми шумами и так далее.

Создание виртуального (голосового) агента для контакт-центра или создание автоматизированной платформы ботов намного сложнее, где оно достигает границ Dialogflow ES. Конечно, когда у вас есть большая команда разработчиков, они могут создать индивидуальное решение поверх Dialogflow ES, как это делали пользователи в прошлом. Но это означает, что вам придется разрабатывать и поддерживать дополнительный код, а не сосредотачиваться на разработке разговоров. Именно здесь Dialogflow CX вступает в игру.

Функции Dialogflow CX

Dialogflow CX позволяет командам ускорить создание корпоративных разговорных интерфейсов с помощью визуального конструктора ботов (см. Рисунок A-1), многоразовых разговоров и возможности обрабатывать многошаговые разговоры.


Рисунок A-1. Интерфейс Dialogflow CX и визуальный конструктор ботов

Dialogflow CX позволяет быстро создавать агентов с:

  • Большими и сложными потоками. Подумайте о гигантских реализациях агентов с сотнями или тысячами намерений.
  • Более чем тремя сменами реплик (сохранение контекста) и разговорами, которые разветвляются друг от друга на различные исходы.
  • Повторяемыми частями диалога в потоке (подумайте о функции входа в систему, ответах да/нет на вопросы и т. д.).
  • Пониманием намерения и контекста длинных высказываний.
  • Работой с командами, сотрудничающими над большими реализациями.
  • Нативными функциями контакт-центра, такими как DTMF, интеграция с партнерами по телефонии одним щелчком мыши, вмешательство (barge-in), передача живому агенту.
  • Агентами, где важны дополнительные языки и регионализация (например, GDPR).
  • Потоками с различными исходами и повторяемыми частями, например, подача налоговой декларации. Обычно это требует заполнения множества форм, где вопросы перескакивают друг на друга. Если бы вы создавали чат-бота для этого сценария использования, Dialogflow CX был бы отличным решением из-за многоразовых потоков, намерений и ветвления ответов.

Новые концепции в Dialogflow CX

Как и Dialogflow ES, Dialogflow CX содержит модуль Понимания естественного языка, который понимает устную или письменную речь и работает на основе сопоставления/классификации намерений. Однако есть несколько новых концепций, которые делают Dialogflow CX серьезно отличающимся от Dialogflow ES.

Например, основным строительным блоком в Dialogflow ES являются намерения. В Dialogflow CX это Потоки и Страницы.

В Dialogflow ES разговор управлялся совпадениями намерений/событий и контекстами. В Dialogflow CX это работает через Обработчики состояний.

Давайте погрузимся в то, что нового.

Потоки

Сложные диалоги часто включают несколько тем разговора. Например, розничный чат-бот, продающий видеоигры, мог бы иметь разделенные потоки для просмотра календаря релизов видеоигр, добавления в корзину и платежей (см. Рисунок A-2). Как вы читали в Главе 9 о мега-агентах для оркестрации ботов, Потоки немного похожи на мега-агентов. Вы можете красиво настроить потоки в визуальном конструкторе ботов.


Рисунок A-2. Диаграмма разговорного потока

Потоки позволяют командам работать над отдельными путями разговора. Хороший подход — упростить поток. Когда ваши потоки малы, вы можете легко видеть их на экране. Так что это более модульно. См. Рисунок A-3, чтобы узнать, как это выглядит.


Рисунок A-3. Настройка потоков в Dialogflow CX с помощью визуального конструктора

В Главе 3 мы обсуждали концепции Dialogflow ES, включая порог машинного обучения, который используется для классификации намерений. Совпадения выше этого порога могут рассматриваться как совпадение, тогда как другие будут рассматриваться как резервный вариант. В Dialogflow ES вы можете установить порог машинного обучения на уровне агента, тогда как в Dialogflow CX вы можете установить его на уровне Потока (см. Рисунок A-4). Это очень удобно при создании больших агентов, так как вы не хотите, чтобы потоки ломали части друг друга.


Рисунок A-4. Порог ML на уровне Потока можно найти на экране Настройки

Обработчик состояния может завершить поток (таким образом, он вернется к следующему или предыдущему потоку), или вы можете завершить весь сеанс агента. Мы погрузимся в обработчики состояний через минуту.

Страницы

Разговор Dialogflow CX (сеанс) можно описать и визуализировать как конечный автомат. Подумайте о конечном автомате как о торговом автомате. У него есть состояния: Выключен, Ожидание монет, Выбор конфеты, Выдача конфеты. Страницы — это состояния для сеанса Dialogflow CX!

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


Рисунок A-5. Страницы в Dialogflow CX

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

Эта концепция позволит вам создавать более крупных агентов со многими страницами и несколькими сменами реплик.

Страницы содержат выполнения (входные диалоги и веб-перехватчики), параметры и обработчики состояний (например, маршруты намерений, условия или события).

Обработчики состояний

Разговор в Dialogflow ES можно было контролировать, устанавливая контексты, события и намерения. Это хорошо работало для простых агентов, но могло стать проблематичным при создании больших агентов, так как сохранение контекста в Dialogflow ES не позволяло иметь много смен реплик, а намерения не являются многоразовыми (поскольку все, как контекст, события, параметры и выполнение, привязано к намерению).

В Dialogflow CX управление разговором происходит через Обработчики состояний, которые позволяют вам создавать различные маршруты перехода на другую страницу Dialogflow CX, включая создание условных переходов (для ветвления разговоров). Чтобы обработчик был оценен, он должен находиться в области видимости. Область видимости обработчика — это важный и мощный инструмент, который помогает вам контролировать разговор. Управляя областью видимости обработчика, вы можете контролировать разговор следующими способами:

  • Маршруты намерений: Когда намерение может быть сопоставлено
  • Маршруты условий: Когда условие должно быть проверено
  • Обработчики событий: Когда определенное событие может быть обработано
  • Переходы страниц: Когда происходит переход страницы
  • Статическое выполнение: Когда предоставляется статический ответ выполнения
  • Динамическое выполнение: Когда вызывается веб-перехватчик выполнения для динамических ответов

Функции контакт-центра

Всего одним щелчком мыши вы можете превратить своего агента в телефонный опыт, интегрировав его с выбранной вами системой IVR. Dialogflow CX предоставляет функции для вмешательства (barge-in) (для прерывания потока), передачи живому агенту (для эскалации разговора сотруднику колл-центра), двухтонального многочастотного набора (DTMF, чтобы позволить вам использовать цифровую клавиатуру на вашем телефоне, например, для предоставления числовых опций) и встроенные интеграции телефонии.

Ключи шифрования, управляемые клиентом (CMEK)

По умолчанию Google Cloud автоматически шифрует данные с использованием ключей шифрования, управляемых Google. Если у вас есть специфические требования соответствия или нормативные требования, связанные с ключами, которые защищают ваши данные, вы можете использовать ключи шифрования, управляемые клиентом (CMEK). Все данные агента Dialogflow CX в состоянии покоя (когда данные хранятся на компьютере/хранилище в любой форме) и данные в использовании (когда данные активны, например, обновлены, обработаны, стерты, доступны или прочитаны системой) могут быть защищены с помощью CMEK.

На момент написания, когда CMEK включен, функции Версии, История разговоров и Данные адаптации речи будут отключены.

В чем разница между продуктами

С обоими продуктами, Dialogflow ES и Dialogflow CX, вы, скорее всего, сможете создать одинаковых чат- и голосовых ботов для ваших конечных пользователей, хотя определенные функциональные возможности улучшены или работают немного иначе в Dialogflow CX.

Многие функции работают аналогично в Dialogflow CX; подумайте о Проверке агента, Анализе настроения и Автоматической адаптации речи. Давайте пройдемся по концепциям, которые мы знаем из Dialogflow ES, и посмотрим, чем они отличаются в Dialogflow CX.

Агенты

Агент Dialogflow CX — это виртуальный агент, который обрабатывает разговоры с вашими конечными пользователями. Подобно агентам Dialogflow ES, агента Dialogflow CX можно сравнить с агентом колл-центра. Вы обучаете их обоих обрабатывать ожидаемые сценарии разговора, и ваше обучение не должно быть чрезмерно явным. Однако агенты в Dialogflow CX могут работать по-другому или немного иначе настроены:

  • В Dialogflow ES вы можете создать только одного агента Dialogflow на проект Google Cloud. В Dialogflow CX вы можете создать несколько агентов на проект.
  • При настройке агента в Dialogflow CX вам нужно будет явно привязать его к местоположению. Вы также можете создать агента Dialogflow ES в разных регионах, но в CX больше регионов на выбор, и больше паритета функций между функциями Dialogflow CX в разных регионах. Когда вы создаете чат-ботов для финансовых услуг и вам нужно будет соответствовать GDPR, вы можете захотеть выбрать Dialogflow CX.

NLU

Dialogflow CX усовершенствовал свой NLU. Хотя Dialogflow ES популярен благодаря выдающимся результатам NLU, наблюдается заметное улучшение качества за счет основывания NLU на языковой модели BERT.

Аналитика

Как и Dialogflow ES, консоль Dialogflow CX предоставляет панель аналитики, которая показывает различную статистику запросов и ответов агента. Основное отличие заключается в том, что вы можете детализировать взаимодействия Speech to Text и Text to Speech; см. Рисунок A-6.


Рисунок A-6. Аналитика в Dialogflow CX

Сущности

Типы сущностей используются для контроля того, как извлекаются данные из ввода конечного пользователя. Сущности Dialogflow CX очень похожи на сущности Dialogflow ES. Однако Dialogflow CX также имеет сеансовые сущности. Сеансовые сущности могут расширять или заменять пользовательские типы сущностей и существуют только во время сеанса, для которого они были созданы. Все данные сеанса, включая сеансовые сущности, хранятся Dialogflow в течение 20 минут.

Намерения

Намерение категоризирует намерение конечного пользователя для одного шага разговора. Намерения были значительно упрощены в Dialogflow CX. См. Рисунок A-7.


Рисунок A-7. Dialogflow CX упрощает намерения, и поэтому они являются многоразовыми
  • Это больше не строительный блок для управления разговором. Dialogflow CX использует намерения только для сопоставления того, что говорят пользователи.
  • В Dialogflow ES вам нужно было привязать все к намерению (параметры, события, выполнение и т. д.). Намерения в Dialogflow CX содержат только обучающие фразы и поэтому являются многоразовыми. Он больше не контролирует разговор.
  • В Dialogflow CX намерения могут быть частью обработчика состояния для маршрутизации на следующую активную страницу или выполнение.

Выполнение и веб-перехватчики

Для шага разговора агента агент должен ответить конечному пользователю ответом на вопрос, запросом информации или завершением сеанса. Возможно, ответ агента должен быть динамическим путем извлечения информации из бэкэнд-сервиса (например, базы данных или веб-сервиса).

  • В Dialogflow ES выполнениями являются веб-перехватчики. В Dialogflow CX выполнениями могут быть статические входные диалоги (и они могут содержать условную логику), предустановки параметров для переопределения значений параметров, а также могут означать динамические веб-перехватчики.
  • Веб-перехватчики Dialogflow CX похожи на веб-перехватчики Dialogflow ES, за исключением того, что поля запроса и ответа были изменены для поддержки функций CX. Это означает, что при работе с API Dialogflow вам, скорее всего, потребуется переименовать свойства ответа или углубиться в объекты.

API

Dialogflow CX также имеет готовые интеграции, которые можно включить одним щелчком переключателя. Однако на момент написания основное внимание в настоящее время уделяется интеграциям телефонии. Если вам нужны интеграции для популярных платформ социальных сетей и так далее, вы можете создать интеграцию вручную с помощью REST, gRPC или клиентских API для Dialogflow CX.

Клиентские библиотеки работают аналогично библиотекам для Dialogflow ES, с оговоркой, что есть незначительные изменения в настройке агента (так как вам также нужно будет указать идентификатор агента и местоположение агента), а объекты запроса и ответа будут немного отличаться для поддержки новых функций Dialogflow CX.

Обработка ошибок

Обработка ошибок в Dialogflow CX была улучшена:

  • В Dialogflow ES, когда конечный пользователь говорил что-то неожиданное, Dialogflow сопоставлял это с простыми резервными намерениями; в Dialogflow CX в рамках активной страницы могут быть сопоставлены только намерения, условия или события. Вы действительно можете четко направить разговор. Каждая страница имеет специальные сообщения об ошибках, которые специфичны для страницы.
  • В Dialogflow ES ошибки веб-перехватчика были тихими для агента. В Dialogflow CX они явные и находятся внутри агента, так как они вызывают события, поэтому вам не нужно взаимодействовать с веб-перехватчиком.

Когда использовать Dialogflow CX против Dialogflow ES?

Когда вы фрилансер, стартап или малый бизнес, когда вы создаете одного чат- или голосового бота, например, для Google Assistant или создаете бота FAQ, Dialogflow Essentials может быть лучшим выбором для вас. Этот инструмент часто выбирают за его простоту.

Когда вы корпоративный клиент, создающий большую и сложную платформу чат-ботов или клиентский опыт контакт-центра, когда регионализация данных для вас критична (например, из-за GDPR) или ваш разговор требует множества смен реплик и ветвлений диалога, Dialogflow CX — это инструмент для использования. Этот инструмент удовлетворяет потребность бизнесов в создании более сложных чат- и голосовых ботов для контакт-центров.

Резюме

Dialogflow CX — это отдельный продукт, который будет сосуществовать с Dialogflow Essentials. Разработчики и бизнесы могут выбрать, какой набор для создания ботов подходит им.

Это приложение по Dialogflow CX поделилось следующим:

  • Почему Google Cloud создал Dialogflow CX и где он подходит.
  • Новые концепции, которые введены в Dialogflow CX, такие как Потоки, Страницы, Обработчики состояний, функции контакт-центра и ключи шифрования, управляемые клиентом.
  • Различия между обоими продуктами для агентов, NLU, аналитики, сущностей, намерений, выполнений, API и обработки ошибок.
  • Мы завершили это приложение выводом о том, когда использовать Dialogflow CX по сравнению с Dialogflow ES и наоборот.

Дополнительные материалы

Предыдущая глава

Другие статьи по этой теме: