Dialogflow es 如何在api.ai中重用意图

Dialogflow es 如何在api.ai中重用意图,dialogflow-es,actions-on-google,Dialogflow Es,Actions On Google,我需要一些帮助,因为我不太理解api.ai的“上下文”。我甚至不知道“上下文”是否能解决问题 假设你没有什么后续的意图,你从一条开始,有两条路径应该在一个点上再次相交。我只想为这个交点创建一个意图(我想为这个意图创建两个父对象)。我不想创建两个相同的意图,我想重用这个意图 可能吗?我查看了文档、论坛,甚至在这里都没有找到任何东西。简短回答:是的。理解为什么是“是”对于较长的答案很重要 意图不会绑定到特定路径,而是在满足条件时触发。在最简单的形式中,这些条件是用户所说的短语。更复杂的情况包括由设备

我需要一些帮助,因为我不太理解api.ai的“上下文”。我甚至不知道“上下文”是否能解决问题

假设你没有什么后续的意图,你从一条开始,有两条路径应该在一个点上再次相交。我只想为这个交点创建一个意图(我想为这个意图创建两个父对象)。我不想创建两个相同的意图,我想重用这个意图


可能吗?我查看了文档、论坛,甚至在这里都没有找到任何东西。

简短回答:是的。理解为什么是“是”对于较长的答案很重要

意图不会绑定到特定路径,而是在满足条件时触发。在最简单的形式中,这些条件是用户所说的短语。更复杂的情况包括由设备触发的特定操作(如欢迎操作)或特定上下文处于活动状态。你可以把它们结合起来——如果一个短语是在contextA处于活动状态时说的,那么可能会激发一个意图,而如果一个短语是在contextB处于活动状态时说的,那么可能激发另一个意图。意图列出必须处于活动状态才能触发的上下文

这就引出了一个较长的答案:是的。您需要做的是让每个“分支”由一组特定的上下文管理,但是“连接点”不需要这些上下文中的任何一个

让我们想象一下,你正在写一个动作,让你从一家冰淇淋店订购一件商品。(单个项目,因为我不想陷入订单跟踪的复杂性等)您可以有以下意图:

  • 欢迎光临

    触发:欢迎行动

    送信人:“欢迎。你要冰淇淋蛋卷还是苏打水

  • 冰淇淋,开始吧

    触发:用户说“冰淇淋”

    听起来不错。什么味道

    背景:冰淇淋

  • 冰淇淋口味

    触发:上下文=冰淇淋,用户提供有效口味(香草或巧克力)

    我最喜欢的。多大尺寸

    背景:冰淇淋

  • 冰淇淋

    触发:context=冰淇淋,用户给出有效尺寸(儿童、小型、中型或大型)

    发送“那么你想要一个冰淇淋蛋卷,对吗?”

    设置上下文:有序

  • 苏打水,开始

    触发:用户说“苏打”

    我也渴了。什么样的

    背景:苏打水

  • 苏打味

    触发者:context=soda和提供有效soda的用户

    送:不错的选择。多大尺寸

    背景:苏打水

  • 苏打水

    触发者:context=soda,用户给出有效大小(小、中、大)

    发送“所以你想要一个。是这样吗?”

    设置上下文:有序

  • 下单

    触发:用户表示“是”(确认订单),上下文为“已订单”

    发送:“你想要餐巾纸吗?”

等等等等等等

在这种情况下,我们可以分为两条路径(每条路径都有相似但不完全相同的可能响应),然后与“有序”上下文一起返回


(我应该补充一点,这只涵盖了有关上下文的基本知识。还有更多内容,包括上下文的生存期、如何处理多个活动上下文以及可以在上下文中设置的属性。)

简短回答:是。理解为什么是是对较长的回答很重要

意图不受特定路径的约束-它们在满足条件时触发。最简单的形式是,这些条件是用户说出的短语。更复杂的条件包括由设备触发的特定操作(如欢迎操作)或特定上下文处于活动状态。您可以组合这些-如果在上下文a处于活动状态时说一个短语,则可能触发一个意图,而如果说上下文B处于活动状态,则可能触发另一个意图。意图列出必须处于活动状态才能触发的上下文

这导致了一个较长的答案:是的。您需要做的是让每个“分支”由一组特定的上下文管理,但是“连接点”不需要这两种上下文中的任何一种

让我们想象一下,你正在写一个动作,让你从一家冰淇淋店订购一件商品。(一件商品,因为我不想陷入跟踪订单的复杂过程,等等),你可以有以下意图:

  • 欢迎光临

    触发:欢迎行动

    发送:“欢迎。你要冰淇淋蛋卷还是苏打水

  • 冰淇淋,开始吧

    触发:用户说“冰淇淋”

    听起来不错。什么味道

    背景:冰淇淋

  • 冰淇淋口味

    触发:上下文=冰淇淋,用户提供有效口味(香草或巧克力)

    我的最爱。多大尺寸

    背景:冰淇淋

  • 冰淇淋

    触发:context=冰淇淋,用户给出有效尺寸(儿童、小型、中型或大型)

    发送“那么你想要一个冰淇淋蛋卷,对吗?”

    设置上下文:有序

  • 苏打水,开始

    触发:用户说“苏打”

    我也渴了。什么样的

    背景:苏打水

  • 苏打味

    触发者:context=soda和提供有效soda的用户

    发送:不错的选择。多大尺寸

    背景:苏打水

  • 苏打水

    触发者:context=soda,用户给出有效大小(小、中、大)

    发送“那么你想要一个,对吗?”

    设置上下文:有序

  • 下单

    触发:用户表示“是”(确认订单),上下文为“已订单”

    发送:“你想要餐巾纸吗?”

等等等等等等

在这种情况下,我们可以分成两条路径(每条路径都有相似但不完全相同的可能响应),然后与t一起返回