基于阿里云API打造“Kim智能语音助理”

简介:   作为一家专注境外自由行的“互联网+”创业公司,我们始终在积极探索用户服务的终点在哪。当一名国内游客置身一个完全不同的语言环境时,内心或许是不安的;而境外落地服务的司机,大多数情况下是外国人,这就造成了极大的沟通困难。


作为一家专注境外自由行的“互联网+”创业公司,我们始终在积极探索用户服务的终点在哪。当一名国内游客置身一个完全不同的语言环境时,内心或许是不安的;而境外落地服务的司机,大多数情况下是外国人,这就造成了极大的沟通困难。在这种场景下,如果车内可以通过智能设备为客人送去问候,并帮助其和司机、客服完成沟通,可以大幅提升国内游客在境外出游的舒适度。

基于此,我打算尝试一下是否能够基于阿里云制造这样一个物联网产品,毕竟对于创业公司来讲,借助阿里云的技术能力能节省不少成本。

开始尝试Kim

说话可能是我们每天做的最多的事情了,当然包括文字和交谈,所以这可能是手机触摸屏以外更“接近自然”的交互方式。

大家已经非常熟知“智能音箱”这个产品,阿里、小米等很多大厂都推出了自己的智能音箱,并与自己的业务体系深度绑定,这让我觉得很“封闭”,过于定制化、可玩性过于局限。

因此,索性我就把“Kim智能语音助理”做成开源项目,让更多的Geek能够参与进来,并且定制成自己的“私人助理”。(下图为天猫精灵X1)

2832408311c3e02b44585d1a77e40512fab32792

 

最初的Kim,仅是一个运行在树莓派、Mac上的一个能够语音对话的客户端程序,它通过调用阿里云的TTS和ASR接口实现语音合成及语音识别。

后来在语音识别的基础上增加了“Kim大脑”,这一个关键的改进让Kim能够理解我们在说什么,并作出预设的响应。为了让这颗“大脑”能够学会更多,我专门在GitHub上维护了一个插件库。没错,我们与Kim的对话经过ASR之后会被传送到Kim的“大脑”,经过“中文语义仲裁算法”把指令交由语义匹配的插件处理。操作流程如下图所示:

efd039640da2e38b87393453ecd5ca10836f0631


Kim是一个简化的“智能音箱”,已经能够应付大多数的对对话场景,把插件写写好,或许能够应付语音购票的场景了,下图为上海地铁的工作人员在演示语音购票技术。

b0b115d370d8c958de64fb1ff6b41fca1fb13f37


语音,只是一种交互方式,如果我们通过插件将其转换成计算机可以理解的指令,理论上我们对计算机的任何操作都可以实现。但复杂交互,还需要与计算机当前的状态有关系,我们后面会专门探讨这个问题。

Kim的远程会话服务

我们肯定不希望这个智能助理只能在物理上靠近时才能使用,于是诞生了“Kim远程会话服务”。远程会话服务提供了一组RESTful API和一套WebAPP供使用,RESTful API让开发者可以以任意一种形式(例如:APP、网页、微信小程序等)通过互联网与Kim会话。

但是,设备端的主控程序才是Kim的核心,无论你把会话服务部署在哪,最终的语义指令都会通过MQTT协议传输到Kim设备端。

b9d6edb2c16e68bb3b1fb3fe87186894b805dfa6

Kim插件库 + 阿里云API市场

正在给Kim插件库找数据源的时候,想起了阿里云的API市场,索性就把API封装到插件里 。下图为阿里云API市场的分类。

5ce89dd07b5807c6fe97e4ec8f949747e2a73527

这就意味着阿里云丰富的云端能力,能够轻松的为Kim所用,用药查询、天气预报、菜谱查询、新闻头条等等,都不在话下。

假象以下场景:

1.     你在厨房,准备要做一个红烧肉,但不会做;“Hey Kim,红烧肉怎么做”,这时Kim插件调用云端API,选出一个菜谱语音播报出来

2.     想知道明天的天气怎么样;“Hey Kim,明天天气怎么样”“明天晴,气温xxx,西北风xxx,空气质量优”

3.     ……

Kim插件库 + HomeAssistant

后来,在微博上看到了Facebook创始人扎克伯格给自己弄了个智能管家“老贾”。视频里的几个场景引起了我极大的兴趣:

1.     扎克伯格醒来后,说了一句:“老贾,把窗帘打开”

2.     有客人来访时,安保设备通过人脸识别先把门打开,再通知主人

3.     ……

“老贾”的视频:http://www.miaopai.com/show/rD3oErn2XBjERSq9dsZGcA__.htm

 

HomeAssistant是非常著名的开源智能家居控制系统,能够帮我们连接家里的灯、开关、门、温湿度计、空调等智能家居设备,支持小米、博联等众多的智能家居设备。

