Приоритезация последующего намерения вместо нового в диалоговом потоке?

Я наполовину новичок в Dialogflow, извините, если это действительно просто, но я не могу нигде найти ответ. Вот моя проблема:

Я пытаюсь создать чат-бота, в котором, если пользователь говорит что-то вроде «поговори с человеком», чат-бот просто перестает разговаривать вместе. Я знаю, что самый простой способ сделать это - через сервер, но, поскольку у меня нет доступа к нему, я пытаюсь использовать обходной путь, в котором он использует последующее намерение, чтобы поймать все, что пользователь впоследствии скажет (используя @sys. любой) и не получил ответа. Это отлично работает, если он не понимает, что я говорю дальше, но если я говорю что-то, имеющее определенное намерение после этого (например, «привет»), он использует намерение приветствия вместо продолжения.

Я ищу способ расставить приоритеты для последующего намерения, чтобы он улавливал все, что говорит пользователь, вместо поиска других намерений, которые также совпадают, пока пользователь не скажет что-то вроде «поговорить с ботом».

Возможно ли это без сервера? Пожалуйста помоги!


person NyW    schedule 21.03.2018    source источник


Ответы (2)


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

  1. Добавьте исходящий контекст к приветственному намерению со сроком жизни 100. Напр. convo_started.
  2. Добавьте convo_started намерение в качестве входящего контекста для всех намерений.
  3. Когда ваше намерение агента достигнуто, сбросьте контекст до срока жизни 0, чтобы теперь запускалось только ваше последующее намерение.
person Adi.P    schedule 05.08.2020

Нет, этого невозможно добиться.

Как вы упомянули, правильный способ реализовать требуемое поведение - это перехват пользовательских запросов через ваш собственный сервер.

Сервер может быть очень простым; вы можете увидеть официальный образец передачи работы агента для возможной реализации.

person Daniel Situnayake    schedule 26.03.2018