2

在 Amazon Alexa 中有没有办法让一个意图初始化一组话语?

我问是因为除了时间和地点之外,我还需要识别汽车的型号。为汽车/地方添加插槽似乎很荒谬,因为可能会有 8000 多种可能性。

前任:

valetService.prototype.launch = fucntion(intent, session, response){
  if(intent.slots['vehicleType'] === 'car'){
    response.ask('Which vehicle?', *activate utterance*);
  }
};

如果这不可能,我是否可以创建一系列函数来处理每条必要的信息,然后每次都将目标函数更改为单个单词的意图?

4

1 回答 1

3

你不需要做你的问题是针对什么的。您试图避免的 - 不定义自定义插槽类型 - 实际上是您问题的答案。

您可以使用 aCustom Slot Type来满足您的需求。我同意列出所有可能的选项是荒谬的,但这就是问题所在:你不必这样做!

您所要做的就是定义一个自定义插槽类型,也许添加一些值,因为我不确定您是否可以逃脱并且您已经完成了。Alexa 会将插槽的值发送给您的技能,即使它不在列表中。用亚马逊的话来说:

请注意,自定义插槽类型不等同于枚举。如果被口语理解系统识别,列表之外的值仍可能返回。尽管自定义槽类型的输入根据列表中的值加权,但它不仅限于列表中的项目。使用槽值时,您的代码仍需要包含验证和错误检查。请参阅处理 Alexa 发送的请求的“处理可能的输入错误”部分。

您可以在这里找到所有相关信息。

于 2016-10-23T17:58:35.037 回答