算子配置文件规范
参数名称 | 类型 | 是否必填 | 描述 | 约束 |
|---|---|---|---|---|
id | string | 是 | 算子英文简称。 | 以英文字符开头,可包含英文字符、阿拉伯数字和下划线“_”,字符长度不超过128,超过部分自动截断。 算子更新配置时不可修改id。 全空间可见算子id全空间唯一,本空间可见算子id在当前空间下唯一。 |
name | string | 是 | 算子展示名称。 | 字符长度不超过128,超过部分自动截断。 |
description | string | 否 | 算子描述。 | 字符长度不超过2000,超过部分自动截断。 |
author | string | 否 | 开发者名称。 | 字符长度不超过128,超过部分自动截断。 |
version | string | 是 | 算子版本。 | 字符长度不超过32,超过部分自动截断,格式为:数字.数字.数字。 |
tags | tags object | 是 | 算子标签,用于分类筛选。 | |
labels | Array of label objects | 否 | 打标算子输出的标签。 | |
runtime | runtime object | 是 | 算子运行配置。 | |
arguments | Array of argument objects | 否 | 算子输入参数列表。 | 见表5。 |
参数名称 | 类型 | 是否必填 | 描述 | 约束 |
|---|---|---|---|---|
language | Array of strings | 是 | 算子支持处理的数据语种列表,例如zh,en等。 | 单个字符串长度不超过32,超过部分自动截断。 填写国际语种简码。 |
format | Array of strings | 是 | 算子支持处理的数据集文件格式后缀列表,例如json,csv,mp4等。 | 单个字符串长度不超过32,超过部分自动截断。 |
category | string | 是 | 算子类别。 | 单选,可选取值如下: - 数据提取 - 数据抽样 - 数据转换 - 数据过滤 - 数据去重 - 数据打标 - 数据拆分 - 其他 |
modal | Array of strings | 是 | 算子支持处理的数据模态列表。 | 多选,可选取值如下: - TEXT(文本) - IMAGE(图片) - VIDEO(视频) - AUDIO(音频) - OTHER(含气象、预测) |
custom | Array of strings | 否 | 用户自定义算子标签列表。 | 单个字符串长度不超过32,超过部分自动截断。 |
参数名称 | 类型 | 是否必填 | 描述 | 约束 |
|---|---|---|---|---|
cpu-arch | Array of strings | 是 | 算子运行支持的CPU架构列表。 | 多选,可选取值如下: - ARM - X86 |
xpu-devices | Array of strings | 否 | 算子运行的支持卡设备型号列表,当算子运行涉及NPU时必填。 | 可选取值如下: - SNT9B 当参数runtime.resources中存在某个resource的npu个数大于0的情况时,该参数必填,可选值为SNT9B。 |
environment | string | 是 | 算子包类型,仅支持纯python算子包类型。 | 单选,可选取值如下: - PYTHON |
entrypoint | string | 是 | 算子运行的启动命令。 | 字符长度不超过128,超过部分自动截断。 当environment=python时填写固定名称process.py,暂不支持修改。 |
auto-data-loading | boolean | 是 | 是否自动加载数据 | 当值为true时,由框架处理输入输出;当值为false时,由用户自己处理输入输出。 |
resources | Array of resource objects | 否 | 算子单实例运行所需的资源大小配置列表。 | 当environment=python时必填。 |
参数名称 | 类型 | 是否必填 | 描述 | 约束 |
|---|---|---|---|---|
cpu | integer | 是 | 单实例默认CPU资源量(单位:vCPU)。 | 用户需结合实际订购的通算单元数量进行配置。 |
memory | integer | 是 | 单实例默认memory资源量(单位:MB)。 | 用户需结合实际订购的通算单元数量进行配置。 |
npu | integer | 否 | 单实例默认NPU资源量(单位:卡)。 | 用户需结合实际订购的智算单元规格和数量进行配置。 |
参数名称 | 类型 | 是否必填 | 描述 | 约束 |
|---|---|---|---|---|
key | string | 是 | 参数id,参数列表内必须唯一。 | 字符长度不超过128,超过部分自动截断。 |
name | string | 是 | 参数展示名称。 | 字符长度不超过128,超过部分自动截断。 |
type | string | 是 | 参数类型. | 单选,可选取值如下: - STRING - FLOAT - INT - ENUM(单选) - LIST(复选) - OBS(前端使用,选择OBS文件的前端组件参数) - BOOLEAN |
tips | string | 否 | 参数说明。 | 字符长度不超过2000,超过部分自动截断。 |
min | float | 否 | 参数最小值。当type=INT或FLOAT时选填。 | 浮点数最多保留4位小数。 |
max | float | 否 | 参数最小值。当type=INT或FLOAT时选填。 | 浮点数最多保留4位小数。 |
between | boolean | 否 | 参数是否为范围型数值参数。当type=INT或FLOAT时选填,默认为false。 | - |
items | Array of item objects | 否 | 参数枚举项列表。当type=ENUM /LIST时必填。 | 当type=ENUM /LIST时该参数必填且枚举项个数至少为1。 |
required | boolean | 否 | 参数是否必填。 | 填写true或者false。 |
visible | boolean | 否 | 参数是否前端可见。 | 填写true或者false。 |
default | string | 否 | 参数默认值。 | 当visible=false且required=true时必须填默认值。 多个默认值时用逗号分隔,例如“SD,HD”。 数值范围型参数默认值格式为"min;max"。 |
参数名称 | 类型 | 是否必填 | 描述 | 约束 |
|---|---|---|---|---|
name | string | 是 | 枚举项名称。 | 字符长度不超过128,超过部分自动截断。 |
value | string | 是 | 枚举项对应的值。 | 字符长度不超过128,超过部分自动截断。 |
tips | string | 否 | 枚举项描述或说明。 | 字符长度不超过2000,超过部分自动截断。 |
参数名称 | 类型 | 是否必填 | 描述 | 约束 |
|---|---|---|---|---|
key | string | 是 | 标签的key值。 | 字符长度不超过128,超过部分自动截断,key值在不同算子间唯一。 |
name | string | 是 | 标签的名称。 | 字符长度不超过128,超过部分自动截断。 |
type | string | 是 | 标签的类型。 | 枚举值,单选,仅支持STRING、NUMERIC、ENUM、OBJECT |
min | float | 否 | 标签最小值 | 当type为NUMERIC类型时必填。 |
max | float | 否 | 标签最大值 | 当type为NUMERIC类型时必填。 |
items | Array of labelItem objects | 否 | 标签枚举列表 | 当type为ENUM类型时必填。 |
dimensions | Array of labelDimension objects | 否 | 标签一级维度 | 当type为OBJECT类型必填。 |
参数名称 | 类型 | 是否必填 | 描述 | 约束 |
|---|---|---|---|---|
name | string | 是 | 枚举名称。 | 字符长度不超过128,超过部分自动截断。 |
value | string | 是 | 枚举值。 | 字符长度不超过128,超过部分自动截断。 |
参数名称 | 类型 | 是否必填 | 描述 | 约束 |
|---|---|---|---|---|
key | string | 是 | 二级标签key。 | 字符长度不超过128,超过部分自动截断。 |
name | string | 是 | 二级标签名称。 | 字符长度不超过128,超过部分自动截断。 |
type | string | 是 | 二级标签类型。 | 枚举值,单选,仅支持STRING、NUMERIC、ENUM |
min | float | 否 | 二级标签的最小值。 | 当type为NUMERIC类型时必填。 |
max | float | 否 | 二级标签的最大值。 | 当type为NUMERIC类型时必填。 |
items | Array of labelItem objects | 否 | 二级标签的枚举列表。 | 当type为ENUM类型时必填。 |
算子配置文件是一个YAML文件,用于描述算子的基本信息、功能参数、运行环境以及资源需求等。算子配置文件示例如下:
id: video_clip #【必填】算子英文简称,英文字母开头,只能包含英文字符、数字和下划线,最多128个字符,超过做截断
name: 视频Clip切分 #【必填】算子展示名称,最多128个字符,超过做截断
description: 将长视频按镜头切分为多个片段。 #算子描述,不超过2000个字符
author: "xxx Technology Co., Ltd." #可选,开发者或团队名称,例如 "Data Team",不超过128个字符
version: 1.0.0 # 规则 "\\d+\\.\\d+\\.\\d+$"
tags: # 【必填】算子标签,用于特定场景分类筛选
language: # 【必填】算子支持处理的语言类型, 语言简码,多选,选项只能选择国际标准语言简码,不超过32个字符
- zh
- en
-...
format: # 【必填】算子支持处理的数据集文件格式,多选,不超过32个字符
- JSONL
- TXT
- CSV
- HTML
- MOBI
- EPUB
- DOCX
- PDF
- MP4
- AVI
-...
category: # 【必填】算子类型,用于前台的算子分类展示,单选,选项固定如下
- 数据提取
- 数据抽样
- 数据转换
- 数据过滤
- 数据去重
- 数据打标
- 其他
modal: # 【必填】算子支持处理的数据模态。多选,选项固定如下
- TEXT
- IMAGE
- VIDEO
- AUDIO
- OTHER
custom: #用户自定义算子标签,多选,不超过32个字符
- 数据增强
- 预标注
-...
runtime:
cpu-arch:
- ARM
xpu-devices:
- SNT9B
# 算子资源配置:
# npu算子配置:1卡 24core 192GB
# cpu算子配置:1core 2G、1core 4G、2core 4G、4core 8G、8core 16G
resources:
- cpu: 1
memory: 2048
- cpu: 24
memory: 196608 # 单位:MB
npu: 1
environment: python
entrypoint: process.py
auto-data-loading: true # 是否需要自动加载数据
#所有的业务参数均为算子的输入参数,参数的数据类型包含:STRING、FLOAT、INT、ENUM(单选框)、LIST(复选框)、OBS
arguments:
# STRING类型参数示例
- key: filter_keywords #【必填】
name: 过滤关键词
type: STRING
tips: 命中的关键词所在的样本将会被过滤,多个关键词以英文字符","分隔。 #界面tips
required: true
visible: true
default: 大保健 #参数默认值,可选,多个默认值使用,隔开
# INT/FLOAT数值范围类型参数示例
- key: length_of_characters #【必填】
name: 过滤时长范围
type: FLOAT #【必填】当type=int/float时,between字段为必填。
between: true # 是否取数值范围,当type=int/float时,between字段为必填。
min: 1.0 #参数最小值的范围,可选;float最多【4位小数】,超过做截断
max: 500.0 #参数最大值的范围,可选
tips: 过滤时长范围包含填入的边界值,float类型,单位:字符。文本长度在指定范围内的样本将被保留。 #界面tips
required: true
visible: true
default: 100.0;300.0 #可选, 参数最大最小值的默认值,可选,未填写时使用"min;max"作为默认
# INT/FLOAT数值类型参数示例
- key: max_cropping_area_ratio
name: 最大裁剪面积占比
type: FLOAT
between: false # 是否是范围型,默认为false
min: 0.0 #参数最小值的范围
max: 100.0 #参数最大值的范围
tips: 值在0.0~100.0之间,float类型,单位:%。裁剪面积占比(裁剪视频面积/原始视频面积)大于该值的样本将被过滤掉。
visible: true
required: true
default: 100 #参数默认值
# ENUM类型参数示例
- key: font_conversion
name: 文本字体转换
type: ENUM #单选
items:
- name: 简体转繁体
value: traditional
- name: 繁体转简体
value: simplified
required: true
visible: true
default: simplified
# LIST类型参数示例
- key: resolution
name: 分辨率
type: LIST #可多选
items: #参数选项,ENUM/LIST类型必填
- name: 流畅 #【必填】
value: SM #【必填】
tips: 480>分辨率≥360
- name: 标清
value: SD
tips: 720>分辨率≥480
- name: 高清
value: HD
tips: 1080>分辨率≥720
required: true
visible: true
default: SD,HD # 多个默认值使用,隔开
# OBS类型参数示例
- key: sensitive_word
name: 敏感词库文件OBS路径
type: OBS
tips: 敏感词库文件。
required: true
visible: true
default: NLP/system_resource/sensitive_word.csv # 默认词库的OBS路径。
# BOOLEAN类型参数示例
- key: parse_all
name: 是否解析所有文件
type: BOOLEAN
items:
- name: 是
value: true
- name: 否
value: false
visible: true
required: true
default: false 
