1. All Collections >
  2. Интеграции >
  3. Диалог >
  4. Dialogflow: Управление намерениями

Dialogflow: Управление намерениями

Avatar
Susan Swier
менее минуты чтения

Что такое Intent?

Определение Intent в Dialogflow:

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

Основное намерение содержит следующее:

  • Тренировочные фразы - Это пример фразы для того, что могут сказать конечные пользователи. Когда выражение конечного пользователя похоже на одну из этих фраз, Диалог соответствует намерению.

Шаблонные фразы будут устаревать и игнорироваться во время обучения. Узнайте больше здесь.

  • Action - Вы можете определить действие для каждого намерения. При совпадении намерений Диалог предоставляет действие вашей системе, и вы можете использовать действие, чтобы инициировать определенные действия, определенные в вашей системе.

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

  • Ответы - Вы определяете текстовые, речевые или визуальные ответы для возврата конечному пользователю. Они могут дать ответы конечному пользователю, запросить дополнительную информацию у конечного пользователя или прервать разговор.

Более сложные намерения могут также содержать следующее:

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

  • События: Используя события, вы можете вызывать намерение на основе произошедшего, а не на основе того, что сообщает конечный пользователь.

Намерения могут быть вызваны на основе ваших контактов' Управление страной и Языком. Если ваш контакт имеет значение страны или языка в их контактных данных, намерения могут быть вызваны в зависимости от различных значений страны и языка.

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

Шаг 1: Войти в Диалог

Перейдите в консоль Диалог и войдите в систему с учётными данными пользователя.

Шаг 2: Перейдите к Намерениям.

Выберите агента, который вы хотели бы настроить и выберите в боковом меню навигации

Все намерения и намерения по умолчанию будут перечислены в этом представлении.

Намерения по умолчанию.

При создании агента для вас будут созданы два намерения по умолчанию.

  • Интент приветствия по умолчанию: Это намерение совпадает, когда контакт начинает разговор с платформой. Это намерение должно вернуть ответ, который позволит конечному пользователю знать, что делает ваш агент или что он может сказать для начала разговора.

  • Резервная копия по умолчанию: Это намерение совпадает, когда агент не может сопоставить конечное пользовательское выражение с любым другим намерением.

Стандартное приветствие по умолчанию

Совет: Узнайте больше о определении стандартного приветствия в Dialogflow.

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

См. следующий пример:

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

Стандартное резервное намерение

Совет: Узнайте больше о определении стандартного резервного намерения в Dialogflow.

Если входящее сообщение или событие не совпадают ни с одним из существующих намерений, вместо этого будет сопоставлен резервный намерение.

См. следующий пример:

Предложение: Если Агент не может понять сообщение, он должен предложить передать разговор к живому оператору для помощи с проблемой пользователя.

Создание намерения.

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

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

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

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

Давайте разобьем это на более простые шаги:

  1. Создать намерение для запроса идентификатора клиента.

  2. Создайте намерение, чтобы получить идентификатор клиента.

  3. Сохраните идентификатор клиента как настраиваемое поле на respond.io.

  4. Добавьте тег.

  5. Передайте разговор живому оператору.

  6. Сообщите живому оператору.

  7. Отключите бота.

Ожидаемый результат.

Создание базового намерения.

Шаг 1: Создать намерение.

Перейдите в консоль Dialogflow и нажмите Намерения в боковом навигационном меню. Нажмите ➕.

или СОЗДАТЬ НАМЕРЕНИЕ в верхней части модуля.

Шаг 2: Назовите ваше намерение.

Введите имя для вашего намерения. Ваше намерение должно представлять выражения конечного пользователя, которые он распознает.

Для этого сценария мы назовем его order_status_enquiry.

Шаг 3: Включите учебные фразы.

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

Например:

где мой заказ
не могли бы вы помочь мне проверить мой заказ, пожалуйста
каков статус моего заказа

Шаг 4: Создание реакции

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

Прокрутите страницу вниз до раздела Ответы и введите ответ. Вы можете добавить текстовый ответ или пользовательскую полезную нагрузку. Для данного сценария текстовый ответ будет выполнять поставленную задачу.

Советы:
- Вы можете отправить несколько ответов одновременно для лучшей читаемости.
- Вы можете добавить несколько вариантов ответа и они будут случайным образом отправлены в Контакты.

Реакция, которую мы будем использовать для достижения этой цели:

Приношу извинения, если ваш заказ задерживается.
Могу я узнать ваш идентификатор клиента, пожалуйста?

Совет: Узнайте больше о шаблонах ответов здесь.

Создание сущности

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

На основании приведенного выше сценария мы назовем этот объект customerId и он будет использоваться для хранения идентификатора клиента.

Шаг 1: Создание сущности

Перейдите в модуль сущностей. Нажмите на ➕ или СОЗДАТЬ СУЩНОСТЬ.

Шаг 2: Назовите сущность

Для этого примера мы назовем его customer_id.

Шаг 3: Введите возможные значения

Сущность должна принять строку длиной 5 целых чисел. Регулярное выражение будет применено для проверки значения.

Для этого примера значение будет (\d){5} , который принимает любую строку с 5 цифрами.

Совет: Узнайте больше о регулярных выражениях здесь.

Совет: Узнайте больше о сущностях здесь.

Создание намерения с параметрами

Шаг 1: Создать последующее намерение.

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

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

По умолчанию, контекст и действие будут заполнены по умолчанию, чтобы намерение работало последовательно.

Шаг 2: включение учебных фраз

Фразы, которые следует включить в это намерение, скорее всего, будут содержать идентификатор клиента. Мы можем ввести фразу и выделить текст, который может быть идентификатором клиента. Выберите ранее созданную сущность и аннотируйте текст с её помощью.

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

Совет: Узнайте больше о аннотировании обучающих фраз здесь.

Шаг 3: Создание ответа намерения

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

Прокрутите вниз до раздела Ответы и введите ответ. Добавьте Текстовый ответ.

Ответ, который мы построим для этого намерения, будет следующим:

Спасибо за предоставление идентификатора клиента. Ваш вопрос передан нашим операторам.

Сохранение значения как настраиваемого поля

При ответе контакта со своим идентификатором клиента, значение может быть сохранено в виде настраиваемого поля на платформе respond.io.

Чтобы сохранить значение в настраиваемое поле, пожалуйста, убедитесь, что настраиваемое поле создано на платформе respond.io.

Чтобы сохранить значение, добавьте параметр RB_FIELD_{custom field's name}. В этом случае параметр будет RB_FIELD_customerid и установит сущность $customer_id в качестве значения.

Добавление тега

Добавьте параметр RB_ADDTAGS и установите сущность $customer_id как значение

Передача диалога

Теперь мы хотим передать разговор оператору. Это можно сделать с помощью другого параметра RB_USER_ASSIGN, установив в качестве значения электронную почту пользователя.

Отключение бота

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

Для этого мы добавим другой параметр, RB_BOTSTATUS и установим FALSE в качестве значения.

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

Обработка местоположения

После получения местоположения от контакта в Диалог будет отправлено событие типа LOCATION. Вы можете добавить МЕСТОПОЛОЖЕНИЕ к событиям, чтобы активировать соответствующие триггеры.

Проверьте другие параметры, доступные для использования в Диалоге:

Тестирование намерения

Если вам нужно протестировать намерение, используйте панель тестирования, расположенную в правой части консоли Диалога.

Удаление намерения

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

Поделиться этой статьей
Telegram
Facebook
Linkedin
Twitter

Не удается найти то, что вы ищете? 🔎