HomeAssistant支持设备列表:https://home-assistant.io/components/

好了,现在我们再回到Kim。HomeAssistant提供了家庭智能设备的控制方案,同时支持RESTful控制,这就方便了Kim插件库与HA的深度集成。当Kim具备这些能力的时候,我们的生活就变成了一下这样:

1.     中午躺在沙发上快睡着了,但是阳光太刺眼;“Hey Kim,帮我把窗帘关上”这时窗帘电机工作,窗帘关上

2.     暴雨来临前,室内很闷;“Key Kim,现在室内湿度多少”“室内湿度98%”“帮我把除湿机打开”,这时除湿机开始工作

3.     下班回到家,身心俱疲,准备看会电视放松下,但又实在懒得找遥控器;“Hey Kim,帮我把电视打开”,这时电视机亮了

4.     冬季早上起床困难,早上音乐响起、窗帘自动打开、空调自动开启并设定在26度

5.     ……

想想都觉得美。

 

这不是做梦,通过Kim是可以实现的。

安装和使用Kim

Kim目前已在Github开源,遵循MIT开源协议。目前Wiki已经相对完善,详细的安装方法和技术原理可访问Kim的Git仓库。


主项目仓库:
https://github.com/tenstone/kim-voice-assistant

远程会话端仓库:

https://github.com/tenstone/kim-voice-assistant-remotetalk

自定义插件仓库:

https://github.com/tenstone/kim-voice-assistant-plugins

 

(阿里云API应用创新大赛作品)

目录
相关文章
|
3月前
|
敏捷开发 测试技术 API
阿里云云效产品使用问题之如何通过API查询指定人在指定时间内提交了多少行代码
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
10天前
|
运维 Cloud Native 应用服务中间件
阿里云微服务引擎 MSE 及 云原生 API 网关 2024 年 08 月产品动态
阿里云微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力。API 网关 (API Gateway),提供 APl 托管服务,覆盖设计、开发、测试、发布、售卖、运维监测、安全管控、下线等 API 生命周期阶段。帮助您快速构建以 API 为核心的系统架构.满足新技术引入、系统集成、业务中台等诸多场景需要
|
18天前
|
Cloud Native 关系型数据库 Serverless
基于阿里云函数计算(FC)x 云原生 API 网关构建生产级别 LLM Chat 应用方案最佳实践
本文带大家了解一下如何使用阿里云Serverless计算产品函数计算构建生产级别的LLM Chat应用。该最佳实践会指导大家基于开源WebChat组件LobeChat和阿里云函数计算(FC)构建企业生产级别LLM Chat应用。实现同一个WebChat中既可以支持自定义的Agent,也支持基于Ollama部署的开源模型场景。
124 10
|
1月前
|
人工智能 Cloud Native 安全
统一多层网关好处多,阿里云云原生 API 网关打造全能型网关
本文分享了作为一款全能型网关【云原生 API 网关】是如何帮助企业落地统一网关架构的。
7718 9
|
1月前
|
API
阿里云微服务引擎及 API 网关 2024 年 7 月产品动态
阿里云微服务引擎及 API 网关 2024 年 7 月产品动态。
|
1月前
|
弹性计算 API 开发工具
揭秘Python与阿里云API的神秘邂逅!流式处理的魔法之旅,一场颠覆想象的技术盛宴!
【8月更文挑战第15天】在数字世界的广阔舞台上,Python与阿里云API的相遇,就像是一场命中注定的邂逅。它们携手共舞,为我们带来了流式处理的魔法之旅。本文将揭开这场神秘邂逅的面纱,带你领略Python与阿里云API之间的奇妙互动。让我们一起踏上这场颠覆想象的技术盛宴,探索流式处理的无限可能!
72 7
|
1月前
|
运维 Devops API
阿里云云效操作报错合集之调用api报错:没有权限,是什么原因
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
1月前
|
运维 Cloud Native 应用服务中间件
阿里云微服务引擎 MSE 及 API 网关 2024 年 07 月产品动态
阿里云微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力。API 网关 (API Gateway),提供 APl 托管服务,覆盖设计、开发、测试、发布、售卖、运维监测、安全管控、下线等 API 生命周期阶段。帮助您快速构建以 API 为核心的系统架构.满足新技术引入、系统集成、业务中台等诸多场景需要。
|
2月前
|
人工智能 API
阿里云微服务引擎及 API 网关 2024 年 6 月产品动态
阿里云微服务引擎及 API 网关 2024 年 6 月产品动态
145 18
|
2月前
|
JSON Shell API
阿里云PAI-Stable Diffusion开源代码浅析之所有api的入参如何看
阿里云PAI-Stable Diffusion开源代码浅析之所有api的入参如何看