1

假设我具有以下意图的 alexa 技能:

{
"intents": [
  {
      "intent": "aaa",
      "slots": []
  },
  {
      "intent": "bbb",
      "slots": [
        {
          "name": "City",
          "type": "CITIES"
        }
      ]
  },
  {
      "intent": "ccc",
      "slots": [
        {
          "name": "City",
          "type": "CITIES"
        }
      ]
  },
  {
      "intent": "ddd",
      "slots": [
        {
          "name": "City",
          "type": "CITIES"
        },
        { "name": "Name",
          "type": "USER_NAMES"}
      ]
  },
 ]
}

假设我使用这个简单的话语:

ddd tell me if user {Name} lives in the {City}.

通过这样做,我假设在我的 alexa 技能中,只要我的 Intent 正在调用,将在我的自定义插槽中的插槽名称中提供一个名称,并在插槽中提供我自定义插槽中的城市之一。

但是,结果是我得到了自定义插槽中没有提供的自由文本。自由文本如果你说的话听起来像我说的,但意思不同。

我不太确定我做错了什么,或者这是否符合设计。

4

1 回答 1

2

是的,这是正常的,并且是常见的混淆来源:您为自定义插槽提供的单词列表被视为指导,而不是确定的集合。

由于这是一个混乱的根源,他们发表了一篇关于它的博客文章:
为什么自定义插槽是文字解决方案

另外,请注意,您可以使用和构建城市的内置插槽类型,请参见此处:
https ://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/built -in-intent-ref/slot-type-reference

于 2017-01-24T03:18:10.347 回答