将 Alexa 引导至特定的插槽值响应

Steering Alexa towards a specific slot value response

我在 Amazon Developer console 中定义了一个自定义插槽类型,该插槽包含一个名称列表,如下所示。

homer simpson
ned flanders
principal skinner
comic book guy

然后我将示例语句定义如下。

PlayAudio to play {Name}

所以最后,我希望用户能够说出类似于以下内容的内容:

Alexa, ask the simpsons to play homer simpson

Alexa, ask the simpsons to play ned flanders

Alexa, ask the simpsons to play principal skinner

Alexa, ask the simpsons to play comic book guy

当然,Alexa 听错名字的可能性非常高,所以我需要能够尽可能接近地匹配插槽值之一听到的名字。

我该怎么做,我必须在函数中编写代码还是有更好的方法?

你是对的,很有可能'that Alexa will hear the name incorrectly'。我的解决方案是与人工测试人员一起进行大量试验和错误,以发现常见的错误解释是什么,然后对这些进行硬编码修复。

所以我让测试人员说出不同的名字并记录他们说的内容。然后,我查看 Alexa 给我的插槽值,在有差异的地方,我将硬编码替换添加到我的技能中。

使用自定义槽时,Alexa 可能会提供不在列表中的值。随着列表大小的增加,这会变得特别成问题。按照 Tom 的建议使用 Beta 测试功能会有所帮助,但您将无法发现所有问题,并且最终无法扩展。

我发现完全确保您从列表中获得价值的唯一方法是在技能中拥有完整列表并每次都检查它。为了检查,精确匹配并不总是最好的选择,我尝试了两种方法: