把小爱音箱接入 Hermes:打造真正属于你的语音助手

你家的小爱同学,能不能拥有一个真正属于你自己的 AI 大脑? 这篇文章完整记录了我把 小爱音箱 Play 增强版 接入自部署 Agent(Hermes)的全过程:架构设计、组件拆解、短信验证码登录、多轮会话修复,还有一箩筐踩坑实录。 一、为什么要折腾小爱音箱的"小爱同学"很聪明,但它的聪明是小米云端的黑盒:你无法让它调用你的记忆、控制你的服务器、理解你的专属上下文。而我的服务器上跑着 Hermes——一个自部署的开源 AI Agent,带着持久记忆、工具调用、Home Assistant 控制、飞书接入等完整能力。 目标很简单: 音箱麦克风 → Hermes(我的大脑)→ 音箱扬声器 让小爱音箱成为 Hermes 的"耳朵"和"嘴",客厅里喊一声,动用的却是自己的 Agent。 二、硬件前提:为什么走"云端链路"我的音箱是 小爱音箱 Play 增强版(型号 L05C)。调研后发现两个硬件事实: 没有 3.5mm AUX IN(背面只有一个 DC 电源口),无法用线缆把外部音频送进去; 蓝牙 A2DP 延迟 100-200ms,作为语音助手外放体验不佳。 所以不能走"本地音频接入"路线(麦克风采集 → 本地 STT → Agent → 本地 TTS → 线缆/蓝牙播放),而是走云端链路:小爱音箱本身的拾音和发声都是小米云能力,我们只需要在云端"拦截"它识别出来的文字,把回答"塞回"它的嘴巴。 三、架构总览整条链路共 4 个组件,全部跑在自己的服务器上: flowchart LR U[你说话:小爱同学,xxx] --> S[小爱音箱 Play 增强版 L05C] S -->|音频| MC[小米云 STT 识别] MC -->|识别文本| XG[xiaogpt监听对话流 + 拦截] XG -->|POST /v1/chat/completions| OS[openai-shim:8790OpenAI 兼容翻译层] OS -->|POST /v1/voice| VB[hermes-voice-bridge:8788] VB -->|hermes chat -q -Q --continue| H[Hermes Agentvoice profile 独立人格] H -->|回复文本| VB VB --> OS OS --> XG XG -->|小米云 TTS 原声| MC2[小米云 TTS] MC2 -->|音频| S 组件 角色 类比 xiaogpt 登录小米云,监听音箱对话流,拦截问题;把回答通过小米云 TTS 播报 耳朵 + 嘴 openai-shim 把 xiaogpt 以为在调的 OpenAI API 翻译成 voice-bridge 的协议(约 80 行) 翻译 hermes-voice-bridge 调用 hermes chat -q -Q --continue <会话ID> 跑真正的 Agent 接线员 Hermes voice profile 独立配置的 Agent 实例:语音人设、精简参数、共享记忆 大脑 四、组件逐个拆解4.1 xiaogpt:耳朵与嘴xiaogpt 是社区项目,核心能力是通过小米云的私有协议(mina 实时事件流)监听音箱的对话记录(MiService 等库是对这套协议的封装)——注意,它不碰音频,拿的是云端识别好的文字,所以不需要 root、不需要改固件。 ...

2026年08月05日 · 3 min · Cassius0924