Nlp 如何实施";“改变主意”;在Dialogflow中为任何给定目的进入机器人或对话的能力?

Nlp 如何实施";“改变主意”;在Dialogflow中为任何给定目的进入机器人或对话的能力?,nlp,chatbot,dialogflow-es,Nlp,Chatbot,Dialogflow Es,考虑一个场景,其中用户想要点餐: 用户:我想要一个汉堡、一杯橙汁和一杯咖啡 机器人:你想吃蔬菜汉堡还是非蔬菜汉堡 用户:蔬菜汉堡 用户:对不起,我希望它是非素食的 Bot:(通常我们如何处理这种想法的改变而不必从头开始谈话) 在这一部分中,我已经实现了一些类似于公共汽车票预订的功能,这个机器人似乎还记得之前的订单,即素食汉堡,或者最后如何陷入默认意图或后备意图,无论哪个是合适的。但我想知道是否有办法让机器人知道用户“改变了主意”(希望有可能使用或操纵上下文)现在想要一个非素食汉堡 我们能不能制定

考虑一个场景,其中用户想要点餐:

用户:我想要一个汉堡、一杯橙汁和一杯咖啡

机器人:你想吃蔬菜汉堡还是非蔬菜汉堡

用户:蔬菜汉堡

用户:对不起,我希望它是非素食的

Bot:(通常我们如何处理这种想法的改变而不必从头开始谈话)

在这一部分中,我已经实现了一些类似于公共汽车票预订的功能,这个机器人似乎还记得之前的订单,即素食汉堡,或者最后如何陷入默认意图或后备意图,无论哪个是合适的。但我想知道是否有办法让机器人知道用户“改变了主意”(希望有可能使用或操纵上下文)现在想要一个非素食汉堡

我们能不能制定出一个后续意图,识别像抱歉这样的词,然后识别像type这样的实体,即这里的non-veg。最佳做法是什么?因为从用户体验的角度来看,从头开始对话似乎不是一个好主意

你好,TGW

您有两种选择,可以将您的意向分为搜索意向和图书意向,例如search.sala和buy.sala意向,或者在实际发送到履行之前有一个确认步骤

如果您选择将您的意图拆分为2,则类似的流程也适用于您:

  • 如果食物类型是有限的,则使用选项创建一个实体
  • 添加您的search.sala意图,该意图应该包含用户订购沙拉时所说的大部分内容。记住从第1步开始合并实体
  • 将后续意图添加到搜索中。添加意图,然后从选项中选择自定义
  • 在这个新创建的后续意图中,添加要用于更新搜索、启用履行和保存的用户所说的
  • NB:确保新创建的意图在in上下文中以*-followup结尾,而在search.intent的Out上下文中也以*-followup结尾。Dialogflow将根据用户输入的内容自动更新参数


    第二个选项与此类似,您可以添加确认步骤作为搜索的后续步骤。沙拉意图并仅对确认意图启用履行。

    您可以使用上下文处理此情况,还可以在向服务器提交请求之前添加确认流是,这是我需要知道的,我们如何操纵上下文并使用它来更改实体的值。发送服务器请求之前会出现提示,但我不明白如何使用上下文来处理这种情况。上下文用于管理会话状态或链接会话。在您的情况下,当用户说“我想点一个汉堡、一杯橙汁和一杯咖啡”,然后将输出上下文设置为“orderstart”,然后创建将输入上下文配置为“orderstart”的意图。如果您想通过背驮进行一些操作,也可以在上下文中背驮数据,您的意思是,在同一个对话中,我可以把蔬菜汉堡改成非蔬菜汉堡吗?这就是我想问的问题,我无法从文档中理解。唯一的问题是我需要创建一个跟踪意图,检查用户对每个意图的更改,管理这么多的跟踪意图变得很困难