如何组织和部署Alexa技能中的交互模型文件?

时间:2018-01-26 22:38:11

标签: alexa alexa-skills-kit alexa-skill

我无法相信我必须问这个问题,但我现在已经搜索了文档一段时间并且无法找到答案:如何在Alexa技能中定义交互模型的文件(<locale>.jsonsample_uterrances.txt,自定义插槽类型的值列表)是否可以组织和部署?

  • 这些文件在项目结构中的位置:在根目录中,在模型目录中,在单独的语音资产目录中?
  • 我必须将sample_utterances.txt<locale>.json相关联?
  • 如何处理不同区域设置的多个样本话语文件?它们在哪里相互映射?
  • 如何指定哪个自定义插槽类型值列表属于<locale>.json中的哪种插槽类型?
  • 如何准确告诉ASK CLI要部署哪些文件? ask deploy命令只知道一个--target参数,似乎没有确切地指定哪些文件是每个目标的一部分。

这些问题似乎都没有在亚马逊official documentation得到解答,我真的是唯一一个发现所有这些不明显的人吗?

1 个答案:

答案 0 :(得分:4)

我认为你混合了两件不同的东西。 创建Alexa技能的“旧”风格仍然可以通过developer.amazon.com使用(没有新的技能构建器)。而这种新方式,通过Skill Builder。 ASK CLI以某种方式使用两者的“混合”形式:D。使用技能构建器,您最终得到一个包含所有信息的.json文件,使用“旧”方式可以填充许多输入字段。 ASK CLI有:

  • 拉姆达/
  • skill.json(一般技能定义)
  • 模型/
    • .json(插槽,样本话语等)

我建议您在终端中执行ask new,CLI将创建您需要的所有文件夹。所有关于技能的信息(包括样本话语,自定义插槽等都会进入'models / .json',所有关于你的技能的一般信息都将进入'skill.json'。没有'sample_utterances这样的东西.txt',它现在在你的.json中,并针对每个意图进行分组。我还建议在Web控制台中创建一个示例技能,然后使用ask clone来了解它的结构。

以下是您的问题的答案:

  • 这些文件在项目结构中的位置:在根目录中,在模型目录中,在单独的语音资产目录中? 的 - &GT;使用ask new创建默认项目结构。

  • 我在哪里放置sample_utterances.txt与.json的关系? 的 - &GT;示例话语放在.json

  • 如何处理不同区域设置的多个样本话语文件?它们在哪里相互映射? 的 - &GT;由于样本话语位于.json中,因此每个语言环境的语句不同

  • 如何指定哪个自定义插槽类型值列表属于.json中的哪种插槽类型? 的 - &GT;它们也在.json中的“类型”

  • 下定义
  • 如何准确告诉ASK CLI要部署哪些文件? ask deploy命令只知道一个--target参数,似乎没有确切地指定哪些文件是每个目标的一部分。 的 - &GT; ASK CLI的模型是文件夹中的所有内容都属于一个技能。您可以在“models”文件夹中使用技能“示例技巧”,例如us-US和us-UK语言环境,一个skill.json定义和lambda在“lambda”文件夹中。我认为没有办法用'ask deploy'指定文件