我遇到一个错误:不能同时包含词组槽和另一个意图槽。错误代码:建立Alexa技能时,InvalidIntentSamplePhraseSlot。
示例JSON如下
{
"name": "HackathonListIntent",
"slots": [
{
"name": "resultCount",
"type": "AMAZON.NUMBER"
},
{
"name": "search1",
"type": "AMAZON.SearchQuery"
},
{
"name": "search2",
"type": "AMAZON.SearchQuery"
}
],
"samples": [
"{resultCount} for {search1} from {search2}",
]}
resultCount:技能从后端获取数千个结果,此参数将限制结果的长度,以方便用户使用。
search1和search2是用户可能要求的不同独立搜索参数。
仅供参考:我已经尝试过this
答案 0 :(得分:0)
对于InvalidIntentSamplePhraseSlot问题,根据Amazon的文档,每个意图只能使用一个AMAZON.SearchQuery插槽。
“确保您的技能每个意图使用不超过一个AMAZON.SearchQuery插槽。”
https://developer.amazon.com/docs/custom-skills/slot-type-reference.html#amazonsearchquery
此外,对于您的示例条目,请确保包含一项的数组不包含逗号。它将导致无效的JSON错误。
"samples": [
"{resultCount} for {search1} from {search2}"
]}
答案 1 :(得分:0)
AMAZON.SearchQuery 每个意图最多只能有1个广告位,并且还需要一个短语和广告位。我建议您使用 AMAZON.Person ,因为它可以取任何值,不需要短语。
{
"name": "HackathonListIntent",
"slots": [
{
"name": "resultCount",
"type": "AMAZON.NUMBER"
},
{
"name": "search2",
"type": "AMAZON.Person"
},
{
"name": "search2",
"type": "AMAZON.Person"
}
],
"samples": [
"{resultCount} for {search1} from {search2}"
]
}