一些语音识别技术供应商会为移动设备的第三方开发者们提供语音识别的API,让其自行开发具备语音识别能力的应用,比如科大讯飞、百度等。而Speaktoit旗下的开放平台Api.ai,这次是将API开放到了车载平台上。具体是个什么玩法捏?
让开发者自行开发的开放平台
Speaktoit于五年前在加州成立,提供语音识别服务。Api.ai是Speaktoit公司的第二款产品,是允许开发者们自行为智能互联设备开发语音交互能力的一个平台。最近这个平台开放了车载应用的API,让汽车制造商、第三方开发者都能够借此平台自行进行语音交互能力的开发与定制,平台仅提供技术支持。除了汽车之外,还可以进行移动设备、智能手表、智能家居、智能电视以及机器人的语音交互的开发。
与其说Api.ai是一个平台,倒不如说这是一个只要注册了就能使用的开发工具。开发者可以按照Api.ai上的流程,对语音交互的应用场景、识别内容、交互界面等等进行定义,Api.ai则会根据你的定义,给出相关代码等,便于开发者增加到App之中。
Api.ai运行在Speaktoit的自然语音处理引擎之上,能够理解自然语言,进行语音识别、声音识别,并提供语音转文字等服务。而且,根据官网介绍,Api.ai使用的是深度学习技术,能够在使用过程中学习并提升能力。
与任何操作系统兼容,支持中文
那么,对于车企来说,要使用Api.ai,需要做点什么呢?主要的工作是定义出语音交互的应用场景,按照Api.ai的规则,是定义出每个场景的Entity、Intent以及Context。
所谓Entity,指的是能够描述出这一应用场景的特定短语。比如说你要知道天气,Entity就可以是城市,便于程序进行定位并获取天气信息,而想听歌,Entity则可以是音乐的流派,或者是歌手的名字,便于程序进行查找。
如何定义Entity
以天气为例,在选择城市作为Entity之后,接下来的工作就是输出城市名字所对应的语音指令。比如纽约,可以是New York,也可以是NY,或者Big Apple。
现在的Api.ai上对应一个应用场景,只允许一个Entity作为识别对象,不过未来会开放多个Entity识别功能。开发者可以使用平台已经定义好的Entity,也可以自行定义。
Intent可以理解为对交互过程的定义,在这里,开发者需要定义用户如何表达才能被程序识别、识别之后要做什么。
如何定义Intent
如上图所示,User says是程序能够识别的语音指令,这里给出的案例是询问天气,Action则是程序识别之后给出的回应,根据获取的城市返回天气信息。
而User says的内容可以说是一个语音交互中最为重要的部分,俺们都知道,好的语音识别能力是让用户使用自然语音,而并非条码式指令。所以,这里涵盖的表达方式越多,最后的用户体验效果自然会越好。
Api.ai提供在网页上直接输入的方式来增加,也允许开发者直接提交JSON、XML和CSV样式。
至于最后一个Context,则是对Intent中用户所下发的指令定义一个语义环境。同样的语音指令,尤其是越简单的,可以被理解的意思就越多。要如何确保识别出呢?Api.ai就是通过Context来定义Intent。
这样,当用户指令与某个Intent中所设定的内容相符合的时候,程序会读取Intent对应的Context,然后在之后的五分钟之内,或者是之后的五项语音指令,都会是在这一Context下的内容。假设定义的Context是音乐,那么在开启音乐之后,五分钟或五个指令之内,所相关的语音指令都会与“音乐”所对应的Intent下去对应,然后再执行相关命令。也就是开始播放音乐之后,如果你又不想听了,发出关闭的指令,那么关闭的也会是音乐,而不会是导航。
虽然每一个Context对应的时间是五分钟或者五个语音指令,但是当新的指令发出时,系统识别后会自动更新时间和指令次数。
以上关于Entity、Intent以及Context的定义都是在一个特定的Agent下完成,Api.ai上面的Agent相当于一个App。
所以,我们知道,在Api.ai平台之上,汽车制造商或者车载系统的开发者所需要完成的是对语音交互的应用场景和使用逻辑进行完整的定义,以便于程序能够更好地理解用户发出的指令并做出反应。
据Api.ai上介绍,这套平台属于中立平台,能够兼容任一操作系统。对应车载应用,目前已经开放的场景包括车载第三方应用、地图、导航、兴趣点推荐、聊天、社交、智能家居、天气、浏览网络、查询信息、时间&日期、预定等功能。
现在一些车载系统语音交互功能的强大是依靠云端的语音识别,不过Api.ai提供了云端、本地以及嵌入式三种不同方案来进行部署。本地与嵌入式两种方式不需要连接网络,也不需要向云端发送数据,相较于云端方案来说更为安全。
不过,最难得的还是在Api.ai的支持语音列表上,明晃晃地写着支持中文。
目前Api.ai上,非商用应用、免费项目与开源项目可以免费使用,如果是商业应用,有两种交费方式:按照一条指令0.0003美元(相当于不到0.002元人民币),或者是与Api.ai进行商业分成。
车云小结
这种提供技术支持让汽车制造商可以自行开发应用的方式想必会受“保守”的车企所欢迎。毕竟俺们都知道,汽车制造商对苹果、谷歌大开方便之门是迫于形势,并不代表他们愿意被制掣。君不见,奥迪、丰田、福特都开始采取措施应对了么?
- LTC3738 的典型应用 - 用于英特尔 VRM9/VRM10 的三相降压控制器,具有有源电压定位
- ADR431B 2.5 Vout 超低噪声 XFET 电压基准的典型应用,具有灌电流和拉电流能力
- 超声波驱动 V1
- SI82XX-KIT,Si8235 评估板,2 输入,4A,5 kV 双 ISO 驱动器
- 具有跟踪功能的 LT3095IUDD 可编程输出的典型应用电路
- DC2520A-B,基于 LTC2344-16 四路、16 位、400ksps 差分 ±5V 输入 SoftSpan ADC 的演示板,具有宽输入共模范围
- 借助这款高效的单电感同步降压-升压稳压器,可更轻松地将锂离子电池电压转换为 3.3V,可在 600mA 时将 3 节电池电压转换为 3.3V,并带有可选的肖特基二极管
- LT6656BCS6-2.048、2.048V 低功率精密高压电源监视器的典型应用
- ADP1612-BL1-EVZ,用于 ADP1612 升压转换器的空白评估板
- AT89S52最小系统板