网站搜索

我让双子座帮我写家庭助理的自动化,它实际上效果不错


Home Assistant 对于拥有智能家居电子设备的人来说,是最强大的设备之一。它也是最复杂的之一。许多人愿意尝试一段时间,然后很快就会因为 Google Home 或 Alexa 的简单性而放弃。与点击几个简单按钮相比,Home Assistant 最适合那些愿意深入了解自己智能家居生态系统并愿意学习 YAML 或 Jinja2 的人使用。

然而,与其在论坛板上寻找我的下一个智能家居设备,我已经了解到 Gemini 出乎意料地能够创建新的 Home Assistant 添加项。只要我说明我想要什么以及什么时候想要,HA 和 Gemini 就能配合得相当不错。

YAML 和 Jinja2 很复杂

Gemini 帮我很快把事情整理好了

我花了一个周末把一台旧的 Chromebook 改装成 Home Assistant 服务器。一个我可以一直运行的服务器,而我坦白说,从那以后我就让它基本上闲置了。Home Assistant 是一个复杂的系统,过去我没有投入足够的时间去研究,但现在我已经了解到 Gemini 可以把我最狂野的想法变为现实,我开始投入更多时间在这上面。例如,我一直想尝试的一个功能是:只要我的手机在路由器的特定范围内,我办公室的电视灯就会亮起,当我长时间离开时则会关闭。

通过向 Gemini 提问“创建一个 YAML 代码,当我的手机在路由器 2 米范围内时打开电视灯,即使电视关闭”,我收到了 YAML 代码,它会在我处于范围内的一定时间内向 Home Assistant 发送信号,并执行所需操作。对于有编程经验的人来说,这可能不是世界上最令人印象深刻的事情,但它的速度和工作效率让我感到震惊。如果我想进一步优化,我可以使用 ESP32 蓝牙代理之类的东西来获得最佳效果。

对于那些有兴趣看看 Gemini 输出了什么的人,这里是它生成的确切 YAML 代码:

alias: "Turn on TV Lights when Phone is Near Router"
description: "Triggers TV lights when phone distance is less than 2 meters"
mode: single

trigger:
- platform: numeric_state
# Replace this with your actual phone's distance entity ID
entity_id: sensor.shauns_phone_distance
below: 2
# The 'for' prevents the lights from flickering if the signal bounces
for:
seconds: 5

action:
- action: light.turn_on
# Replace this with the actual entity ID of your TV lights
target:
entity_id: light.tv_backlights
data:
brightness_pct: 80
transition: 3

复杂请求变得简单

即使是最奇怪的请求,我也还没有遇到过障碍






当我说我喜欢尝试创造奇怪的请求,比如前面提到的电视灯情况时,我根本不知道从哪里开始做这样的事情。在 YAML 方面,我的创造力远远超过我的技能水平,而这正是 Gemini 最近对我非常有帮助的地方。既然我开始慢慢地从 Google Home 和 Alexa 迁移,想看看 Home Assistant 真的能做些什么,我也很想尝试把它推到极限。

我一直听说 Home Assistant 可以做比 Google Home 或 Alexa 更复杂的事情,在玩了 YAML 之后,我明白了为什么。与其仅仅有通用的触发器可以激活,我可以实现各种疯狂的请求。比如“当太阳下山,并且浴室门传感器关闭时,把走廊的灯变成红色”,它就会执行这样的操作。

如果有东西失败了,我可以问它是什么

与其猜测并搞砸它,我可以问发生了什么问题

学习一件新事物,比如编码或者如何使用 YAML,是很困难的,我对那些天生就会使用它的人给予很高的赞赏。这是我将来非常想进一步学习的东西,因为 Home Assistant 和 YAML 代码可以实现的功能看起来非常惊人。但现在,我仍在努力弄清楚如何让事情正常运行。如果在初始化时出现问题,我可以问 Gemini 出了什么问题,它可以帮助我改进并让它正常工作。

我所要做的就是将 Trace 粘贴进去,Trace 是 Home Assistant 在自动化触发时提供的逐步日志,Gemini 可以根据它来判断发生了什么以及为什么某些东西没有正确触发。然后,它可以给我一个新的自动化去尝试,并会持续工作,直到一切按需要运行。

人工智能没有人类的智慧

幻觉和版本问题可能会导致新版本出现问题

如果你希望跟上 Home Assistant 的最新动态,你需要仔细关注新版本的发布。如果你已经使用 Home Assistant 一段时间了,2024 年将“service”替换为“action”的变化可能已经让你头痛不已。AI 模型有时会产生幻觉并使用这些较旧的术语,导致功能出错。你需要用人工眼睛来确保没有放入错误的内容。

公平地说,Gemini 在这方面没有任何问题。但其他较老的 LLM 和 AI 模型可能会遇到这个问题。在它们处理繁琐工作的同时,用户需要确保自己从 Gemini、Claude 或你计划尝试的任何模型中获得正确的输出。随着 2026 年 6 月的截止日期临近,你可能需要将一些之前的自动化流程通过 Gemini 或其他模型运行,以确保自动化中的所有 “friendly_name” 实例已被替换。利用“修复”标签发挥你的优势,然后开始工作吧。

现在我只需要开始将更多的东西升级到 Matter

如果你一直对 Home Assistant 感兴趣,但又害怕深入技术方面的内容?这可能是完美的折中方案。我可以看到 Gemini 在做什么,也可以研究它输出的 YAML 代码,这样我就可以开始尝试自己做类似的事情。实际上,这是两全其美的选择。

这是我在使用像这样的程序时入门的好方法,它也激励我更认真地对待我的家庭助理设置,现在我知道我可以将一些更疯狂的想法付诸实践。如果你的创造力超过你的 YAML 技能,不妨自己也试试。

相关文章