3

我创建了一个 Amazon Alexa 技能,它有一个意图 (MyIntent) 和两个自定义插槽类型(SlotA 和 SlotB)。意图架构如下所示:

{
  "intents": [
    {
      "intent": "Foo",
      "slots": [
        {
          "name": "CustomA",
          "type": "CUSTOM_A"
        },
        {
          "name": "CustomB",
          "type": "CUSTOM_B"
        }
      ]
    }
  ]
}

每个插槽都有几个值,例如 SlotA 有

865985
710000
927291
514000

和 SlotB 有

Photo
Car
Bed
Kitchen

我的示例话语如下所示:

MyIntent foo bar {SlotA}
MyIntent bar baz {SlotB}
MyIntent {SlotA}
MyIntent {SlotB}

问题是,Alexa 无法识别我的一些槽值,例如“床”,但可以识别其他值,例如“厨房”。这适用于两种插槽类型。

有趣的是,如果我只保留简单的示例话语并删除包括短语在内的那些,那么所有值都会被识别,我的示例话语看起来像这样:

MyIntent {SlotA}
MyIntent {SlotB}

值或样本话语的顺序无关紧要。我尝试了每一种组合。也有两个插槽(将所有插槽值组合在一个中)没有任何区别。

为什么带有短语的示例话语会阻止对某些槽值的识别?

编辑:

“不识别”是指用户的输入未映射到 MyIntent。在对话(会话)中时,我只得到一个 SessionEndedRequest。

4

1 回答 1

1

亚马逊的系统中有一个错误,导致无法正确构建语言识别。删除错误后,一切都恢复正常。这是来自亚马逊支持的电子邮件:

我们最近提供了新工具来帮助创建和测试技能。新功能无意中影响了少数技能。我们昨天解决了这个问题,所有现场技能都应该按预期工作。如果您有任何其他问题,请在此处发布,我们将监控并提供帮助。对于开发中的技能,您现在可以通过单击交互模型选项卡上的“保存”或单击技能生成器(测试版)中的构建模型来解决此问题。我们对不便表示抱歉。

于 2017-04-28T10:20:04.937 回答