Перейти к основному содержимому

Тестовый виджет

Тестовый виджет NLU позволяет протестировать распознавание интентов и сущностей во фразах. Чтобы открыть тестовый виджет, перейдите в раздел NLU → Интенты или NLU → Сущности и нажмите Тестировать в правом нижнем углу. Введите фразу, которую вы хотите проверить, и нажмите Enter.

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

Интенты

Результат тестирования содержит список всех интентов, которые были распознаны во фразе. Каждому интенту соответствует вес от 0 до 1 — степень уверенности NLU в том, что фраза действительно его содержит.

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

  • Если вы используете изменение веса паттернов при помощи элемента $weight, то вес интента может оказаться больше 1.

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

подсказка
При необходимости алгоритм выбора интента, который должен сработать в сценарии, можно переопределить при помощи $context.nBest и обработчика selectNLUResult.

Слоты

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

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

Правила классификации

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

Правила не настроеныПравила не выполненыПравила выполнены

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

Результаты выполнения правил классификации

Сопоставление тренировочных фраз

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

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

Нажмите на слово во фразе, чтобы увидеть результаты его анализа:

  • norm — нормализованное представление слова.
  • lemma — словарная форма слова (лемма).
  • weight — вес слова.
  • POS — часть речи.
  • punct — является ли слово знаком пунктуации.
  • pattern — является ли слово паттерном.
  • type — тип правила, по которому выполнено сопоставление.
  • inSeqNum — номер сопоставления в последовательности. Если сопоставлены два слова подряд, то значение будет 2, и так далее.
  • input aligned weight — вес сопоставления. Рассчитывается как произведение веса слова, веса последовательности и веса типа сопоставления.

Сущности

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

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