错误代码:InvalidIntentSamplePhraseSlot -

Tin*_*pic 4 alexa alexa-slot

Error code: InvalidIntentSamplePhraseSlot当我使用新技能控制台构建模型时,我收到了错误代码.完整的错误消息是

Sample utterance "AddBookmarkIntent i am at {pageno} of {mybook}" in intent "AddBookmarkIntent" cannot include both a phrase slot and another intent slot. Error code: InvalidIntentSamplePhraseSlot - 
Run Code Online (Sandbox Code Playgroud)

这里{pageno}AMAZON.NUMBER{mybook}AMAZON.SearchQuery

有什么错误,如何解决?

编辑:为意图添加JSON

{
    "name": "AddBookmarkIntent",
    "slots": [
        {
            "name": "mybook",
            "type": "AMAZON.SearchQuery"
        },
        {
            "name": "pageno",
            "type": "AMAZON.NUMBER"
        }
    ],
    "samples": [
        "i am at {pageno} of the book {mybook}",
        "save page {pageno} to the book {mybook}",
        "save page {pageno} to {mybook}",
        "i am at {pageno} of {mybook}"
    ]
}
Run Code Online (Sandbox Code Playgroud)

Gen*_*ood 8

在你的情况下,不允许AMAZON.SearchQuery在同一个话语中使用另一个插槽的类型的插槽AMAZON.NUMBER.

根据需要标记其中一个插槽并单独询问它们.

一个小例子:

创建放入话语和插槽的意图:

"intents": [
    {
      "name": "AddBookmarkIntent",
      "samples": [
        "I am at {pageno}"
      ],
      "slots": [
        {
          "name": "mybook",
          "type": "AMAZON.SearchQuery",
          "samples": [
            "For {mybook}"
          ]
        },
        {
          "name": "pageno",
          "type": "AMAZON.NUMBER"
        }
      ]
    }
Run Code Online (Sandbox Code Playgroud)

根据需要标记特定插槽,以便Alexa自动询问:

"dialog": {
  "intents": [
    {
      "name": "AddBookmarkIntent",
      "confirmationRequired": false,
      "prompts": {},
      "slots": [
        {
          "name": "mybook",
          "type": "AMAZON.SearchQuery",
          "elicitationRequired": true,
          "confirmationRequired": false,
          "prompts": {
            "elicitation": "Elicit.Intent-AddBookmarkIntent.IntentSlot-mybook"
          }
        }
      ]
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

并创建要求插槽的提示:

"prompts": [
  {
    "id": "Elicit.Intent-AddBookmarkIntent.IntentSlot-mybook",
    "variations": [
      {
        "type": "PlainText",
        "value": "For which book you like to save the page?"
      }
    ]
  }
]
Run Code Online (Sandbox Code Playgroud)

使用技能构建器BETA而不是编辑器可能会更容易,因为它会在后台自动创建JSON.