天猫精灵的自定义语音技能创建流程

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第8天,点击查看活动详情

登录 AliGenie 技能应用平台,点击 创建新技能,通过向导创建一个新技能。

下面是天猫精灵技能创建页面。这个页面的 url:

iap.aligenie.com/console/new…

其中 skill id 为 89247,id 为 2022042968002 ,取的是技能创建时间。

从开发流程状态迁移图能看出,一个新的语音技能,从创建后,依次要经过下列的步骤,最后才能正式发布给用户使用:

  • 定义语音交互模型
  • 构建后端服务逻辑
  • 添加屏显页面(可选步骤,可跳过)
  • 测试:可以用真机测试或者网页上测试

在技能属性维护的明细页面,我们可以观察到下列信息:

技能最重要的属性是维护技能调用词,当用户向天猫精灵发出的语音指令,包含技能调用词时,天猫精灵才会进行相应的技能处理状态。

在我的评测里,我选用的技能调用词为 汪子熙是谁,因为该调用词不能和平台已有的调用词相冲突。

一个语音技能可以包含多个意图。意图代表用户同天猫精灵进行交互对话的目的。比如我的自定义技能,包含了三个意图:体重,天气查询和欢迎意图。意图标识即意图 ID,需要在技能开发人员编写的代码实现里使用到。

我们在上图选择一个意图打开,比如 天气查询 意图,打开其编辑页面,能看到一个 单轮对话表达 的维护界面。因为之前已经说过,一个语音技能可以对应多个意图,所以如果用户向天猫精灵发起的语音指令,同单轮对话表达里维护的语句相同或相似时,就被判定为命中了对应的意图。

比如用户向天猫精灵发起的对话,同下列类型的语句相似时:

  • 杭州今天天气怎么样
  • 今天天气怎么样
  • 杭州天气怎么样

智能应用平台就会将这些请求参数,比如 今天杭州,以及判定出的意图 id,weather,传入应用程序业务接口。在我们自己编写的程序里,拿到 weather id,就知道当前用户期望 查询 杭州 这个城市 今天 的天气情况,此时就可以调用天气查询的 Restful API 完成业务逻辑了。

猜你喜欢

转载自juejin.im/post/7104282790224461831