JD Alpha 平台基础学习笔记
基本概念
概念名称 | 概念说明 |
---|---|
技能 | 诸如音箱等智能硬件通过语音等多模态交互访问的服务称之为技能(Skill) |
意图 | 技能被使用时,受控设备所能进行的操作 |
话术 | 能够命中相应意图的话 |
槽位 | 意图在执行前需获取相关参数,这些参数被定义为槽位,每个槽位都应与话术中的某个字段相对应 |
槽位类型 | 一系列具有相同特征的值可以归为一种槽位类型,在创建槽位时,需要为其指定槽位类型 |
交互模型 | 意图集合与话术集合的映射关系,该模型用于控制技能的对话流程 |
内置意图 | Alpha Skill 提供的可调用的内置意图来实现通用操作,命名规则:Alpha.*Intent,如 Alpha.CancelIntent |
内置槽位类型 | Alpha Skill 提供了可调用的内置槽位类型,命名规则:Alpha.*,如 Alpha.City |
对话式交互设计
要想技能能够畅顺的执行,就需要意图能够精准的命中,那么话术的设计就要合理精巧,首先要符合常见的场景,进一步优化,尽可能的匹配不同的对话所表达的同一个意思。如果说能够让用户察觉不出这是在与机器进行交流,那么某种意义上这就是人工智能了吧!
对话设计阶段
- 设定技能目标,一个有意义的技能,才值得去做,要想清楚技能的前、中、后,用户可能的想法。
- 分析用户和场景,不同用户不同的场景不同时间不同环境都可能对技能的顺利使用有影响。
- 创建前注重设计,对于重交互的技能,逻辑设计与场景覆盖尤为重要,所以在编码实现前设计工作应仔细谨慎。
- 站在用户角度反复测试,想不如做,用户是检验产品的最好人选,多测试,尽可能的改进用户体验。
对话设计原则
- 尽可能的拆分对话,通过多轮对话方式来明确用户意图
- 考虑上下文关系,进行对话的设计
- 对话设计要简洁完整,尽可能多的覆盖不同的对话场景
- 提供稳定的对话模式,使用不同的提示,而不宜直接拒绝用户
自定义技能
创建自定义技能的步骤分为6步,分别是设置基本信息、构建交互模型、配置服务端点、测试技能、发布信息、提交审核。
基本信息
- 技能名称,用于在 Alpha 应用程序中向用户展示的名称
- 技能唤醒名,用于在使用 Alpha 赋能设备期间唤醒此技能
- 技能ID,是系统为技能分配的唯一标识
- 技能类型,初次默认为自定义技能
交互模型
技能创建的关键在于交互模型的设计,而交互模型的设计关键又在于自定义意图的话术设计。话术的设计要尽可能的覆盖多的对话场景,并设计合适的槽位获取必要的参数。
服务端点
配置对应的技能的服务端点,这样 Alpha 解析出来的数据传递到服务程序进行处理,而后再返回处理结果给 Alpha 平台。对于第三方账户的关联需要,也在服务端点进行配置,但是这同样需要第三方服务系统提供基于OAuth2标准的服务端和业务数据接口,进行授权参数设置和数据访问,且需要提供授权登录页面。
测试技能
当语音交互模型和服务端点都成功完成配置后,测试环境准备就绪。开发者可以进行模拟测试以验证自己的技能是可用的。
发布信息
技能测试结束后,在提交审核前需要配置技能的发布信息,这些信息会在 Alpha App 中向用户展示,以帮助用户了解和使用技能。
提交审核
当技能的基本信息、交互模型、服务端点、测试技能、发布信息 5个环节都成功完成配置后,即可以提交审核。
详细内容参见官方文档