Инструмент миграции Dialogflow в Action Builder

Actions Builder — лучший способ создания приложений для Google Assistant, поскольку он помогает создавать диалоговые действия упрощенным и оптимизированным способом. Actions Builder — это веб-среда IDE, интегрированная в консоль Actions и предоставляющая следующие функции:

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

Если у вас есть диалоговое действие, созданное с помощью Dialogflow, вы можете перенести свой проект в Actions Builder в консоли Actions.

Причины миграции

Хотя нет необходимости переносить агент Dialogflow и ваше действие будет продолжать работать на устройствах Google Assistant, использование Actions Builder и Actions SDK дает преимущества.

  • Улучшенные инструменты с помощью Actions SDK и CLI.

    • Actions SDK и CLI позволяют создавать сложные проекты и легко сотрудничать с вашими командами. Дизайнеры разговоров могут сначала построить поток разговора в Actions Builder. Затем разработчики могут загрузить проект в файловую структуру и продолжить создание функциональности, используя свои любимые инструменты разработки и системы контроля версий. Вернув проект в Actions Builder, другие участники команды смогут продолжить создание, тестирование и развертывание действия.
  • Лучшая интеграция с лучшими практиками дизайна разговоров

    • Настройка резервных намерений в каждой сцене позволяет вам предоставлять ответы без ввода и отсутствия совпадений в любой момент разговора.
    • Легкое сотрудничество между дизайнерами и разработчиками благодаря графическому методу создания диалогового интерфейса на основе состояний.
  • Упрощенная локализация

    • Весь локализуемый контент для намерений, сцен и типов (например, обучающие фразы, подсказки и синонимы типов) можно редактировать на одной странице.

Улучшения в реализации диалога

Actions Builder вносит множество улучшений в консоль Actions и упрощает процессы разработки. В этом разделе описывается, как Actions Builder оптимизирует и упрощает процесс разработки вашего действия.

Возможность повторного использования намерения

В Dialogflow логика веб-перехватчика привязана к намерениям, что означает, что намерения нельзя повторно использовать с другими веб-перехватчиками. Если вы хотите использовать одни и те же обучающие фразы, но иметь другую логику веб-перехватчика, вам необходимо создать дополнительные намерения, которые ссылаются на разные имена обработчиков для каждого случая логики веб-перехватчика.

В Actions Builder намерение включает в себя обучающие фразы и сущности, но веб-перехватчик независим. Такой подход означает, что вы можете использовать разные обработчики веб-перехватчиков для одной и той же цели, что дает вам большую гибкость.

Улучшенная визуализация хода разговора.

В Dialogflow контексты указывают, какие намерения с большей вероятностью совпадут в определенный момент разговора.

Вместо контекстов Actions Builder использует сцены для определения того, какие намерения доступны в разных частях разговора.

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

Пользовательский интерфейс Builder позволяет легко понять, как переходы соединяют сцены. На рисунке 1 сцена guess_game переходит в сцену suggested_new_game (1). Вы также можете увидеть два доступных намерения внутри сцены: generic_no и generic_yes . В зависимости от того, какое намерение соответствует, сцена suggested_new_game переходит либо в сцену show_menu , либо в сцену routing_game (2).

Рисунок 1. Графическое представление сцены с переходом сцены (1) и обработкой намерений (2).

Настраиваемые подсказки на основе сценариев

В Dialogflow вы можете отправить простой ответ в веб-перехватчике или определить статический ответ в консоли Dialogflow.

Actions Builder представляет концепцию очереди подсказок . Вы можете определить подсказки в нескольких разделах сцены, а также в веб-перехватчике. Все запросы добавляются в очередь запросов, объединяются в один ответ и доставляются пользователю. Этот подход позволяет вам собирать ответы на основе того, что пользователи сказали или сделали, а не только на основе намерения, которое они совпали.

Например, если в сцене и веб-перехватчике определены подсказки, подсказка веб-перехватчика добавляется в очередь подсказок первой, а подсказка сцены добавляется второй.

В следующем списке показано, где можно определить подсказки в Actions Builder, а также порядок их добавления в очередь подсказок:

  1. При входе
  2. Условия
  3. Заполнение слотов
  4. Сцены

Рекомендации по созданию встроенных диалогов

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

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

В Actions Builder в новые проекты автоматически включаются два отдельных глобальных намерения: NO_MATCH и NO_INPUT .

Когда Assistant NLU соответствует системному намерению NO_MATCH или NO_INPUT , пользователю отправляется соответствующий запрос по умолчанию или настраиваемый запрос. Как только NO_MATCH или NO_INPUT сопоставляются три раза, соответствующее последнее сообщение отправляется пользователю, и Помощник завершает разговор вашим действием.

В каждую сцену можно добавить три обработчика NO_MATCH и NO_INPUT . Эта функция позволяет использовать настраиваемые подсказки для конкретной обработки ошибок вместо общего отката, вызванного отсутствием совпадения или отсутствием ввода со стороны пользователя.

Рисунок 2. Три обработчика намерений NO_MATCH , назначенные одной сцене.