算子配置文件规范
| 参数名称 | 类型 | 是否必填 | 描述 | 约束 | 
|---|---|---|---|---|
| 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且requires=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个字符
    - 数据增强
    - 预标注
    -...
  task-categories:
    - BACKFLOW  # 回流
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:
  # STING类型参数示例
  - 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
 
  