Эта статья была написана нашим консультантом Если у вас остались любые вопросы по ней – направляйте их в виджет вашего личного кабинета (Твой гид по платформе) |
Для оптимизации и упрощения работы бота, и во избежание проблем с редактором при работе с огромными сценариями, можно разбить один сценарий на модули – отдельные сценарии.
Модуль – это отдельный сценарий, переход к которому осуществляется с помощью блока результата. Все заданные пользователем переменные автоматически переносятся в следующий модуль при переходе.
Классическая сборка | Модульная сборка | |
---|---|---|
Плюсы |
|
|
Минусы |
|
|
В приведенном сценарии продемонстрирована работа с переменными. Их значение также переносится в другие модули. На скриншоте ниже идет сохранение имени клиента для дальнейшего использования.
Сам переход в побочные модули происходит в блоке «Результат». Там укажите тип действия Перевод на оператора и выберите действие при переадресации Другой сценарий. Ниже укажите название самого сценария, куда произойдет переход.
Ниже отображен модуль, куда произведен переход. Переменная, сохраненная ранее будет успешно использована в модуле. Ее значение будет перенесено из основного сценария.
Эта система может быть эффективно использована для упрощения работы с большими сценариями. Чтобы эффективно разделить сценарий на модули, рекомендуется логически разбить диалог на логические части. Разберем разбиение на модули на примере реального кейса – бота для РЖД:
Для каждого вопроса выделены отдельные модули, и в каждом модуле используется отдельный агент NLU для оптимизации скорости и точности распознавания ответа.
При использовании нескольких агентов NLU в одном сценарии может наблюдаться значительное снижение в скорости ответа на вопросы с интеллектуальным принятием решения. При использовании двух и более агентов бот анализирует ответ пользователя каждым агентом поочередно, в связи с чем увеличивается задержка ответа бота. |