Эта статья была написана нашим консультантом

Если у вас остались любые вопросы по ней – направляйте их в виджет вашего личного кабинета (Твой гид по платформе)

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

Пример перехода в модуль 

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



Сам переход в побочные модули происходит в блоке «Результат». Там укажите тип действия Перевод на оператора и выберите действие при переадресации Другой сценарий. Ниже укажите название самого сценария, куда произойдет переход.



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

Применение модульной схемы

Эта система может быть эффективно использована для упрощения работы с большими сценариями. Чтобы эффективно разделить сценарий на модули, рекомендуется логически разбить диалог на логические части. Разберем разбиение на модули на примере реального кейса – бота для РЖД:

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

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

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