讯飞星火编排创建智能体学习(六):使用轻量级Action查询家里的灯开了没有
目录
引言
轻量级Action
巴法云的API
API定义
设置轻量级Action属性
大模型节点设置
测试
引言
不知不觉这个系列已经写到了第6篇了。今天介绍一下轻量级Action的使用,并且展示一个好玩的内容,就是如何在星火大模型中查询家里的灯到底开了没有。
轻量级Action
轻量级Action节点支持通过输入调用URL,HTTP参数等,快速接入外部信源或者调用第三方能力 。该节点不支持作为最终输出节点。
这个节点支持GET和POST两种方式,而且,支持设置Headers和Body,这样几乎可以访问任何http或https网站,感觉无敌了。返回的结果可以保存在一个变量中,也可以输出到后续的大模型节点进行处理。下面就以巴法云的API来演示它的使用。
巴法云的API
巴法云是一个物联网平台,专注物联网设备接入和一站式解决方案。我在教学中,经常使用巴法云来演示物联网的功能。有关巴法云的使用,可以参考:开始入门 | 巴法文档中心 。
除了支持物联网常用的MQTT协议,巴法云还提供了一套http的API用来进行操作,我就用这套API结合轻量级Action来实现所需要的功能。
假定我已经在巴法云设置了一个topic用于跟踪家里的灯的开关状态,topic叫light002。
API定义
巴法云是这么定义获得topic的接口的:
获取消息
获取主题消息,支持GET协议:
1、HTTP GET接口
API: https://apis.bemfa.com/va/getmsg
参数 是否必须 说明 uid 是 用户私钥,巴法云控制台获取 topic 是 主题名,可在控制台创建 type 是 主题类型,当type=1时是MQTT协议,3是TCP协议 num 否 获取的历史数据条数,不填默认默认是1,最大5000 正确返回:
{"code": 0,"message": "OK","data": [{"msg": "on","time": "2022-08-03 17:26:34","unix": 1659518794}] }
code 字段说明:
状态码 说明 0 成功 10002 请求参数有误 40000 未知错误 40004 私钥或主题错误 data内字段说明:
字段 说明 msg 获取的主题消息 time 消息发送的时间,时区UTC/GMT+08:00 unix 消息发送的时间戳
设置轻量级Action属性
根据以上信息,可以设置轻量级Action如下。
其中的uid是用户私钥,巴法云控制台获取。登陆完成后,可在控制台看到自己的私钥UID,如下图所示。
大模型节点设置
下面就是相关大模型节点的设置了。首先增加一个意图。
接下来设置一个大模型节点输出灯的状态。其中的提示词是
如果输入包括on,则表示灯是开的,否则灯是灭的,输出家里灯的状态。直接告诉我灯是否开了就可以,不需要输出输入数据。
最后,连接好各节点。
测试
我直接问“家里的灯开了没有”。星火大项目去调用了巴法云查询了家里灯的状态。有了轻量级Action,星火大模型的功能被极大扩展,但是也有隐忧,后面找机会谈。