我想做类似这个问题:Looping back to an intent?
当用户问“告诉我一个笑话”时,我的机器人会讲笑话(意图:smalltalk.agent.telljoke
),如果用户回答“另一个”,我想发送另一个。
我理解链接问题中的答案,如果用户说“另一个”具有repeat.smalltalk.agent.telljoke
意图中设置的特定输入上下文,我可以创建smalltalk.agent.telljoke
意图。
但我可以在smalltalk.agent.telljoke
意图中触发repeat.smalltalk.agent.telljoke
意图吗?我不是在调用webhook来获取笑话所以他们在我的smalltalk.agent.telljoke
意图的“回复”部分中,我不想在两个地方(两个意图)都写它们。 / p>
我可以将意图重定向到另一个意见吗?
我在Dialogflow Google论坛上提出了同样的问题: Looping back to an intent without repeat the responses list
答案 0 :(得分:1)
要让输入“另一个”触发笑话告诉意图(smalltalk.agent.telljoke
),只需将“另一个”添加到该意图的训练短语中。如果两者都做同样的事情,就没有必要有两个意图。
答案 1 :(得分:0)
您可以通过向<details>
意图添加输出上下文(我们将其命名为anotherJoke
)来实现,该意图可在两条消息后过期(以允许跟进smalltalk.agent.telljoke
或来自用户的ha ha ha
。
然后创建一个新的意图(可能lol
),将smalltalk.agent.anotherJoke
作为输入上下文。使此意图识别anotherJoke
,another one
等,并提供另一个意图为它设置的笑话。
这样shoot again
意图只有在触发smalltalk.agent.anotherJoke
意图后才会有优先级匹配,上下文有点将两个意图链接在一起。