阿里巴巴人工智能实验室在2018云栖大会上发布了AliGenie人工智能系统,这是面向软硬件厂商和开发者的开放式平台,将ASR语音识别、NLP自然语言处理、TTS语音合成等核心技术能力对外共享。本文详细介绍如何使用Java开发天猫精灵X1的自定义技能,从AliGenie开发者平台注册、技能创建…

一、常见产品
- 阿尔法狗AlphaGo
AlphaGo结合了三大核心技术:先进的搜索算法、机器学习算法(即强化学习),以及深度神经网络
银行大堂经理
小米-小爱
二、天猫精灵
1、家庭智能助理
家庭的智能设备语音遥控器,可以操作空气净化器、扫地机器人、摄像头等智能设备。
2、娱乐&购物
拥有音乐、电台、有声书、英语学习等功能,还可以通过语音指令让天猫精灵查询商品价格、加入购物车、付款、查询订单、跟踪快递等购物功能。
三、实现方式
自然语言 - DIS结构 + Skil技能回复

四、核心概念
1。人工智能
(1)人工智能的目标
1 | - 推理 |
- NLP && NLU && NLG
(1)自然语言处理(NLP)是指机器理解并解释人类paralyzes写作、说话方式的能力。
NLP 的目标是让计算机/机器在理解语言上像人类一样智能。最终目标是弥补人类交流(自然语言)和计算机理解(机器语
言)之间的差距。NLP 的机制涉及两个流程: 自然语言理解、自然语言生成
NLP 中理解语义分析的方法:
分布式:它利用机器学习和深度学习的大规模统计策略。
框架式:句法不同,但语义相同的句子在数据结构(帧)中被表示为程式化情景。
理论式:这种方法基于的思路是,句子指代的真正的词结合句子的部分内容可表达全部含义。
交互式(学习):它涉及到语用方法,在交互式学习环境中用户教计算机一步一步学习语言。
1 |
|
NLP 中深度学习的常见任务

- DIS(Domain+Intent+Solt)
自然语言理解(NLU)完成后产出领域、意图、参数、上下文,后续就需要拿到这些信息做具体的业务逻辑处理。

例句:今天杭州天气怎么样?
(1)应用(Bot),代替人工作的机器程序,相当于对应某款产品,比如:天猫精灵X1
(2)领域(Domain),如同社会行业一样,划分不同领域,通过领域模型识别,比如:天气领域
(3)意图(Intent),解析出用户语音表达的具体目的,比如:天气查询
(4)实体(Entity),解析出用户语音里可能包含的某些特定词组,比如:时间、地区
(5)参数(Solt),解析出用户语音里形容的某些属性参数,比如:今天、杭州
(6)上下文,多次问答,获取每次的用户表达的确定含义,比如:是否查询天气
- DM场景
(1)简易问答场景:在bot内部配置的问答对
(2)用户自定义问答场景:用户在app里面设置好的回答语句
(3)事件场景:和用户按键结合的场景,这种场景通过按键信息,可以直接获取用户的意图
(4)是否唤醒词场景:
1)自定义技能(唤醒词)
2)不需要唤醒词:SFIC类型、NLU_GA类型
五、自定义技能详细步骤
5.1 申请加入平台
访问AliGenie开放平台
1
- 访问 [AliGenie开放平台](https://open.bot.tmall.com/)
- 使用淘宝账号登录
创建开发者账号
- 填写开发者信息
- 完成实名认证
- 等待审核通过(通常1-3个工作日)
创建应用(Bot)
- 登录后,进入”我的应用”
- 点击”创建应用”
- 填写应用基本信息:
- 应用名称
- 应用描述
- 应用图标
- 应用类型(自定义技能)
5.2 新建技能
进入技能管理
- 在应用详情页,选择”技能管理”
- 点击”新建技能”
配置技能基本信息
- 技能名称:如”天气查询”
- 技能描述:描述技能的功能
- 唤醒词:用户唤醒技能的关键词
- 技能类型:选择技能类型(如查询类、控制类等)
设置技能权限
- 选择技能需要的权限
- 如需要用户位置信息、设备控制权限等
5.3 创建意图(Intent)
意图是用户想要执行的操作,需要定义意图和对应的槽位(Slot)。
1 | 创建意图步骤: |
定义意图名称
- 如:
QueryWeather(查询天气) - 意图名称应该清晰表达用户意图
- 如:
添加用户说法(Utterance)
- 添加用户可能说的话,如:
- “今天天气怎么样”
- “查询天气”
- “天气如何”
- “今天会下雨吗”
- 系统会根据这些说法进行训练
- 添加用户可能说的话,如:
定义槽位(Slot)
- 槽位是从用户话语中提取的关键信息
- 例如天气查询需要:
city(城市):从用户话语中提取城市名称date(日期):提取查询的日期
- 为每个槽位定义:
- 槽位名称
- 槽位类型(实体类型)
- 是否必填
- 默认值
配置实体(Entity)
- 定义槽位对应的实体值
- 例如城市实体:
- 北京
- 上海
- 杭州
- 深圳
- 可以添加同义词,如”帝都”对应”北京”
1 | 示例配置: |
1 | { |
5.4 配置服务端接口
创建服务端接口
- 在技能配置中,设置服务端URL
- 接口需要处理AliGenie的请求格式
实现接口逻辑
1 |
|
5.5 测试验证
在线测试
- 在AliGenie平台选择”在线测试”
- 输入测试话语,查看意图识别结果
- 验证槽位提取是否正确
真机测试
- 在天猫精灵设备上测试
- 说出唤醒词和指令
- 验证技能响应是否正确
调试技巧
- 查看平台日志,了解请求详情
- 使用Postman测试接口
- 检查服务端日志
5.6 发布上线
提交审核
- 完成技能开发和测试后
- 提交技能审核
- 填写技能说明和使用指南
审核通过
- 等待平台审核(通常3-7个工作日)
- 根据审核意见修改问题
正式发布
- 审核通过后,技能正式上线
- 用户可以通过天猫精灵使用你的技能
5.7 技能优化建议
提升识别准确率
- 增加更多用户说法样本
- 优化槽位定义和实体值
- 处理同义词和口语化表达
优化用户体验
- 提供清晰的语音回复
- 处理异常情况(如网络错误)
- 支持多轮对话
性能优化
- 接口响应时间控制在2秒以内
- 使用缓存减少API调用
- 异步处理耗时操作
数据分析
- 关注技能使用数据
- 分析用户常用意图
- 根据数据优化技能
1 | 1、[自然语言处理(NLP)基础理解](https://www.jianshu.com/p/b627cb31aab7) |
本文标题: Java版天猫精灵X1AliGenie
发布时间: 2019年07月24日 00:00
最后更新: 2025年12月30日 08:54
原始链接: https://haoxiang.eu.org/8503db80/
版权声明: 本文著作权归作者所有,均采用CC BY-NC-SA 4.0许可协议,转载请注明出处!

