Извлечение / проверка сущности в Bot Composer

У меня есть задача ввода текста композитора со следующими настройками. Я делаю бота, тестирующего возможности интеграции Луиса с ботом. Проблема, с которой я столкнулся, заключается не в самом распознавании сущностей; скорее проверка сущности в задаче ввода для сущности. Я замечаю это только при использовании задачи ввода текста и проверке сущности, работающей для других задач (в частности, datetime).

Задача ввода пользователем текущей сущности

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

WAI: Я говорю что-то вроде "Я хочу записаться на прием, мой контактный номер (800)-234-5678". Это не только запускает мою модель намерений и пропускает вопрос ввода пользователя, где я прошу номер телефона пользователя (поскольку они уже предоставили его), а переменная talk.phoneNumber - (800) -234-5678

Не WAI: я говорю что-то вроде "Я хочу записаться на прием, мой контактный номер abc". Это запускает мою модель намерения по желанию, но пропускает вопрос ввода пользователя, где я прошу номер телефона пользователя (поскольку он думает, что они уже предоставили его), а переменная talk.phoneNumber - abc. В идеале, я бы подумал, что здесь должна произойти проверка, и она задаст вопрос: "Какой номер телефона подходит для нашего офиса...", поскольку abc не является номером телефона.

Для справки, это документация, которой я следую:https://docs.microsoft.com/en-us/composer/how-to-define-advanced-intents-entities

Я рассматривал валидатор регулярных выражений как вариант, потому что номер телефона - это такая тривиальная сущность, которую можно легко определить, но что-то более сложное / разнообразное (например, географическое положение, валюта и т. Д.) Будет лучше обрабатываться любыми словарями, которые Microsoft имеет для встроенные сущности. Я могу видеть необработанные данные, когда я печатаю высказывание, которое показывает, что никакая сущность не подбирается (поэтому ЧТО-ТО работает в фоновом режиме). Мне просто любопытно, могу ли я использовать эту функциональность в задаче составителя ботов.

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

Я предполагаю, что любое встроенное распознавание сущностей, которое Microsoft имеет для своих встроенных сущностей здесь https://docs.microsoft.com/en-us/azure/cognitive-services/luis/luis-reference-prebuilt-entities, в значительной степени превосходит любое регулярное выражение, которое я могу придумать, и какой-то тип встроенной проверки будет удобен для более сложных ботов.

0 ответов

Другие вопросы по тегам