本文以调用第三方算法的Http接口进行暴力检测算子的新增为案例进行展示
新建算子
在算子管理列表,点击【新建】按钮,进入算子新增页面;
填写算子基础信息
在跳转的算子新建页面,填写算子英文名、中文名、选择算子标签、填写算子描述、选择算子输入、输出类型、选择算法来源及算法类型;
算子英文名称:支持英文、数字、下划线,必须以英文开头,最少4字符,最多40字符,具备唯一性;
算子中文名称:支持中文、英文、数字、下划线,最少4字符、最多40字符;
算子标签:下拉选择,表示该算子归属于哪一场景;
算子描述:用于详细描述算子的功能,建议填写100字以上,详细描述算子的作用及算子对应的业务价值等信息;
算子输入类型:表示该算子是处理何种类型的数据,本案例选择图片;
算子输出类型:表示该算子输出何种类型的数据,本案例选择图片;
算法来源:表示算法的来源,本案例选择第三方Http;
算法类型:表示算法是生成类算法还是分析类算法,本案例选择分析类;
定义前端组件
第三方http接入都会基于接口文档,所以在配置前,您会从接口文档中知晓算法所需的输入参数,以及是否需要用户输入额外参数,如本案例中,需要调用的算法输入参数如下:
[
{
"data_type": "image",
"id": "",
"data": "${data base64}"
}
]从输入参数分析,可知本算法无需用户填写额外参数,故前端组件为空
定义算法信息
定义算法信息时,需要输入调用的算法的url地址;
http://1.0.0.127:8080/analysis/predict【仅示例】配置页面中的选择算法配置项,为系统默认配置项,用户不可更改,用于执行算法的调用逻辑。
定义算法输入参数
将所调用算法的接口文档提供的输入参数填写至head参数或body参数填写框中;(需要用户填写额外参数的前端组件配置及输入参数配置见算子前端组件配置部分)
这里需要注意的是,若算法需传入的参数为文件,可以使用内置变量${data_base64},在body参数中将该变量填写到对应的存放位置中(如上面输入框的data参数),系统会将文件转换为Base64形式,并传输给算法。
定义算子输出参数
根据所调用算法的接口文档提供的返回参数,配置算子的输出字段,并将算子输出字段与算法输出字段进行映射。如本案例中调用算法的返回参数如下:
{
"status": 0,
"result": [
{
"is_violence": 1,
"desc": "violence in office"
}
],
"message": "success"
}此时,在配置页面的输出参数部分,可以定义算子输出字段与算法输出字段的映射关系,按照如下方式进行配置:
某分析类算法可以识别图片中的物体并返回中英文结果,某次执行的返回结果如下:
{
"status":0,
"result":[
{
"tag":"image_recognition",
"en_tags":[
"car",
"cat"
],
"cn_tags":[
"汽车",
"猫"
]
}
],
"message":"success"
}
我们所需的结果为中文名和英文名,则在输出参数中配置为:
算子输出字段 算法输出字段
en_tags $.result[*].en_tags
cn_tags $.result[*].cn_tags
此时算子输出字段en_tags取值为:["car","cat"];算子输出字段cn_tags取值为:[”汽车“、”猫“]所以最终该算子的输出参数配置如下:
| 字段类型 | 算子输出字段 | 算法输出字段 |
|---|---|---|
| string | is_violence | $.result[*].is_violence |
| string | desc | $.result[*].desc |
设置算子基础配置信息
最后设置该算子是否保存生成的文件或是生成的分析结果。一般来说,生成类算法会生成新的文件,此时建议勾选展示生成文件配置项,用于配置生成文件的存储路径;分析类算法会生成可解析的半结构化分析结果,此时建议勾选展示分析结果配置项,用于配置分析结果的存储表及映射关系。
保存算子
点击右下角【确定】按钮,即可保存算子,此时算子状态为【编辑中】。可在算子管理列表进行算子上线操作,上线后,算子会在算子广场及任务画布中展示。
自此本案例结束。