Dialogflow后续意图为每个新的子意图创建新的上下文

时间:2018-02-22 04:57:07

标签: dialogflow

我正在研究对话框跟进意图。结构是这样的。

enter image description here

它为每个新意图创建新的上下文。

enter image description here

例如参见重复意图

enter image description here

当我创建任何新意图时,它会为它创建新的上下文。正如你在图像中看到的那样。当我尝试删除其中任何一个上下文时,它将该意图删除为后续意图。

所以我的问题是:

这就是对话流的工作原理或我做错了什么。

2 个答案:

答案 0 :(得分:4)

这就是Dialogflow的工作原理。你没有做错任何事。 (上下文是否会导致某种问题?)

后续意图只是用于创建单独的Intent并为其提供传入上下文的快捷方式,以确保它们只能在具有相应传出上下文的Intent之后触发。您不需要使用Followup Intents - 它们只是一种方便的方法来强制在父Intent之后触发

如果您需要在初始Intent之后或在任何时间触发Intent - 您不希望将其作为Followup Intent,只需将其设为常规Intent即可。它仍然可以在原始意图之后触发。

后续意图对于问题后的有限答案处理非常有用,但它们对所有内容都没有用,特别是如果用户可以随时进行自由格式的评论(这在对话中很常见!)。不要觉得你必须限制并使用它们。

答案 1 :(得分:2)

在Dialogflow中,上下文用于绑定意图&将用户指向某个方向。一个意图的输出转到另一个意图的输入,所以除非&直到你打电话给第一个意图,你才能打电话给第二个意图。

现在回答您的问题,通过后续意图,您可以设计可能遵循父意图的情况。您所说的是正确的,创建后续意图将自动创建新的上下文。当你尝试&删除这些自动创建的上下文,它也将删除意图作为后续意图。这就是它的设计方式,你无能为力。

虽然如果您希望将现有意图作为另一个意图的后续跟踪,您可以通过REST API执行此操作,您只需更新现有意图的“parentId”和“rootParentId”,更改将反映在用户界面上。