LLM Vision:把多模态大模型接入 Home Assistant 摄像头流水线
Visual intelligence for your home.
秒懂
- 它是什么?
- 这是一个用大模型分析图像、视频、实时摄像头画面和 Frigate 事件的 Home Assistant 集成,支持从 OpenRouter 到本地 Ollama 的多种后端。它的价值在于把「看懂画面」变成 Home Assistant 里的服务调用,代价是每个事件都要消耗一次模型推理。
- 适合谁用?
- 适合已经在跑 Home Assistant、并且手上有摄像头或 Frigate 事件源、愿意为每次分析付出一次模型调用成本的人。不适合只想做运动检测、不想引入外部模型依赖、或者对本地推理延迟敏感的场景。
- 能商用吗?
- 可以。Apache-2.0 是宽松许可证:你可以使用、修改并销售基于它的软件,只需保留版权和许可证声明。
- 还在维护吗?
- 在维护。仓库最近一次提交在 10 天前。
- 用什么语言写的?
- 主要是 Python(依据 GitHub 的语言统计)。
以上回答依据项目的 GitHub 数据(最近同步于 2026年9月15日)和我们的分析,不构成法律意见。
开源项目深度解析
它填的是 Home Assistant 自动化里最后那段空白
Home Assistant 原生的摄像头自动化停在「检测到运动」这一层。你拿到一个二进制传感器状态,知道画面里有人经过,但不知道来的是快递员、邻居还是自家猫。要区分这些,传统做法是接人脸识别或目标检测模型,自己训练、自己调阈值,误报率靠时间磨。LLM Vision 换了一条路:把画面直接交给多模态大模型,用自然语言提示词问它「画面里发生了什么」,拿回一段描述。README 里对功能的描述是「基于你的提示词回答关于图像、视频文件、实时摄像头画面和 Frigate 事件的问题」。目标用户很明确,是那些已经用 Home Assistant 管摄像头、又不想自己维护视觉模型的人。它不训练模型,只做编排:取帧、拼提示词、调 API、把结果塞回实体。
从摄像头帧到实体状态:中间发生了什么
从仓库结构和文档能确认的链路是这样的:集成先从摄像头流、视频文件或 Frigate 事件里取出画面,快照存放在 Home Assistant 的 /media 目录下,README 明确说这是出于安全考虑选择该目录而非 www。然后画面连同用户写的提示词发给配置好的 provider,provider 返回文本。返回的文本有两个去向:一是作为通知内容,配合项目提供的 blueprint 生成「AI 总结过的摄像头事件通知」;二是被解析成结构化数据去更新传感器,README 的原话是「根据从摄像头流、图像或视频中提取的数据无缝更新传感器」。另外集成会记录一条时间线,README 提到可选配一个 Timeline Card 放到仪表盘上。这里有一个值得注意的设计取舍:模型返回的是自然语言,而传感器需要的是确定值,中间的解析环节是整个链路里最容易出问题的地方,文档没有展开说明解析失败时会怎样。README 还提到集成「记住人物、宠物和物体」,但没说记忆存在哪、以什么形式存、是否跨重启保留,这一点需要自己去文档或代码里确认。
安装路径和 provider 配置
项目在默认 HACS 仓库里,README 给出的步骤是:在 HACS 里安装 LLM Vision,重启 Home Assistant,在设置里的设备与服务中搜索 LLM Vision,按 submit 用默认设置继续,然后配置媒体文件夹,最后回到集成页面按 Add Entry 添加第一个 AI Provider。媒体目录那一步有个实际约束:README 说如果你跑的是 Home Assistant Container,可能需要在容器设置里把某个文件夹挂载到 /media。Supervised 或 OS 安装通常不需要这一步。Provider 方面,README 列出的支持范围是 OpenRouter、OpenAI、Anthropic、Google Gemini、AWS Bedrock、Azure、Groq、Ollama、Open WebUI、LocalAI,以及任何提供 OpenAI 兼容端点的服务。这个列表的意义在于:最后一项让自建推理服务也能接进来,不必依赖某一家云厂商。提示词、provider 凭据这些具体配置键的写法 README 没有给出,指向的是 llm-vision.gitbook.io 上的文档。
本地模型和云端 API 是两种完全不同的东西
支持 Ollama、LocalAI、Open WebUI 看起来像是一个部署选项,实际上是两套使用模式。走云端 API,画面离开你的网络,每次分析按 token 或按图片计费,延迟取决于网络和对方排队情况;好处是模型能力强,对模糊画面、复杂场景的描述质量高。走本地推理,画面不出局域网,没有按次计费,但你需要有能跑多模态模型的硬件,而且推理速度直接决定事件通知的及时性。README 把两者并列在同一个特性列表里,没有讨论这个差别,但选型时它是第一位的判断。一个摄像头一天产生几十次事件,云端按次计费会累积成一笔持续开销;本地推理则把成本前置成硬件投入。这不是好坏问题,是账单形态问题。
它不适合什么场景,以及哪里最可能出问题
如果你的需求是「有人经过就开灯」,LLM Vision 是错的工具。取帧、编码、发送、等待模型返回,这条链路比本地运动检测慢几个数量级,而且每次都要花钱或占用 GPU。它适合的是事件发生之后的解释和归档,不是实时联动的触发器。第二个风险点是输出稳定性:多模态模型对同一张图可能给出措辞不同的描述,如果你用返回文本去驱动自动化条件判断,需要预期到这种波动。第三个风险是故障模式不透明。README 在报 bug 的部分要求附上 debug 日志,并说明「可以在集成的设置页面启用调试」,这暗示问题排查依赖日志,而不是集成自己会给出明确的错误状态。如果 provider 超时或返回格式异常,你的自动化会收到什么,材料里没有说明。还有一个容易被忽略的点:快照落在 /media 下会持续占用磁盘,README 没有提到任何清理机制。
和 Frigate 的关系不是替代
Frigate 是本地目标检测,跑在自己的硬件上,负责判断「画面里有没有人、有没有车」,输出的是检测框和事件。LLM Vision 不检测,它分析。README 里明确把 Frigate 事件列为可分析的输入之一,也就是它站在 Frigate 的下游:Frigate 决定什么时候值得看,LLM Vision 决定这次看到的到底是什么。这个分工是合理的,因为让大模型逐帧扫描视频流在经济上完全不成立。如果你已经装了 Frigate,LLM Vision 是给它加一层语义;如果你没有 Frigate 也没有别的摄像头事件源,那你要先解决「什么时候触发分析」这个问题,否则集成没有输入。
许可证与维护节奏
项目使用 Apache-2.0,允许商用和修改,附带专利授权条款,分发时需要保留版权和许可声明。这里不构成法律意见,如果你要把集成嵌进对外销售的产品,自己找法务确认。维护方面,仓库未归档,最近的发布记录显示 v1.7.2 在 2026 年 9 月 3 日发布,内容是 Bug Fixes,此前有 v1.7.2-beta.1 和 v1.7.1(Bug Fixes and Performance Improvements)。从版本号和发布说明的措辞看,这是一个以修复和小幅改进为主的维护节奏,不是大版本重构阶段。升级成本主要来自两点:一是集成更新后通常需要重启 Home Assistant,二是如果 provider 的 API 有变化,配置可能需要跟着调整。README 提到可以从 HACS 安装,HACS 会处理版本更新提示,但升级前建议看一眼 release notes 里是否涉及配置结构变更。
编辑结论
适合已经在跑 Home Assistant、并且手上有摄像头或 Frigate 事件源、愿意为每次分析付出一次模型调用成本的人。不适合只想做运动检测、不想引入外部模型依赖、或者对本地推理延迟敏感的场景。上手前先确认三件事:你的 Home Assistant 是 Container 还是 Supervised 安装(Container 需要自己把目录挂载到 /media,因为快照存在这里),你打算用哪家 provider 以及它的计费方式,以及你的摄像头事件频率乘以单次推理成本是否在可接受范围。
社区笔记