把小爱音箱接入大模型后,我终于拥有了一位真正能做事的 AI 家庭管家
家里的智能音箱,曾经是我最期待的智能家居入口。
动动嘴就能开灯、查天气、放音乐,听起来很美好。但真正用久了,就会发现传统语音助手的能力边界非常明显:你必须记住它能听懂什么指令,一句话稍微换个说法,它可能就不知道该做什么;跨品牌设备各自待在不同的 App 里;想实现复杂联动,还得自己研究自动化规则。
更麻烦的是,很多看似简单的事情,它并不能真正帮你完成。
比如:
- “两个小时后把鱼缸灯关掉,关完告诉我。”
- “以后我说‘我回来了’,就打开客厅灯,把空调调到 26 度。”
- “洗衣机洗完提醒我,阳台漏水了半夜也要喊醒我。”
这些需求并不复杂,却已经超出了传统“唤醒词 + 固定指令”的交互方式。
于是,我决定改造家里的小爱音箱:保留它成熟的麦克风、扬声器和音箱形态,接入大模型、AI Agent 与 Home Assistant,让它从一个被动执行命令的语音终端,变成真正能理解、能执行、能记忆、也能主动提醒的家庭管家。
我把这个项目开源了,并给这位新管家取名“小七”。
项目地址:https://github.com/OwnDing/open-xiaoai
目前,这套系统已经在我的真实家庭环境中日常使用。它不仅能控制米家和海尔设备,还能管理定时任务、学习家庭场景、播放本地音乐、操作电视,以及配合摄像头完成看家。
一、给小爱换一个“大脑”,但不只是接个聊天机器人
很多人第一次想到“智能音箱接入大模型”,可能会理解成:对着音箱提问,然后让大模型回答。
这当然是第一步,但如果只做到这里,它依然只是一个会说话的聊天窗口。
我更希望它能把“听懂”变成“做到”。
例如,当我说:
“把客厅灯关掉。”
系统不应该只是回复一句“好的,已经关灯”,而是应该真正调用设备控制工具,确认执行情况,再给出反馈。
当我问:
“冰箱冷冻室现在多少度?”
它也不应该凭记忆猜一个数字,而应该去查询设备当前状态。
因此,小七的设计重点不是给音箱套一个大模型接口,而是把语音交互、Agent、设备控制、记忆和自动化连接起来:
小爱音箱负责听和说,小智服务端负责语音识别与合成,Hermes Agent 负责理解意图、调用工具和管理记忆,Home Assistant 则负责连接并控制家庭设备。
在我的实际使用中,这套系统背后连接的是 DeepSeek;通过 Home Assistant,可以把米家、海尔智家等不同品牌的设备纳入同一个语音入口。
对家人来说,不需要理解这些组件之间是怎么协作的,只需要喊一声:“你好小七。”
二、从一句话开始,真正连续地聊下去
改造后最直观的变化,是交互方式不再像过去那样机械。
唤醒一次之后,小七会在每次回答结束后继续等待一段时间。我可以直接接着追问,不用每说一句都重新喊唤醒词。
例如:
我:“你好小七,杭州市中心在哪里?”
小七回答后,我可以继续问:
“那宁波呢?”
她会结合前面的对话理解这个问题。
讲故事、解释原理这类较长的回答,也不必等全部内容生成完才开始播放。前面的内容准备好后就可以先讲,后面的内容继续生成并衔接。
如果不想继续聊了,说一句“拜拜”或“没事了”,她就会结束对话,而不是让我一直等待超时。
甚至“关灯,拜拜”也可以一起说:先执行关灯,再告别退出。
三、说到一半也能打断:解决音箱“只顾自己说”的问题
传统语音助手有一个很影响体验的问题:它正在说话的时候,你很难自然地插话。
我希望的是,小七在讲故事或播报时,我随时都能喊一声“你好小七”,让她停下来听新的需求。
但这件事并不是简单地“保持麦克风开启”就能解决的。音箱的扬声器和麦克风离得很近,如果不处理好回声,系统可能听不清人声,也可能把自己的声音误认为唤醒词。
为了解决这个问题,我让音箱客户端把播放音频回传给桥接服务,再通过回声消除降低音箱自身声音的影响,让系统在播报时仍能识别用户的唤醒。
这样一来,即使小七正在长篇大论,我也可以直接说:
“你好小七,先停一下,帮我关客厅灯。”
她会停止当前播报,转而处理新的请求。
目前,这种播报中打断能力适用于小爱音箱;普通电脑语音终端采用轮流听说的方式,暂不支持在播报过程中打断。项目文档里也记录了唤醒和回声消除的测试过程。
四、不止能聊天,还能跨品牌管理全屋设备
智能家居的一个现实问题是:设备来自不同厂商。
灯和开关可能接在米家,冰箱和洗衣机可能属于海尔智家,电视又是另一套系统。如果每增加一个品牌,就要换一个 App 或重新学习一套指令,所谓“智能”就会变得很割裂。
小七通过 Home Assistant 统一接入设备。对语音助手来说,重点不是设备来自哪个品牌,而是它具有什么能力、当前处于什么状态、能执行什么操作。
在我家,已经接入的设备包括:
- 米家的灯、墙壁开关、鱼缸插座、电风扇、水浸传感器等。
- 海尔智家的冰箱、洗衣机、干衣机和净水机。
- 安卓电视,以及用于控制电视的相关组件。
我可以直接说:
“把书房灯关掉。”
“冰箱冷冻室现在几度?”
“洗衣机还要多久洗完?”
目前,我家有 16 台设备、300 多个可控制或查询的项目接入这套系统。其他品牌能否使用,取决于对应设备是否能够接入 Home Assistant,以及是否开放了所需的实体和能力;项目中我实际验证过的主要是米家和海尔。
还有一个细节:不同房间的语音终端可以配置自己的位置。
比如我在书房说“这个房间的灯开着吗”,小七可以结合终端所在房间,去查询书房的灯,而不是反过来追问我“你说的是哪个房间”。
五、让 AI 真正处理任务,而不是听完就忘
在实际生活中,很多事情不是立刻执行,而是要过一段时间。
比如:
- “两个小时后关鱼缸灯。”
- “晚上十点关空调。”
- “半小时后提醒我关火。”
传统的简单问答系统,在回答完这一轮对话之后,这件事就结束了。但在小七这里,这类需求可以交给 Hermes 的定时任务处理:到时间后执行相应操作,并通过小爱音箱播报结果。
这也意味着,语音助手的工作不再局限于“现在问、现在答”,而是开始具备跨越时间处理任务的能力。
我比较在意的一点是反馈闭环:不是只说“我记住了”,而是到点执行;不是执行完悄悄结束,而是在需要的时候告诉我结果。
六、用一句话教会它家庭场景和自动化
智能家居玩家通常都知道,真正好用的自动化需要花时间配置:选择触发器、查找实体、设置条件、填写动作,然后反复测试。
对普通家庭成员来说,这个门槛有点高。
所以我希望,小七能把自然语言变成家庭规则。
例如:
“以后我说‘我回来了’,就打开客厅灯,把空调调到 26 度。”
小七会先复述她准备创建的内容,得到确认后再保存。以后再次说出“我回来了”,即使已经换了一次对话,也可以触发对应场景。
再比如:
“洗衣机洗完了提醒我。”
它可以创建一个一次性联动:洗完时提醒,用完后自动失效。
或者:
“主卧开关双击的时候,把书房灯关掉。”
这种长期联动可以交给 Home Assistant 自己运行。
这背后有一个设计选择:让大模型负责理解需求和创建规则,让 Home Assistant 负责运行已经创建好的联动。
项目中的 home_rules 服务会对设备、动作和状态等进行校验,并按风险分级后写入 Home Assistant。规则创建完成后,联动触发本身不依赖大模型持续在线;这些规则也能在 Home Assistant 中查看和管理。
这样做的好处是,家庭成员可以用自然语言表达需求,而具体执行仍然交给更适合运行确定性规则的系统。
七、会主动开口,但不会所有事情都大声嚷嚷
一个真正有用的家庭管家,不应该永远等人提问。
定时任务完成、洗衣机洗好、传感器触发时,小七可以通过客厅的小爱音箱主动播报。
但主动提醒也需要分寸。
例如,深夜的一般通知不应该打扰家人休息。因此,普通播报会遵循小爱音箱自身的勿扰设置。
而漏水、烟雾、燃气等安全告警则属于另一类:如果配置了相应的紧急联动,即使在勿扰时段,也应该发出提醒。
比如我可以说:
“以后阳台漏水了马上告诉我,半夜也要说。”
小七会先复述准备创建的规则,等我确认后再保存。之后水浸传感器检测到漏水,就能触发紧急播报。
技术上,“能主动说话”并不难;更重要的是区分什么时候该说、什么时候该安静,以及什么情况不能沉默。
八、本地音乐:家里的曲库,不必每次都联网
除了控制设备,我也希望音箱能把音乐这件事做好。
小七可以播放存放在家中电脑上的本地音乐,支持按歌名、歌手点歌,也支持随机播放、暂停、继续、上一首、下一首和单曲循环。
例如:
- “播放梁静茹的《偶阵雨》。”
- “放几首陈奕迅的歌。”
- “随便放一首。”
- “这首歌是什么?”
本地曲库里的 MP3、FLAC 可以由音箱从桥接服务获取并播放,常规点歌和播放控制不需要经过大模型。像“放点安静的歌”这类更模糊的需求,则可以交给 Hermes 理解和选择。
播放音乐时也能继续对话:唤醒小七后,音乐音量降低;对话结束,再恢复音乐。
这里的“离线”主要指本地音乐文件的获取和播放路径,不代表整套系统的所有功能都不需要网络。
九、让电视真正听懂“我想看什么”
智能家居里,电视经常是一个比较特殊的设备。
很多方案只能做到开关机或简单地发送遥控按键,但我真正想要的体验是:
“我想看《狂飙》第二集。”
然后系统能自己搜索、找到内容、开始播放,并切到指定集数。
为此,我给小七接入了电视控制能力:通过电视助手读取屏幕内容、点击界面、发送按键和控制播放,再通过 tv_control 服务提供给 Hermes 调用。
在我的 TCL 安卓电视上,小七可以:
- 打开电视或让电视待机。
- 打开指定应用。
- 在银河奇异果中搜索片名、播放并选择集数。
- 暂停、继续、切换剧集、快进快退。
- 调整音量,查询当前播放状态。
电视开机还有个容易忽略的细节:我家用到的小爱红外开机码是“开关切换”,发一次可能开机,也可能关机。因此,系统会先判断电视是否已经在线,避免电视开着时又发一次红外,把它误关掉。
找片选集时,也不是点击后就直接宣布成功,而是会读取屏幕上的集数信息进行核对。
目前,这套电视方案是在我的 TCL 雷鸟 Android 11 电视及对应版本的银河奇异果上验证的。不同品牌、系统和应用界面的兼容情况,需要结合实际环境测试。
十、接入摄像头:让家庭管家多一双“眼睛”
除了语音和设备控制,我还给系统增加了一个相对独立的看家能力。
家里的摄像头通过 RTSP 接入 Home Assistant,同时由 person-watch 服务拉取视频子码流,在本地使用人物检测小模型进行识别。
它的工作方式并不是把所有画面持续送给大模型,而是先判断画面是否发生变化,再在需要时运行人物检测。
检测到人后,系统可以:
- 记录有人事件。
- 抓拍照片,并在网页上查看记录。
- 将“有人”状态提供给 Home Assistant,用于触发联动。
- 在指定场景下,把抓拍图发送到 QQ。
以我家的配置为例,人物检测使用 OpenVINO 在 CPU 上运行,不要求独立显卡。拉流和检测在家中完成;如果启用 QQ 推送,被发送的抓拍图片会离开本地。
这部分是独立于小七和大模型运行的服务。目前,人物事件的语音查询还没有专门实现,所以它更准确的定位是“与家庭管家协作的本地看家模块”,而不是已经完成了所有视觉交互。
十一、真正放进家里使用,安全边界比“什么都能做”更重要
给 AI 接入设备控制能力之后,有一件事必须认真考虑:它能做什么,同样取决于它不应该做什么。
家庭环境和实验环境不同。语音识别可能听错,家人之间的聊天也可能被麦克风捕捉到;某些设备如果误操作,带来的后果远比开错一盏灯严重。
所以,我在项目里设置了一些边界:
- 门锁、燃气、热水器、取暖器等高风险设备,不允许放进语音创建的场景或联动。
- 空调、窗帘、电视等设备加入联动时,需要配合播报,让人知道设备发生了动作。
- 场景和长期联动保存前,需要先复述并取得确认。
- 对含糊不清、可能导致误操作的指令,优先追问。
- 系统只管理自己创建的规则,不随意修改 Home Assistant 中原有的自动化。
这些设计不能替代使用者对设备、网络和权限的安全管理,但至少能给 AI 的行动加上一层明确的约束。
十二、没有小爱音箱,也能搭一套
虽然项目起点是改造小爱音箱,但这套系统并不要求每个人都必须刷机。
如果手边有一台常开的电脑,也可以使用带麦克风的蓝牙音箱,或者“USB 麦克风 + 普通音箱”,运行电脑语音终端,再连接同一套后端。
这种方式不需要刷小爱音箱,适合想先体验整个方案,或者手里没有支持机型的朋友。
我目前在 Windows 11 小主机搭配蓝牙音箱的环境中验证过电脑语音终端。需要注意的是,终端的实际体验仍然受麦克风拾音能力影响;普通蓝牙音箱的麦克风未必适合远场语音。
两种方式也有能力差异:电脑语音终端目前不支持小爱音箱上的“播报中途打断”。
十三、想自己动手?先了解这些前提
如果你也想尝试这个项目,可以根据手头设备选择路线。
小爱音箱路线:
- 确认设备型号,并按照项目文档完成固件补丁和 SSH 配置。
- 安装音箱客户端补丁。
- 部署小爱桥接和小智服务端。
- 部署 Hermes Agent、Home Assistant,并接入需要管理的设备。
- 按需配置本地音乐、电视助手和摄像头人物检测。
特别注意:仓库提供的刷机教程仅适用于小爱音箱 Pro(LX06)和 Xiaomi 智能音箱 Pro(OH2P)。其他型号不要直接套用。刷机和设备改造有风险,开始前请完整阅读仓库中的教程、用户协议和免责声明。
不刷机路线:
- 在常开的电脑上部署小智服务端、Hermes 和 Home Assistant。
- 连接带麦克风的蓝牙音箱,或者 USB 麦克风和扬声器。
- 安装运行电脑语音终端。
- 根据需要接入智能家居设备、电视或摄像头。
项目仓库中提供了各组件的部署说明和测试记录。实际使用中,功能还取决于设备兼容性、服务配置、网络环境及对应平台能力,并不是所有功能都能在所有设备上开箱即用。
写在最后
这次改造让我最大的感受是:家庭语音助手的价值,不只是回答更多问题,而是把人的意图和真实世界连接起来。
我说一句“我回来了”,家里的灯和空调可以进入合适的状态;我说一句“洗完衣服提醒我”,系统可以记住这件事,并在未来合适的时机开口;我想看一部剧,不必先寻找遥控器,再一层层翻找菜单。
这些能力并不是简单地把一个大模型塞进音箱里就能获得的。它需要语音交互、工具调用、设备接入、定时任务、规则引擎和安全边界一起工作。
Open-XiaoAI · 小七是我在真实家庭环境里不断调整出来的一套实践。我把它开源出来,希望对同样喜欢折腾智能家居、希望让旧音箱焕发新能力的朋友有所帮助。
项目基于 idootop/open-xiaoai 开发,感谢原作者 Del Wang 和上游贡献者;也欢迎感兴趣的朋友体验、提 Issue、提交 PR,一起探索家庭 AI 助手还能做些什么。