Dialogflow es 如何使用错误的语法保存用户输入,而不使用回退意图?
我正在制作一个投诉系统,在问了一些连续的问题后,我要求用户输入他的投诉。现在用户可以输入任何类型的句子,有/没有语法错误。我想把那个抱怨的句子存储起来,不管它的语法有多糟糕。我在这里面临两个问题: 问题 (1) 当一个语法错误的句子出现时,它会转到回退意图,而不是我附带的Webhook。 (2) 如果此投诉语句包含一些其他意图的训练词(例如WelcomeIntent的“Hello”),则无论我设置的上下文值如何,它都会指向该意图,以确保它保持在该意图中 我到目前为止所做的尝试 (1) 我试着做出后续打算,并将所有打算保持在家长层面。没有观察到这种差异。Dialogflow es 如何使用错误的语法保存用户输入,而不使用回退意图?,dialogflow-es,dialogflow-es-fulfillment,Dialogflow Es,Dialogflow Es Fulfillment,我正在制作一个投诉系统,在问了一些连续的问题后,我要求用户输入他的投诉。现在用户可以输入任何类型的句子,有/没有语法错误。我想把那个抱怨的句子存储起来,不管它的语法有多糟糕。我在这里面临两个问题: 问题 (1) 当一个语法错误的句子出现时,它会转到回退意图,而不是我附带的Webhook。 (2) 如果此投诉语句包含一些其他意图的训练词(例如WelcomeIntent的“Hello”),则无论我设置的上下文值如何,它都会指向该意图,以确保它保持在该意图中 我到目前为止所做的尝试 (1) 我试着做出
(2) 我删除了默认的回退意图,为投诉意图创建了自定义的回退意图,并附加了一个Webhook。因此,现在当用户在投诉意图中编写错误语法时,它会转到相关的回退并在那里激活Webhook。但这并不是一个好的解决方案,因为问题2仍然存在。你走在正确的轨道上。为了捕获非结构化响应,您需要依赖于回退意图。然而,要实现你想要的,你需要杠杆作用 Dialogflow将排除具有不同于当前活动上下文的传入上下文的意图。将始终对没有传入上下文的意图进行求值,但仅在具有有效活动传入上下文的任何意图之后进行求值 我假设您正在使用实现来捕获对话中的所有信息。我会这样组织你的意图:
- 在没有设置任何上下文的情况下具有回退意图(类似于默认设置)。正如你所愿,你可能会也可能不会让它实现
- 让所有“顺序”问题共享相同的传入上下文(我们将其称为
,仅供参考),并确保您在每个传出上下文(或在其履行过程中)中设置(并不断重置)此上下文的寿命问题上下文
- 当您询问他们的投诉时,请清除此上下文(将其寿命设置为0)并设置不同的上下文(我们称之为
)投诉上下文
- 使用
作为传入上下文,创建另一个回退意图。为此设置实现,它将发送捕获的文本投诉上下文