我们可以在 Google Dialogflow 中创建对话循环吗
Can we create a conversation loop in Google Dialogflow
考虑一个小任务,我们要求用户循环将水果一个一个地添加到篮子中
我为这个任务创建了一个小的 agent
intents
- 意图:
basket
- 意图:
basket-yes
(跟进)
- 意图:
basket-no
(跟进)
意图 basket
用户必须提供水果名称和数量。那么
- 如果用户说“不”,那么
basket-no
(跟进)意图被触发并且购物车完成
- 如果用户说“是”,则触发
basket-yes
(跟进)意图,这应该触发 basket
允许用户添加更多水果的意图
我已经按照上述要求为意图设置了 input/output 上下文,但对话没有朝着 basket
意图发展。我不知道这样做是否正确,甚至不知道是否可以使用 Dialogflow 来完成。
首先,请记住,输入和输出上下文并不表示 将 触发哪些 Intent,它们表示 可以 触发哪些 Intents触发。仅根据 用户所说或所做的事情 触发意图。因此,您永远不会通过更改上下文来“触发”Intent - 您可以随时评估哪些 Intents 可能有效。
仅当 所有 的输入上下文当前有效时才能触发意图 并且 用户说出与训练短语匹配的内容。因此,仅当 basket-repeat
上下文当前有效且用户说出其中一个短语(您未在屏幕截图中显示)时,才会触发您的“篮子”意图。
意图不像状态机,尽管上下文有时会帮助您以这种方式建模它们。
你可以做某种“循环”,尽管用户最终控制着你如何在这些循环中前进。虽然您不能遍历意图,但可以遍历上下文或状态,这会影响在给定时刻哪些意图可能是可接受的。并且您的提示当然应该反映您对用户的期望的循环性质。
我认为正在发生的事情是 basket-repeat
上下文从来没有设置在第一位,所以 basket
Intent 永远无法匹配。
考虑一个小任务,我们要求用户循环将水果一个一个地添加到篮子中
我为这个任务创建了一个小的 agent
intents
- 意图:
basket
- 意图:
basket-yes
(跟进) - 意图:
basket-no
(跟进)
意图 basket
用户必须提供水果名称和数量。那么
- 如果用户说“不”,那么
basket-no
(跟进)意图被触发并且购物车完成 - 如果用户说“是”,则触发
basket-yes
(跟进)意图,这应该触发basket
允许用户添加更多水果的意图
我已经按照上述要求为意图设置了 input/output 上下文,但对话没有朝着 basket
意图发展。我不知道这样做是否正确,甚至不知道是否可以使用 Dialogflow 来完成。
首先,请记住,输入和输出上下文并不表示 将 触发哪些 Intent,它们表示 可以 触发哪些 Intents触发。仅根据 用户所说或所做的事情 触发意图。因此,您永远不会通过更改上下文来“触发”Intent - 您可以随时评估哪些 Intents 可能有效。
仅当 所有 的输入上下文当前有效时才能触发意图 并且 用户说出与训练短语匹配的内容。因此,仅当 basket-repeat
上下文当前有效且用户说出其中一个短语(您未在屏幕截图中显示)时,才会触发您的“篮子”意图。
意图不像状态机,尽管上下文有时会帮助您以这种方式建模它们。
你可以做某种“循环”,尽管用户最终控制着你如何在这些循环中前进。虽然您不能遍历意图,但可以遍历上下文或状态,这会影响在给定时刻哪些意图可能是可接受的。并且您的提示当然应该反映您对用户的期望的循环性质。
我认为正在发生的事情是 basket-repeat
上下文从来没有设置在第一位,所以 basket
Intent 永远无法匹配。