Actions on google Dialogflow未触发所需参数的提示

Actions on google Dialogflow未触发所需参数的提示,actions-on-google,dialogflow-es,Actions On Google,Dialogflow Es,我有一个问题,我为意图中所需的参数定义的提示在参数丢失时不会被触发。如果参数丢失,模拟器将响应“对不起,我没有得到那个” 例如: 使用对话框流实现的函数代码nodejs库: function test(agent) { let age = agent.parameters.age.amount; let conv = agent.conv(); conv.ask('This is from the backend: ' + age); return agent.a

我有一个问题,我为意图中所需的参数定义的提示在参数丢失时不会被触发。如果参数丢失,模拟器将响应“对不起,我没有得到那个”

例如:

使用对话框流实现的函数代码nodejs库:

function test(agent) {
    let age = agent.parameters.age.amount;
    let conv = agent.conv();
    conv.ask('This is from the backend: ' + age);
    return agent.add(conv);
}
Dialogflow的意向:

模拟器:


问题在于,您使用的培训短语中包含一个数字,因此机器学习将该模式大致视为“如果某人说‘测试’后跟一个数字,则触发此意图。”

但在测试时,我们只是使用了一个短语“test”。模式检测没有将数字视为短语的一部分,因此它认为它不符合该意图

为了解决这个问题,您可以添加训练短语“test”,而不给它一个参数。这将匹配短语,但仍然需要确保“age”参数具有值,因此它将提示输入该值


我明白了,我一直认为有必要把它包括在内。例如,如果你想问一个人的名字是什么,你还必须把“我的名字是”作为一个触发器,后面没有实际值,这对我来说很奇怪。这样想吧。为什么一个人在谈话中会说“我的名字是”。如果他们真的这么说。。。你会感到困惑的。