基于API创建一个插件
本章节将介绍如何通过API创建插件,创建插件后,必须发布插件才可以被智能体或工作流使用。
创建插件
- 登录Versatile智能体平台,在左侧导航栏“个人空间”区域,选择进入所需空间。
如果已选择团队空间,界面显示为实际的团队空间名称,而非“个人空间”。
图1 选择团队空间 - 在左侧导航栏中选择“开发中心 > 组件库 > 我的插件”,单击右上角“创建”。
- 在“创建插件”页面,配置插件信息,单击“确定”完成插件创建。
- 在“基本信息”步骤中设置插件的基础信息,请参照表1完成信息配置。
表1 基本信息 参数
说明
插件图标
单击默认图标按钮,可上传本地图片作为插件的自定义图标。
插件名称
用于标识当前插件的名称,便于在智能体、工作流和资产中心中快速搜索和定位。例如:查询天气。
命名规则:
命名要求:可以包含中文、英文、数字、特殊字符等;
长度限制:1~64个字符。
插件英文名称
插件的英文名称,用于在大模型调用时快速搜索和定位该插件。
命名规则:
命名要求:字母、数字和下划线(_)的组合,不允许使用其他特殊字符或空格;
长度限制:1~64个字符。
插件描述
描述当前插件的类型、功能和适用场景,帮助用户快速了解插件的作用和用途。
仅我可见
该功能默认关闭。开启后,仅插件的创建者可见。此设置在插件创建后无法修改。
- 在“配置信息”步骤中配置插件信息,请参照表2完成配置。您也可以通过单击“导入并解析”按钮,在弹框中输入cURL或openAPI代码,单击“确定”系统会自动解析代码内容并填充对应参数信息。
表2 配置信息 参数
说明
插件URL
插件的访问地址或相关资源的链接。例如:http://ip/v3/weather/weatherInfo。
- 支持协议:仅支持HTTP和HTTPS。
- 格式校验:系统会校验URL是否为标准格式。
- IP限制:URL对应的IP默认不应为内网地址,否则会导致注册失败。仅在非商用环境部署时,才允许支持内网URL,且需要通过相关服务的启动配置项关闭内网屏蔽。
请求方式
插件服务的请求方式,支持POST或GET。
请求头
填写API的请求头信息,需根据API的参数配置要求填写。
例如:
- Key:Content-Type
- Value:application/json
权限校验
选择调用API时是否需要鉴权。
- 在“参数信息”步骤中设置插件的请求参数和输出参数信息,请参照表3完成信息配置。
表3 参数信息 参数类型
参数
说明
请求参数
参数封装
开启后,会将请求参数封装为一个列表(数组)结构,可适配入参为数组格式的插件接口。
例如:
- 原参数列表:{"a":"string", "b":1};
- 开启封装后的参数列表:[{"a":"string", "b":1}]。
参数名称
设置请求参数的名称,参数名称会作为大模型解析参数含义的依据。
命名规则:仅支持字母、数字或下划线。
中文名称
设置参数的中文名称,便于用户理解参数含义。
参数类型
设置请求参数的数据类型。
位置
设置当前参数在请求信息中的位置。
支持以下三种类型:Body、Headers、Query。
默认值
设置参数的默认值,当参数未提供时使用该值。
描述
设置请求参数的详细描述信息,准确说明参数的含义、用途和格式要求,以提高大模型对参数识别和提取的准确性。
参数校验
设置当前参数是否需要进行校验。
校验规则:
- 参数名称:需要校验的参数名称。
- 校验类型:
- 时间日期格式
- 字符长度限制
- 枚举值范围
- 校验规则:可设置指定格式和自定义格式。
- 指定格式:选择系统预置的标准校验规则。当校验类型为时间日期时,支持指定格式。
- 自定义格式:根据实际需求自定义校验规则。
必填
设置该参数是否为必填项。
响应参数
参数封装
开启后,会将响应参数封装为一个列表(数组)结构,可适配出参为数组格式的插件接口。
例如:
- 原参数列表:{"a":"string", "b":1};
- 开启封装后的参数列表:[{"a":"string", "b":1}]。
流式响应
该按钮默认关闭,开启后流式响应将逐步发送数据,减少延迟,支持实时传输、按需加载和中断,优化资源利用,提升用户体验。
参数名称
设置响应参数的名称,用于大模型解析大模型输出结果。
命名规则:仅支持字母、数字或下划线。
参数描述
设置响应参数的详细描述信息,确保准确说明参数的含义、用途和格式要求,以提高大模型对参数识别和提取的准确性。
参数类型
设置响应参数的数据类型。
是否提取
开启后则该参数必须提取到,关闭则该参数允许为空或者使用默认值。适用于需要强制提取某些关键参数的场景。
- 在“基本信息”步骤中设置插件的基础信息,请参照表1完成信息配置。
- 单击“插件调测”按钮,输入请求参数值,单击“开始调测”检查调测结果。
图2 插件调测
- 确保输出符合预期,再单击“自动解析”按钮,系统将自动生成响应参数。
- 调测成功后,单击“确定”完成插件创建。
更多操作
插件创建完成后,可根据需要执行发布插件操作。
插件创建示例(以API调用为例)
准备工作:
- 创建一个服务,此服务需可以访问。
以天气查询服务为例,准备相应的接口地址、其请求方法、输入参数、输出参数。
接口地址:http://ip/v3/weather/weatherInfo(此地址需要根据实际情况填写ip、端口和服务路径);
请求方法:GET;
输入参数(示例):
{
"city": "苏州"
}
输出参数(示例):
{ "status": "1", "count": "1", "info": "OK", "current_date": "2025-03-16", "infocode": "10000", "forecasts": [{ "city": "苏州市", "adcode": "320500", "province": "江苏", "casts": [{ "date": "2025-03-16", "week": "7", "dayweather": "晴", "nightweather": "多云", "daytemp": "9", "nighttemp": "2", "daywind": "西北", "nightwind": "西北", "daypower": "1-3", "nightpower": "1-3", "daytemp_float": "9.0", "nighttemp_float": "2.0" }, { "date": "2025-03-17", "week": "1", "dayweather": "晴", "nightweather": "多云", "daytemp": "10", "nighttemp": "4", "daywind": "西", "nightwind": "西", "daypower": "1-3", "nightpower": "1-3", "daytemp_float": "10.0", "nighttemp_float": "4.0" }, { "date": "2025-03-18", "week": "2", "dayweather": "晴", "nightweather": "多云", "daytemp": "10", "nighttemp": "1", "daywind": "西北", "nightwind": "西北", "daypower": "1-3", "nightpower": "1-3", "daytemp_float": "10.0", "nighttemp_float": "1.0" } ] }] }
- 登录Versatile智能体平台,在左侧导航栏“个人空间”区域,选择进入所需空间。
如果已选择团队空间,界面显示为实际的团队空间名称,而非“个人空间”。
图3 选择团队空间 - 在左侧导航栏中选择“开发中心 > 组件库 > 我的插件”,单击右上角“创建”。
- 在“创建插件”页面中,按照以下步骤完成插件的配置信息。
- 单击“确定”完成插件创建。