首页 > 解决方案 > 如何在对话流中将所需的字段添加到上下文参数

问题描述

在我正在使用对话流开发的聊天应用程序中,有这样的场景。用户可以询问他们可以获得的贷款的详细信息。这是一个意图。一旦用户说出他们想要的贷款类型,我需要保存它并在他们提出问题时在任何地方使用它。例如,我有另一种意图,称为贷款支付。为此,他们可以提出以下问题

我有兴趣获得为期 5 年的个人贷款,贷款金额为 500 万卢比。你能告诉我每月的还款额吗?

要计算这一点,贷款类型是必须的(在这种情况下是个人贷款)。因此,如果任何用户在我需要在这里使用它之前指定了贷款类型,否则我需要要求用户再次提供它。但如果我使用上下文,我无法添加所需的添加。如何实现这一点。也因为我已经设置了参数,所以我不能改变它们的值。这就是我的参数的样子

在此处输入图像描述

标签: nlpgoogle-cloud-platformactions-on-googledialogflow-es

解决方案


这就是您的业务逻辑出现的地方。聊天应用程序可以通过定向和开放式两种方式构建。在第一个中,您可以通过设置选项/按钮为您提供的服务明确地继续询问几个问题,用户必须选择其中任何一个,或者在第二个中,您保持开放供人们输入任何东西,然后您提取值并根据他们的输入做出响应。

现在您属于第二种类型,即使您使用上下文,dialogflow 也为您提供了在第二种意图中提取第一个意图的参数值的好处。你只需要使用, #context_name.parameter_name. 但是现在,如果你说如果用户已经在之前的意图中定义了贷款类型,那么你不想在下一个意图中再次询问他,那么这纯粹是一个业务逻辑,你必须在你的 webhook 中编写代码. Dialogflow 不会为您执行此操作。

我希望这能回答您的问题,如果您不想那样做,请选择定向流动。


推荐阅读