我有一个我想在Google智能助理上测试的DialogFlow代理。我已经创建了一个相对简单的Intent,名为" Set name"使用以下培训短语:
它有两个参数:
given-name
,其中包含实体@sys.given-name
,值存储为$given-name
last-name
,其中包含实体@sys.last-name
和值$last-name
我能够在DialogFlow测试控制台中进行测试。但是,当我尝试在Google智能助理中查看它是如何工作的时候。"我收到以下错误:
请求包含无效参数。查询模式'名称' s 键。
$SchemaOrg_Person:given-name
$SchemaOrg_Person:last-name
。' 包含未定义的参数'last-name
。'
如果我删除"詹姆斯邦德"训练短语,它运作正常。但我想包括那个。我做错了什么?
以下是导致问题的意图的屏幕截图:
以下是我在Google智能助理中点击试用的链接:
最后,点击该链接时出现在屏幕右下角的错误消息:
答案 0 :(得分:1)
点击“查看其在Google Assistant中的工作方式” 链接并将应用提交生产后,我突然收到了一些错误消息。
似乎训练短语中的诸如撇号和连字符之类的字符会造成麻烦,并且会给出错误消息。
此外,它抱怨培训短语的一种变体,无论我对所有语言,短语的所有页面以及所有意图的投入如何,都找不到任何地方。 我终于通过导出项目并搜索JSON文件找到了有问题的短语。然后,我可以在本地删除该短语,删除Dialogflow中的意图,然后再导入到Dialogflow。(据我了解,它弄乱了一个后续意图,该意图也存在于JSON中(UI中没有位置)附加了一些训练短语的一部分。)
答案 1 :(得分:0)
尝试从句子中删除点。所以它将是:
"The name's Bond. James Bond"
答案 2 :(得分:0)
在使用意图参数和自定义实体时,我遇到了这个问题。在训练短语中标记实体时,请确保它们已链接到您在意图中设置的参数。
在您的情况下,它将训练短语标签更改为类型 @ sys.given-name:given-name 和 @ sys.last-name:last-name 可以解决此问题。
答案 3 :(得分:0)
我遇到了同样的错误,最后发现我添加的其他语言存在问题。
我添加了默认的“ en”语言和“ en-IN”。问题在于使用“ en-IN”语言的训练短语。我不需要它,因此将其删除,效果很好。
因此,请检查您的代理中启用了多少种语言,以及是否为它们正确设置了训练短语。