Actions on google Dialogflow未触发所需参数的提示
我有一个问题,我为意图中所需的参数定义的提示在参数丢失时不会被触发。如果参数丢失,模拟器将响应“对不起,我没有得到那个” 例如: 使用对话框流实现的函数代码nodejs库: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
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”参数具有值,因此它将提示输入该值
我明白了,我一直认为有必要把它包括在内。例如,如果你想问一个人的名字是什么,你还必须把“我的名字是”作为一个触发器,后面没有实际值,这对我来说很奇怪。这样想吧。为什么一个人在谈话中会说“我的名字是”。如果他们真的这么说。。。你会感到困惑的。