类巴法云服务(支持 NAS 部署)实现方案调研,邀大佬共议 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
jukanntenn
V2EX    智能家电

类巴法云服务(支持 NAS 部署)实现方案调研,邀大佬共议

  •  
  •   jukanntenn 64 天前 832 次点击
    这是一个创建于 64 天前的主题,其中的信息可能已经有所发展或是发生改变。

    开发动机

    家中一部分米家设备,一部分非米家,目前通过巴法云将非米家设备接入米家,从而实现小爱音箱语音控制。总体来说效果不错,但由于巴法云的限制,缺失一定的拓展性和灵活性,所以想开发一个类巴法云的服务,支持本地化部署,实现迭代升级、功能拓展的自主可控。

    预期功能

    同巴法类似,可将小爱语音解析为格式化的数据,通过特定协议(例如巴法云支持的 TCP 或者 MQTT )下发给终端(例如 HA ),从而实现使用小爱语音控制非米家智能设备。

    根据小米的官方文档和小爱音箱相关的开源项目,我总结了这几种可能的接入方式。

    方式一:直接接入

    我的理解是通过这种方式接入后,可在米家直接添加设备并在设备列表中显示。该方式无法满足预期的功能,因为每个产品上线都需要小米审核,而巴法云是可以直接同步任意设备的。

    方式二:云云接入

    感觉这应该就是巴法云的方式,官方文档说目前采用限制性准入机制,仅对受邀合作伙伴开放。该方式似乎也无法满足预期的功能,因为我们的服务是自部署的,云云接入有准入机制,每一个自部署的服务都申请云云接入不现实。

    方式三:小爱技能

    官方文档显示目前已暂停开发,且交互方式似乎需要特定唤醒词唤醒,然后进行交互,不够简洁。

    方式四:hack 方式

    这是目前大部分小爱音箱有关的开源项目采用的方式,其实现原理是通过逆向得到的接口轮询小爱音箱对话记录,然后根据对话内容做相应处理。

    我们的服务也可以采用类似的机制,大体流程可能是这样的: 监听小爱音箱对话列表 -> 本地训练一个小参数 AI 模型,解析对话后通过特定协议(例如巴法云使用 MQTT )下发 -> 终端(可以是 HA ,也可以是自己开发的服务)根据下发的数据操作对应的设备。

    这个方案基本能满足预期的功能需求,不过可能有一些难点需要攻克或者存在无法绕开的限制:

    • 目前小米服务的接口都是通过逆向破解的,可能存在风控问题
    • 需要一个机制路由语音命令,是直接给小爱控制还是给自部署的服务。例如我本身有一部分米家设备,当我说操作某某设备时,如果该设备属于米家,应该直接交由小米控制;非米家设备才交由自己的服务进行处理
    • 由于小爱音箱对用户的语音命令有自己的一套流程,且无法取消,可能存在打断不及时的问题。

    以上是我了解到的一些方案,目前来看只有方式四最有希望,但依然还是存在一些限制,不能做到像巴法云一样的完美,不知道大佬们是否还了解一些其他可能的方式,望不吝赐教!

    3 条回复    2025-09-24 16:35:49 +08:00
    frankzhang
        1
    frankzhang  
       64 天前
    Homeassistant 了解下?
    jukanntenn
        2
    jukanntenn  
    OP
       64 天前
    @frankzhang 这个是作为 Homeassistant 上游服务的,因为很多设备可以接入 HA 但无法接入米家,需要一个中间层桥接小米音箱和终端设备,目前这个中间层我了解到的服务有巴法云,HassLife ,我的目标是希望开发一个类似的服务,支持自部署。
    frankzhang
        3
    frankzhang  
       63 天前
    看明白了,这么搞太折腾了。玩玩可以,长期用下来稳定性还是容易出问题,过了折腾的新鲜劲以后就容易废弃了。我的解决办法就是想被语音控制的全买小米(手动狗头),或者用实体按钮走 HA 控制。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5191 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 23ms UTC 08:12 PVG 16:12 LAX 00:12 JFK 03:12
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86