Тестирование сценария Агента
В этой статье описаны шаги тестирования Сценария Агента.
Для того чтобы максимально эффективно протестировать Агента, необходимо выполнить следующие шаги:
- 1.Составить максимально полный список вопросов к Агенту. Необходимо продумать, как реальный Собеседник будет формулировать вопросы, и постараться предусмотреть большинство из них. Также в список вопросов необходимо включить фразы, которые Агент не должен распознавать и должен отправлять в Fallback.
- 2.Прогнать список вопросов через Агента, проверить распознавание интентов и подсчитать процент правильных ответов Агента. Если фраза не распознается (попадает в Fallback) или попадает не в тот интент, в который должна, вписываем ее и указываем название интента, куда она должна была попасть. После того как все интенты будут проверены, нужно занести выписанные фразы в соответствующие интенты и переобучить Агента. Если нерелевантные фразы, которые Агент не должен распознавать, попадают не в Fallback, а в интенты, после завершения регрессионного тестирования следует попробовать подобрать более оптимальное значение Confidence Threshold. Подробнее в разделе Подбор оптимального значения Confidence Threshold.
- 3.После переобучения Агента снова пройтись по списку интентов и проверить каждый. Вновь подсчитать процент правильных ответов. Если интенты продолжают путаться, проверяем выборку. Если фразы в выборках разных интентов слишком похожи, нужно либо сделать выборки этих интентов более отличными друг от друга (убрать похожие формулировки, добавить больше отличающихся фраз), либо объединить путающиеся интенты в один.
- 4.Если в Диалоговом Сценарии задействованы словари, работа словарей проверяется следующим образом: нужно задать вопросы с целью попасть в конкретную ветку – одно из разветвлений с референсом либо ветка true. Если фраза попадает не в ту ветку, в которую должна, то идем в словари и проверяем, есть ли использованное в фразе слово в выборке словаря. Если нет – добавляем, если есть – проверяем, нет ли этого же слова в массивах под другими референсами (слова не должны повторяться в массивах с разными референсами).
- 5.После сохранения изменений в словарях еще раз пройтись по всем веткам и, в случае непопадания в нужную ветку, добавить недостающие слова в массивы словаря.
- 6.Также необходимо проверить работу всего функционала. Особое внимание стоит уделить слотам со сложным функционалом – Regexp, Memory.
- 7.Проверить скорость перевода на оператора, если такой переход предусмотрен.
- 8.Проверить работу внешних запросов и скорость интеграции с внешними сервисами, если они предусмотрены.
- 9.Провести тест в каждом задействованном Канале: мессенджеры, виджет и пр.
- 10.Проверить орфографию, пунктуацию и грамматику.
Важно!
Не забывайте переобучать Бота после изменений, иначе обновления не вступят в силу.