home-llm
让 Home Assistant 用户在本地运行大模型,用自然语言控制全屋智能家居,数据永不外泄
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
让 Home Assistant 用户在本地运行大模型,用自然语言控制全屋智能家居,数据永不外泄
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象一个场景:下班回家,你随口说一句「我把客厅灯调成暖色调,室温调到24度」,无需打开任何App,无需触碰开关,灯光和空调就自动响应了。更重要的是——这一切都在你自己的服务器上运行,没有任何数据上传到云端,你甚至可以拔掉网线,它依然正常工作。
这就是 Home LLM 试图实现的目标:一个完全本地化的 AI 智能家居控制系统。
图1:Home LLM 系统架构图,展示了从用户语音/文字指令到 Home Assistant 设备控制的完整流程
智能家居的痛点从来不是「设备不够智能」,而是控制层太僵硬。传统的自动化规则(If-This-Then-That)需要用户预先定义好每一种场景,而自然语言对话才是人类最自然的交互方式。
市面上的 AI 助手(如 Alexa、Google Assistant)虽然支持语音控制,但存在三个根本问题:
Home LLM 的作者 acon96 在 2023 年底启动了这个项目,核心思路是:让 Home Assistant 智能家居平台直接对接本地运行的大语言模型,用户数据永远留在本地,模型可以自由选择和替换。
Home LLM 由两大部分组成:
这是一个 Home Assistant 的自定义组件(custom component),相当于给 Home Assistant 装上了一个「AI 大脑」。它的工作原理分为几个层次:
对话 Agent 层(conversation.py):负责维护对话上下文,将用户的自然语言指令解析为结构化的意图(intent)。当用户说「帮我把卧室的灯关掉」,Agent 需要理解这是在对一个具体设备(卧室灯)执行一个具体动作(关闭)。
工具调用层:AI 并不是直接控制设备,而是通过一个名为 HassCallService 的工具来执行操作。const.py 中定义了允许 AI 调用的服务白名单,包括 turn_on、turn_off、toggle、set_temperature 等 20 多种服务,覆盖了灯光、开关、锁、空调、扫地机器人等 11 个设备领域。
多后端支持:系统不绑定任何特定的 LLM 提供商。当前支持的推理后端包括:
AI Task 层(ai_task.py):除了对话,Home LLM 还支持「AI 任务」功能,可以在 Home Assistant 自动化脚本中调用 AI 来处理数据、生成结构化内容,甚至做决策。这是一个将 LLM 深度嵌入 Home Assistant 自动化引擎的尝试。
仅有通用 LLM 是不够的——通用模型对 Home Assistant 的设备命名、服务调用格式一无所知。作者为此微调了一系列专门的「家庭助手」模型,核心是让模型学会:
模型列表和版本演进如下:
早期版本还包括基于 StableLM-Zephyr-3B、Phi-2、TinyLlama 等的微调版本,展示了作者对不同基础模型的持续实验。
项目的数据训练流程相当完整。data/ 目录下包含完整的训练脚本:
这意味着用户即使没有 AI 训练经验,只要拥有 Home Assistant 实例,就可以利用自己的设备配置自动生成定制化的训练数据。
硬件需求:根据项目文档和模型规格,最小可以在 Raspberry Pi(ARM 架构)上运行 270M 的 Gemma 模型;3B 模型在有 GPU 的机器上体验更好,但也可以纯 CPU 运行。docker-compose.yml 提供了开箱即用的部署模板,同时启动 Ollama、text-generation-webui、llama.cpp server 和 LocalAI 四个后端供选择。
安装方式:作为 Home Assistant 的自定义组件分发,最推荐的安装方式是通过 HACS(Home Assistant Community Store)一键安装,配置文件路径为 .github/workflows/ 中的 HACS 验证配置。需要 Home Assistant 版本 2026.5.0 或更新版本。
难度评估:对于已有 Home Assistant 使用经验的用户,整个安装和配置过程约 15-30 分钟。如果你是 Home Assistant 新手,还需要额外时间了解平台基础概念。
项目并非没有槽点。最明显的是对中文支持有限——虽然代码层面支持多语言(Persona 提示词支持英德法西波五种语言),但中文尚未被正式支持,需要社区贡献翻译数据。另一个挑战是模型质量与硬件的权衡:小模型(270M、1B)在低功耗设备上能运行,但理解复杂指令的能力有限;大模型效果好,但需要更好的硬件。此外,作为 Home Assistant 生态的一部分,用户必须先搭建好 Home Assistant 环境,学习门槛相对较高。
Home LLM 代表了一个重要趋势:AI Agent 的本地化落地。它不是简单地将云端 API 包装成本地 SDK,而是真正利用了 Tool Calling(工具调用)这一大模型能力,将 LLM 嵌入到真实的自动化控制场景中。相比纯云端方案,它在隐私保护、成本控制、响应延迟方面都有显著优势。
从 GitHub 数据来看,项目自 2023 年 12 月创建以来保持活跃维护(2026 年 6 月仍有更新),获得了 1358 颗 Stars 和 138 个 Forks,在 Home Assistant 生态的 AI 相关项目中属于相当可观的关注度。作者还提供了完整的模型上传脚本(scripts/upload_to_hf.sh),将训练好的 GGUF 量化模型托管到 HuggingFace Hub,方便用户直接下载使用。
如果你正在使用 Home Assistant,又希望用自然语言来控制全屋设备,Home LLM 是目前最成熟的本地 AI 方案之一。