基础功能
首先, 作为智能音箱, 我对它先要提出自己的基本需求, 自己拍脑袋想了几个, 作为评价的底线:
语音识别能力, 家里人有不同的口音, 至少需要做到我用普通话都能唤醒.
音乐, 广播, 天气
音质好歹听得清, 语音不要太生硬. 作为500以内的音箱, 我对音质一点要求都没有, 能听清就行了, 不指望能有特别大的惊喜, 所以在选择上, 相同的配置, 我会更小巧的, 价格也更便宜.
这里没什么好说的, 作为一款智能音箱, 以上是最基本的要求, 必须都实现了. 需要说一下的是, 天猫精灵借助阿里的虾米音乐, 版权基本碾压小米, 但我个人其实对这个要求也不大, 毕竟平时使用上, 说的最多的是 播放音乐
, 而不是 播放xxx的歌
. 因此这一点上, 天猫精灵算加一点点分吧.
附加功能
再说几个附加项:
二次开发能力. 作为开发人员, 我必须要求音箱能实现一些自己自定义的功能. 所以音箱的开放程度, 开发难度, api 文档的完善程度都会是一个非常重要的指标
对智能家电的支持情况. 家里有望可以智能化管理的设备, 除了一个小米的台灯, 和一个 yeelight 的吸顶灯以外, 华为的电视盒子, 海尔的中央空调, 基本就什么了. 我希望能通过智能音箱去尽可能多的去控制家中的电器, 比如开关灯, 调节亮度, 温度之类. 电视盒子倒是没啥要求. 毕竟遥控器都在沙发上, 操作起来也比用语音方便的多.
从这两项看, 天猫精灵完胜!
开发者平台
先说二次开发, 感兴趣的可以了解一下:
从注册开发者上, 小米上来就恶心了我一把, 注册开发者必须要用手持身份证的照片上传. 就这一点, 我就鄙视你. 天猫要简单的多, 登录了淘宝账号就行.
在服务接口开发上, 两边其实差不多, 对于开发者, 文档读起来也没啥难度. 一些细节的比较如下:
天猫精灵的配置步骤比较自由, 随便先配什么再配什么, 而小米则不然, 必须按照平台提供的导航按钮一步一步配, 这点有点蠢. 我就是想先看看平台的功能, 干啥非要我上传个技能图标?
交互模型的语料和词表, 天猫精灵非常方便的支持批量导入, 系统还能自动去重. 这点很方便, 可以把语料的导入文件(.csv)放到代码里版本话. 小米不行, 必须一个一个在页面上添加. 必能批处理的操作方式都是耍流氓.
语料的配置上, 两者功能差不多, 小米有个交互模型测试工具, 可以在当前页面做语料的测试, 这个功能很实用, 点个赞.
语料和参数配置上, 两者差不多.

天猫精灵的语料配置界面

小爱同学的语料配置界面
小米比较贴心的支持模糊匹配, 介绍说是:
开启模糊匹配后,水滴平台将基于您配置的语料,匹配更多可能的句法,如果不需要精确匹配语料,建议开启。
看上去挺不错, 我没用过, 也不知道支持的怎么样.
词表(天猫精灵中叫做 实体)配置上, 两者差不多, 不过小米有个公共词表的查询功能, 这个非常有用, 对于不方便做线上 debug 的开发者非常友好.

小爱同学的公共词表查询
对比天猫精灵的只有文档中的非常模糊的一句话, 具体怎么用要靠开发者凭经验去猜, 体验很差.

天猫精灵的实体
api 文档上, 两者都比较清晰了, 天猫精灵很不错的提供了部分代码的实现, 以及 java sdk, 相对更方便一些.
在测试验证上, 两个平台都支持了在线测试和真机测试两种方式, 不过小米需要先配置音箱进入一个开发者模式, 才能进行测试, 这点上不如天猫方便. 天猫精灵直接可以用绑定相同的淘宝账号的天猫精灵进行测试.
智能硬件
说完了开发, 再来说说智能硬件的问题.
一直觉得小米整个智能硬件的生态圈做的不错. 我自己也买了不少小米的设备. 但偏偏家里用的都是 iPhone, 虽然有米家的客户端, 但远不如苹果的 HomeKit 支持的方便, 然而全套的 HomeKit 开销太吓人了. 一个 Hue 灯泡要300多块钱, 你 TM 逗我?!
另外一个问题是, 小米针对自己生态圈以外的设备支持的并不好, 除非我全套全是小米的东西, 不然想联动是不可能的了. 相比阿里智能, 看下面两张图就知道区别了.

天猫精灵支持的设备

天猫精灵支持的品牌
所以一直在找可以把 小米智能家电 + 其它智能家电 + HomeKit + iPhone Siri 全部打通的方案.
现在出了智能音箱, 当然希望能把智能音箱也纳入其中, 通过语音去管理所有设备.
终于…有了 home-assistant. 天猫精灵在今年3月初, 也开始支持了 HASS, 完美.
一种拨云见日的感觉, 而成本仅仅只是一个树莓派.
不废话了, 直接看 Home Assistant 中文文档