更新时间:2025-07-08 GMT+08:00
分享

上传流程

通过在本地修改流程的yaml模板,上传流程至空间中。

  1. 获取流程yaml模板。
    • 单击“上传流程”,在弹出的页面中下载yaml示例文件。
    • 使用命令行工具,执行ai4s get workflow -s命令获取创建流程的yaml模板,复制模板并保存到本地。可以保存成.yaml或.txt文件,保存为txt文件时,其内容需为yaml格式。
  2. 修改流程yaml模板。

    在本地编写模板,模板中的参数与在AI科学计算平台新建流程过程一致。

    修改yaml模板时,详细的命令和参数请参见命令行工具 > 流程配置文件说明

    # 详情说明可参考API文档中流程管理- 创建流程
      workflow:
        name: 'demo-workflow'                           # 流程名称,取值范围[1,56],以字母开头,允许出现中划线(-)、下划线(_)、字母和数字,且必须以字母或数字结尾。更新流程时,流程名称不支持修改。
        version: '1.0.0'                                # 流程版本,取值范围[1,24],以小写字母或数字或大写字母开头,允许出现中划线,必须以小写字母或数字或大写字母结尾。更新流程时,流程版本不支持修改。
        summary: 'summary'                              # 流程简述,取值范围[0,128]
        description: 'description'                      # 流程描述,取值范围[0,65535],后续支持markdown文本
        labels:                                         # 流程标签,取值范围[0,5],单个标签最大长度32字符,支持中文、字母、数字、空格、下划线和中划线,且不能以空格开头或者结尾。
        - labelA
        - labelB
        timeout: 10080                                   # 流程超时时间,取值范围[1,144000],单位分钟,默认1440
        output_dir:                                     # 流程的当前工作目录,默认为根目录,用户可显式指定;输出路径必须以斜杠(/)开头且不能以斜杠(/)结尾,不能包含两个以上相邻的斜杠(/),不能包含以下特殊字符:\ : ; * ? < " > | 。其中单个文件夹名称不能以中划线(-)开头,不能以英文句号(.)或斜杠(/)或空格开头或结尾
        tasks:                                          # 流程中子任务的描述信息,子任务数量取值范围:[1,128]
          - task_name: app1-1                           # 子任务实际名称,取值范围[1,32],只能以字母开头,由小写字母、数字、中划线(-)、下划线(_)组成,以字母或数字结尾。
            app_id: 'demo-app::1.0.0::project-test-01'      # 应用id,取值范围[1,135],正则先不能有中文,两种格式。特殊id,采用{app_name}::{app_version}::{src_project_name}格式,用于手动创建场景;其他场景,app_id为系统分配的唯一标识
            display_name: '步骤1'                       # 流程的子任务展示名称,最大长度64
            resources:                                  # 子任务的资源配额
              cpu: '0.1C'                               # cpu申请使用量,取值范围[0.1-128],单位C,支持一位小数。对于应用,不填默认1C;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用
              memory: '0.1G'                            # 内存申请使用量,取值范围[0.1-3072],单位G,支持一位小数。对于应用,不填默认1G;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用
              gpu_type: ''                              # gpu架构类型,取值范围 ' '|GPU|Snt9。对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用
              gpu: '0'                                  # gpu申请使用量,取值范围[0-16],仅支持整数,Snt9有特殊约束,申请数量需要是0,1,2,4,8。对于应用,不填默认0;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用
            output_dir:                                 # 子任务的输出存放路径,用户可显式指定;输出路径必须以斜杠(/)开头且不能以斜杠(/)结尾,不能包含两个以上相邻的斜杠(/),不能包含以下特殊字符:\ : ; * ? < " > | 。其中单个文件夹名称不能以中划线(-)开头,不能以英文句号(.)或斜杠(/)或空格开头或结尾
            inputs:
             - name: 'input-dir'                        # 子任务的参数名称,长度为[1,32],以小写字母开头,允许出现中划线(-)、小写字母和数字,且必须以小写字母或数字结尾。需要和已有应用的参数名称一致。
               values:                                  # 子任务的参数数值,根据参数类型进行合法性校验
               - 'project-test-01:/test'
            outputs:
             - name: 'output-dir'                        # 子任务的参数名称,长度为[1,32],以小写字母开头,允许出现中划线(-)、小写字母和数字,且必须以小写字母或数字结尾。需要和已有应用的参数名称一致。
               values:                                  # 子任务的参数数值,根据参数类型进行合法性校验
               - 'project-test-01:/output-test'
          - task_name: app1-2
            app_id: 'demo-app::1.0.0'
            display_name: '步骤2'
            resources:
              cpu: '0.1C'
              memory: '0.1G'
              gpu_type: ''
              gpu: '0'
            output_dir:
            inputs:
             - name: 'input-dir'
               values:                                  # 子任务的参数数值,格式为${task_name.output_name},表示连线关系,即app1-2需要app1-1成功执行后才会运行
               - '${app1-1.output-dir}'
            outputs:
             - name: 'output-dir'                        # 子任务的参数名称,长度为[1,32],以小写字母开头,允许出现中划线(-)、小写字母和数字,且必须以小写字母或数字结尾。需要和已有应用的参数名称一致。
               values:                                  # 子任务的参数数值,根据参数类型进行合法性校验
               - 'project-test-01:/output-test'
  3. 上传流程模板。

    单击“上传”,在弹出的页面中上传yaml模板。

    图1 上传

相关文档