| 本帖最后由 wenghy 于 2025-10-18 20:39 编辑 
 分享一篇AI+NodeRED实现开门播报的工作流。
 
 
   代码见附件,不行就看原文
 修改“设置提示词Prompt”节点
 
   
 修改其中的地址为你的家庭住址,越精确越好,人员为msg.payload.open_person,你可以根据你的输入调整。 设置AI大模型的请求参数     需要改动三个地方(示例的是Qwen大模型):    模型名称、API 密钥、API地址,这部分需要查对应的大模型文档。   
 
 
 修改输出的小爱音箱实体ID(从MiAuto插件获取) 
   
 接入门锁(这部分比较难,大家耐心观看)
 
 这边需要注意的是,触发实体是events:state,大家先配置实体为你的门锁,修改Entity 
   
 部署一下,最后触发开门看下你的输出的debug日志试下。右边的调试窗口输出的是: 
2025/10/13 14:50:13节点: debug 31
input_text.lock_record01 : msg.payload : string[3]
"周杰伦"
 
 表示的是msg.payload输出的是文本,内容是“周杰伦”。
 然后我们看下设置提示词Prompt的代码。
 
   其中原先的第三行代码如下:
 
 
<font color="#000000">const person = msg.payload.open_person;</font>
 然后可以看到调试窗口中的大模型输出结果节点:
 
   
假设上面右边的调试窗口输出的是:"周杰伦开门回家啦!
微风不燥,阳光正好,像极了你回家的路。
欢迎回家,让音乐与爱一起,把日子谱成温暖的歌。"
 
 
 
2025/10/13 14:34:13节点: debug 31
input_text.lock_record01 : msg.payload : Object
{"name":"雷军"}
 
 就改为如下代码:
 
 
const person = msg.payload.name;
 
 反正因地制宜,大家把自己的实体输出到调试窗口,如果不知道如何设置,可以留言,我会一一解答。
 
 
 AI调优
 输出的文本部分如果不满意的,可以把输入的提示词到对应的大模型上多次调试,然后按照格式组装到“设置提示词Prompt”节点上。
 `我家在${address},结合当地的天气,得出当前${person}开门回家的原因,写一段非常温馨俏皮的欢迎词,不要输出地址信息,字数限制在60到90字之间`根据变量调整一下,最后格式化后填入prompt。
 
 拓展思路:不止欢迎词,还有更多玩法
 掌握了“NodeRED+小米Miot+AI”的组合,你还能解锁更多智能家居新姿势: 由于论坛的图片数量的限制等原因,本文去掉了公众号上一些非核心的解释,如果真的需要观看原文,见https://mp.weixin.qq.com/s/oHB31--TjKdcf67b-sHFtg离家提醒:门锁关闭后,小爱播报“记得带钥匙、关灯、关空调哦”。访客播报:当门锁检测到密码开锁(非家人),小爱说“有客人来啦,快去开门~”。节日专属问候:在AI提示词中加入节日信息,比如春节时播报“新春快乐,欢迎回家吃年夜饭!” 
 
 
 
 
 |