Можно ли использовать одни и те же обучающие фразы в разных целях? - PullRequest
0 голосов
/ 18 апреля 2020

Я создаю чатбота с помощью Dialogflow. У меня есть запасной вариант, который задает пользователям случайные вопросы.

намерение отступления

Например,

Bot:"Do you like coffee?" 
User: Yes
Bot: Good, I usually prefer tea.
But  it gives the same response with a different question
Bot: "Do you like sports?"
User: Yes
Bot: I usually prefer tea.

Я использовал «Fallback-follow-up» в обоих случаях, но до сих пор ничего не произошло работал до сих пор.

Intent кофе

Sports Intent

1 Ответ

0 голосов
/ 19 апреля 2020

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

Хотя вы говорите, что использовали контекст Fallback- follow up в обоих намерениях - у вас его нет. Один запускается только с RandomBotQuestions-Doyoulikedrinkingcoffee-followup, а другой - с RandomBotQuestions-Doyoulikefootballbetterthanbasketball-followup Context.

Вы не показали, как вы устанавливаете эти контексты, но, учитывая ответы от Fallback Intent, я так понимаю вы думаете, что они каким-то образом установлены в зависимости от того, какой ответ отправляется обратно.

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

Если вы хотите узнать, какой ответ вы отправляете обратно, вы должны создать Fulfillment, который выбирает случайный ответ и сохраняет тот ответ, который был отправлен в контексте. Затем в более позднем Намерении и его выполнении вы можете использовать эту информацию, а также то, как пользователь ответил, чтобы получить дальнейший ответ.

...