第 1 课 AI 管家时代:Hermes + Home Assistant
第 1 课 AI 管家时代:Hermes + Home Assistant
本课目标
- 理解 AI Agent 如何革新智能家居交互方式
- 认识 Hermes Agent × Home Assistant 的整合架构
- 明确智能家居用户为何需要一个"AI 管家"
小赵的故事
小赵,32 岁,后端程序员,新婚,刚搬进 90m² 的两居室。
他家里已经有不少智能设备——小米网关、Yeelight 灯泡、空调伴侣、智能窗帘电机、扫地机器人、门窗传感器。但现实是:
- 控制灯要打开米家 App → 找到对应房间 → 点击
- 空调要打开另一个 App
- 扫地机又是另一个 App
- 出门忘关灯只能远程一个个关
- "回家模式"设了自动化但经常不触发
小赵的妻子吐槽:「你一个程序员,家里装了十几个智能设备,结果用起来比开关还麻烦。」
小赵决定用 Hermes Agent + Home Assistant 打造真正的 AI 管家。
1.1 智能家居的进化
| 时代 | 交互方式 | 代表 | 痛点 |
|---|---|---|---|
| 遥控器时代 | 物理按钮 | 传统红外遥控 | 找不到遥控器 |
| App 时代 | 手机操作 | 米家/HomeKit | 打开 App 太慢,多 App |
| 语音时代 | 语音指令 | 小爱/Alexa | 指令固定、不能推理 |
| Agent 时代 | 自然对话 | Hermes + HA | 无——AI 理解意图 |
Agent 时代的核心区别
语音助手:
你说:"打开客厅灯"
→ 执行:"打开客厅灯"
(一条命令 = 一个动作)
AI 管家:
你说:"我要睡觉了"
→ Agent 推理:
1. 关闭客厅和厨房灯
2. 卧室灯调暗到 10%
3. 空调设为睡眠模式 26°C
4. 关闭窗帘
5. 扫地机暂停
6. 启动门窗传感器监控
(一句话 = 一整套场景)
1.2 Hermes Agent × Home Assistant 架构
系统架构
┌──────────────────────────────────────────┐
│ 你(小赵/妻子) │
│ Telegram / 微信 / 语音 / CLI │
└──────────┬───────────────────────────────┘
│
┌──────────▼───────────────────────────────┐
│ Hermes Agent │
│ ┌─────────┐ ┌──────┐ ┌──────┐ │
│ │ SOUL.md │ │ Cron │ │Skills│ │
│ │ 家居管家│ │ 定时 │ │ 场景 │ │
│ └─────────┘ └──────┘ └──────┘ │
│ │ │
│ ┌───────────────▼─────────────────┐ │
│ │ MCP: Home Assistant API │ │
│ │ 灯光·空调·窗帘·传感器·扫地机 │ │
│ └───────────────┬─────────────────┘ │
└──────────────────┼───────────────────────┘
│ REST API
┌──────────────────▼───────────────────────┐
│ Home Assistant │
│ ┌──────┐ ┌──────┐ ┌──────┐ ┌────────┐ │
│ │灯光×8│ │空调×2│ │窗帘×3│ │传感器×5│ │
│ └──────┘ └──────┘ └──────┘ └────────┘ │
└──────────────────────────────────────────┘
各层职责
| 层 | 工具 | 职责 |
|---|---|---|
| 用户层 | Telegram/微信 | 自然语言输入 |
| Agent 层 | Hermes Agent | 意图理解、推理、编排 |
| 协议层 | MCP (HA API) | 设备控制、状态查询 |
| 设备层 | Home Assistant | 物理设备管理 |
1.3 AI 管家 vs 传统自动化
传统自动化的局限
# Home Assistant 传统自动化示例
automation:
- alias: "回家模式"
trigger:
- platform: state
entity_id: person.xiaozhao
to: "home"
action:
- service: light.turn_on
entity_id: light.living_room
- service: climate.set_temperature
data:
temperature: 25
问题:
- 规则是死的:不管白天黑夜都开灯
- 没有推理:夏天和冬天设一样的温度
- 一旦写好就不变:不会根据习惯调整
AI 管家的优势
你说:"我到家了"
Agent 推理过程:
→ 当前时间 20:30(天黑了)→ 开灯
→ 当前室外温度 33°C → 空调设 25°C 制冷模式
→ 今天是周五 → 播放轻松音乐
→ 妻子还没到家 → 只开客厅灯,卧室不开
→ 昨天扫地机已清扫 → 不触发
| 对比项 | 传统自动化 | AI 管家 |
|---|---|---|
| 触发方式 | 固定条件 | 自然语言 |
| 推理能力 | 无 | 上下文感知 |
| 适应性 | 手动修改规则 | 自动适应习惯 |
| 多条件 | 复杂 YAML 配置 | 一句话描述 |
| 异常处理 | 不处理 | AI 诊断+建议 |
1.4 适用场景
小赵的家:90m² 两居室
【户型图】
┌─────────────────────────┐
│ 卧室 │
│ 灯×2 窗帘×1 空调×1 │
├─────────────────────────┤
│ 次卧/书房 │
│ 灯×1 窗帘×1 │
├──────┬──────────────────┤
│ 卫生间│ 客厅 │
│ 灯×1 │ 灯×2 空调×1 │
│ │ 窗帘×1 │
├──────┤ │
│ 厨房 │ │
│ 灯×1 │ │
└──────┴──────────────────┘
设备清单
| 区域 | 设备 | 品牌/协议 | 数量 |
|---|---|---|---|
| 客厅 | 吸顶灯 | Yeelight/WiFi | 1 |
| 客厅 | 灯带 | Yeelight/WiFi | 1 |
| 客厅 | 空调 | 空调伴侣/Zigbee | 1 |
| 客厅 | 电动窗帘 | Aqara/Zigbee | 1 |
| 卧室 | 吸顶灯 | Yeelight/WiFi | 1 |
| 卧室 | 床头灯 | Yeelight/WiFi | 1 |
| 卧室 | 空调 | 空调伴侣/Zigbee | 1 |
| 卧室 | 电动窗帘 | Aqara/Zigbee | 1 |
| 书房 | 台灯 | Yeelight/WiFi | 1 |
| 书房 | 窗帘 | Aqara/Zigbee | 1 |
| 门口 | 门窗传感器 | Aqara/Zigbee | 2 |
| 各房间 | 温湿度传感器 | Aqara/Zigbee | 3 |
| 全屋 | 扫地机器人 | 石头/WiFi | 1 |
1.5 本书学习路径
Ch1-2 基础 ── 认知 + 环境搭建
Ch3-4 控制 ── 自然语言 + 场景编排
Ch5-6 监控 ── 能耗 + 安防
Ch7-8 进阶 ── 语音 + 诊断
Ch9-10 高级 ── 自定义 Skill + 全屋进阶
| 里程碑 | 能力 |
|---|---|
| Ch2 完成 | 能用 Telegram 控制灯 |
| Ch4 完成 | 一句话触发完整场景 |
| Ch6 完成 | 自动安防 + 能耗报表 |
| Ch10 完成 | 全屋 AI 管家上线 |
1.6 动手练习
- 设备盘点:列出你家中所有智能设备(品牌、协议、位置)
- 痛点清单:写下目前智能家居的 3 个最大痛点
- 期望场景:设想 3 个你想用自然语言实现的场景
- 安装 Home Assistant:如果还没安装,先在 Docker 中跑起来
docker run -d --name homeassistant \
--restart=unless-stopped \
-v /opt/homeassistant:/config \
-p 8123:8123 \
ghcr.io/home-assistant/home-assistant:stable
本课小结
| 要点 | 内容 |
|---|---|
| AI 管家 | 自然语言 + 上下文推理,超越传统自动化 |
| 架构 | Hermes Agent → MCP → Home Assistant |
| 核心优势 | 一句话触发多设备联动 |
| 适用场景 | 公寓/家庭/别墅均可 |
下一课:环境搭建——安装 HA 并连接 Hermes Agent。