更新时间:2024-05-30 GMT+08:00

启动智能任务

功能介绍

启动智能任务,支持启动“智能标注”和“自动分组”两大类智能任务。可通过指定请求体中的“task_type”参数来启动某类任务。数据路径或工作路径位于KMS加密桶的数据集,不支持启动主动学习和自动分组任务,支持预标注任务。

  • “智能标注”是指基于当前标注阶段的标签及图片学习训练,选中系统中已有的模型进行智能标注,快速完成剩余图片的标注操作。“智能标注”又包含“主动学习”和“预标注”两类。

    • “主动学习”表示系统将自动使用半监督学习、难例筛选等多种手段进行智能标注,降低人工标注量,帮助用户找到难例。

    • “预标注”表示选择用户模型管理里面的模型进行智能标注。

  • “自动分组”是指先使用聚类算法对未标注图片进行聚类,再根据聚类结果进行处理,可以分组打标或者清洗图片。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

URI

POST /v2/{project_id}/datasets/{dataset_id}/tasks

表1 路径参数

参数

是否必选

参数类型

描述

dataset_id

String

数据集ID。

project_id

String

用户项目ID。获取方法请参见获取项目ID和名称

请求参数

表2 请求Body参数

参数

是否必选

参数类型

描述

collect_key_sample

Boolean

是否收集关键样本。可选值如下:

  • true:收集关键样本

  • false:不收集关键样本(默认值)

config

SmartTaskConfig object

任务配置。

model_id

String

模型ID。

task_type

String

任务类型。可选值如下:

  • auto-label:主动学习

  • pre-label:预标注

  • auto-grouping:自动分组

表3 SmartTaskConfig

参数

是否必选

参数类型

描述

algorithm_type

String

自动标注的算法类型。可选值如下:

  • fast:快速型,仅使用已标注样本进行训练

  • accurate:准确型,除已标注样本外,会额外使用未标注的样本做半监督训练

ambiguity

Boolean

是否通过图片模糊度来聚类。

annotation_output

String

主动学习标注结果输出路径。

collect_rule

String

样本收集规则,默认为全量收集规则“all”。当前仅支持全量收集规则“all”。

collect_sample

Boolean

是否启用样本收集。可选值如下:

  • true:启用样本收集(默认值)

  • false:不启用样本收集

confidence_scope

String

关键样本置信度范围,用中划线隔开最小值和最大值。比如:“0.10-0.90”。

description

String

任务描述。

engine_name

String

引擎名称。

export_format

Integer

导出的目录格式。可选值如下:

  • 1:树状结构。如:rabbits/1.jpg,bees/2.jpg。

  • 2:平铺结构。如:1.jpg, 1.txt;2.jpg,2.txt。

export_params

ExportParams object

导出数据集任务的参数。

flavor

Flavor object

训练资源规格。

image_brightness

Boolean

是否通过图片亮度来聚类。

image_colorfulness

Boolean

是否通过图片色彩来聚类。

inf_cluster_id

String

专属集群ID,默认为空,不使用专属集群;使用专属集群部署服务时需确保集群状态正常;配置此参数后,则使用集群的网络配置,vpc_id参数不生效。

inf_config_list

Array of InfConfig objects

运行推理任务需要的配置列表,可选填,默认为空。

inf_output

String

主动学习中推理的输出路径。

infer_result_output_dir

String

样本预测结果输出OBS目录,可以不输入,默认使用output_dir目录下的{service_id}-infer-result子目录。

key_sample_output

String

主动学习中难例的输出路径。

log_url

String

训练作业的日志OBS输出路径URL,默认为空。

manifest_path

String

manifest路径,给训练、推理作为输入。

model_id

String

模型ID。

model_name

String

模型名称。

model_parameter

String

模型参数。

model_version

String

模型版本。

n_clusters

Integer

聚类数。

name

String

任务名称。

output_dir

String

样本输出路径,格式:数据集输出路径+数据集名称+“-”+数据集ID+“/annotation/auto-deploy/”。例如:“/test/work_1608083108676/dataset123-g6IO9qSu6hoxwCAirfm/annotation/auto-deploy/”。

parameters

Array of TrainingParameter objects

训练作业的运行参数列表。

pool_id

String

资源池ID。

property

String

属性名。

req_uri

String

批量任务中调用的推理路径。

result_type

Integer

自动分组结果处理方式。可选值如下:

  • 0:保存到OBS

  • 1:保存到样本

samples

Array of SampleLabels objects

需要进行自动标注的样本标注信息列表。

stop_time

Integer

超时等待时间(单位是分钟),默认15分钟,此参数仅视频自动标注场景使用。

time

String

主动学习中的时间戳。

train_data_path

String

已有训练数据集路径。

train_url

String

训练作业的输出文件OBS路径URL,默认为空。

version_format

String

数据集版本格式。可选值如下:

  • Default:默认格式

  • CarbonData:Carbon格式(仅表格数据集支持)

  • CSV:CSV格式

worker_server_num

Integer

训练作业worker的个数。

表4 ExportParams

参数

是否必选

参数类型

描述

clear_hard_property

Boolean

是否清空难例属性。可选值如下:

  • true:清空难例属性(默认值)

  • false:不清空难例属性

export_dataset_version_format

String

导出数据集版本的格式。

export_dataset_version_name

String

导出数据集版本的名称。

export_dest

String

数据集导出类型。可选值如下:

  • DIR:导出到OBS(默认值)

  • NEW_DATASET:导出到新数据集

export_new_dataset_name

String

导出新数据集的名称。

export_new_dataset_work_path

String

导出新数据集的工作目录。

ratio_sample_usage

Boolean

指定切分比例后,是否按指定比例随机分配训练-验证集。可选值如下:

  • true:主动随机分配训练集-验证集

  • false:不主动随机分配训练集-验证集(默认值)

sample_state

String

样本状态。可选样本状态如下:

  • __ALL__:已标注

  • __NONE__:未标注

  • __UNCHECK__:待验收

  • __ACCEPTED__:验收通过

  • __REJECTED__:已驳回

  • __UNREVIEWED__:待审核

  • __REVIEWED__:已审核

  • __WORKFORCE_SAMPLED__:已采样

  • __WORKFORCE_SAMPLED_UNCHECK__:采样待验收

  • __WORKFORCE_SAMPLED_CHECKED__:采样已验收

  • __WORKFORCE_SAMPLED_ACCEPTED__:采样已通过

  • __WORKFORCE_SAMPLED_REJECTED__:采样已驳回

  • __AUTO_ANNOTATION__:待确认

samples

Array of strings

导出的样本ID列表。

search_conditions

Array of SearchCondition objects

导出的筛选条件,多个条件之间是或(OR)关系。

train_sample_ratio

String

指定发布版本时训练集-验证集的切分比例,默认为1.00,即全部分为训练集。

表5 SearchCondition

参数

是否必选

参数类型

描述

coefficient

String

根据难度系数筛选。

frame_in_video

Integer

视频中某帧。

hard

String

样本级别是否难例。可选值如下:

  • 0:非难例样本

  • 1:难例样本

import_origin

String

根据数据来源筛选。

kvp

String

CT剂量,通过剂量来筛选。

label_list

SearchLabels object

标签搜索条件。

labeler

String

标注人。

metadata

SearchProp object

通过样本属性搜索。

parent_sample_id

String

父样本ID。

sample_dir

String

根据样本所在目录搜索(目录需要以/结尾),只搜索指定目录下的样本,不支持目录递归搜索。

sample_name

String

根据样本名称搜索(含后缀名)。

sample_time

String

样本加入到数据集时,会根据样本在OBS上的最后修改时间(精确到天)建立索引,此处可以根据此时间进行搜索。可选值如下:

  • month:搜索往前30天至今天内添加的样本

  • day:搜索昨天(往前1天)至今天内添加的样本

  • yyyyMMdd-yyyyMMdd:搜索指定时间段内添加的样本,格式为“起始日期-结束日期”,查询天数不能超过30天。例如:“20190901-2019091501”表示搜索2019年9月1日至2019年9月15日期间的样本。

score

String

根据置信度筛选。

slice_thickness

String

DICOM层厚,通过层厚筛选样本。

study_date

String

DICOM扫描时间。

time_in_video

String

视频中某个时间。

表6 SearchLabels

参数

是否必选

参数类型

描述

labels

Array of SearchLabel objects

标签搜索条件列表。

op

String

如要搜索多个标签,则op需要有值;如果只搜索一个标签,则无需指定op的值。可选值如下:

  • OR:或操作

  • AND:与操作

表7 SearchLabel

参数

是否必选

参数类型

描述

name

String

标签名。

op

String

多个属性之间的操作类型。可选值如下:

  • OR:或操作

  • AND:与操作

property

Map<String,Array<String>>

标签属性,是Object格式,存放任意的键值对;key是属性名称,value是取值列表,如value为null表示不根据值搜索,否则搜索的值满足列表中任意一个即可。

type

Integer

标签类型。可选值如下:

  • 0:图像分类

  • 1:物体检测

  • 3: 图像分割

  • 100:文本分类

  • 101:命名实体

  • 102:文本三元组关系标签

  • 103:文本三元组实体标签

  • 200:语音分类

  • 201:语音内容

  • 202:语音分割

  • 600:视频标注

表8 SearchProp

参数

是否必选

参数类型

描述

op

String

多个属性值之间的关系。可选值如下:

  • AND:与关系

  • OR:或关系

props

Map<String,Array<String>>

属性的搜索条件,可以有多个属性条件。

表9 Flavor

参数

是否必选

参数类型

描述

code

String

资源规格的属性编码,用于创建作业。

表10 InfConfig

参数

是否必选

参数类型

描述

envs

Map<String,String>

运行模型需要的环境变量键值对,可选填,默认为空。为确保您的数据安全,在环境变量中,请勿输入敏感信息。

instance_count

Integer

模型部署的实例数,即计算节点的个数。

model_id

String

模型ID。

specification

String

在线服务的资源规格。详见部署服务

weight

Integer

权重百分比,分配到此模型的流量权重;仅当infer_type为real-time时需要配置,多个权重相加必须等于100。

表11 TrainingParameter

参数

是否必选

参数类型

描述

label

String

参数名。

value

String

参数值。

表12 SampleLabels

参数

是否必选

参数类型

描述

labels

Array of SampleLabel objects

样本标签列表,为空表示删除样本的所有标签。

metadata

SampleMetadata object

样本metadata属性键值对。

sample_id

String

样本ID。

sample_type

Integer

样本类型。可选值如下:

  • 0:图像

  • 1:文本

  • 2:语音

  • 4:表格

  • 6:视频

  • 9:自由格式

sample_usage

String

样本用处。可选值如下:

  • TRAIN:训练

  • EVAL:验证

  • TEST:测试

  • INFERENCE:推理

source

String

样本数据源地址,通过调用样本列表接口获取。

worker_id

String

团队标注的成员ID。

表13 SampleLabel

参数

是否必选

参数类型

描述

annotated_by

String

视频标注途径,用于区分标签是人工标注的还是自动标注的。可选值如下:

  • human:人工标注

  • auto:自动标注

id

String

标签ID。

name

String

标签名。

property

SampleLabelProperty object

样本标签的属性键值对,如物体形状、形状特征等。

score

Float

置信度,取值范围为[0,1]

type

Integer

标签类型。可选值如下:

  • 0:图像分类

  • 1:物体检测

  • 3: 图像分割

  • 100:文本分类

  • 101:命名实体

  • 102:文本三元组关系标签

  • 103:文本三元组实体标签

  • 200:语音分类

  • 201:语音内容

  • 202:语音分割

  • 600:视频标注

表14 SampleLabelProperty

参数

是否必选

参数类型

描述

@modelarts:content

String

语音标签(包含语音内容和语音起止点)专用内置属性:语音文本内容。

@modelarts:end_index

Integer

命名实体标签专用内置属性:文本的结束位置,但不包括end_index所指的字符。例如:

  • 文本内容为“Barack Hussein Obama II (born August 4, 1961) is a attorney and politician.”,则其中人名“Barack Hussein Obama II”的start_index为0,end_index为23。

  • 文本内容为“截止到2018年底,本公司人员规模已经超过100”,则其中时间“2018年底”的start_index为3,end_index为9。

@modelarts:end_time

String

语音起止点标签专用内置属性:语音的结束时间,格式“hh:mm:ss.SSS”(其中hh表示小时,mm表示分钟,ss表示秒,SSS表示毫秒)。

@modelarts:feature

Object

物体检测标签专用内置属性:形状特征,类型为List。以图片的左上角为坐标原点[0, 0],每个坐标点的表示方法为[x, y],x表示横坐标,y表示纵坐标(x和y均>=0)。每种形状的格式如下:

  • bndbox [[0,10],[50,95]] 两个点组成,矩形的左上角为第一个点,矩形的右下角为第二个点(即第一个点x坐标一定小于第二个点的x坐标,第一个点y坐标一定小于第二个点的y坐标)。

  • polygon [[0,100],[50,95],[10,60],[500,400]] 多个点组成,按顺序连接成一个多边形。

  • circle [[100,100],[50]] 一个圆心点和半径组成。

  • line [[0,100],[50,95]] 两个点组成,第一个点起始点,第二个点为终止点。

  • dashed [[0,100],[50,95]] 两个点组成,第一个点起始点,第二个点为终止点。

  • point [[0,100]] 一个点组成。

  • polyline [[0,100],[50,95],[10,60],[500,400]] 折线,多个点组成。

@modelarts:from

String

三元组关系标签专用内置属性:三元组关系标签的起始实体ID。

@modelarts:hard

String

内置属性:标签级别是否难例。可选值为:

  • 0/false:非难例

  • 1/true:难例

@modelarts:hard_coefficient

String

内置属性:标签级别难度系数。范围为[0,1]。

@modelarts:hard_reasons

String

内置属性:标签级别难例原因。通过中划线间隔单个难例原因ID,例如:“3-20-21-19”。难例原因ID可选值如下:

  • 0:未识别出任何目标物体。

  • 1:置信度偏低。

  • 2:基于训练数据集的聚类结果和预测结果不一致。

  • 3:预测结果和训练集同类别数据差异较大。

  • 4:连续多张相似图片的预测结果不一致。

  • 5:图像的分辨率与训练数据集的特征分布存在较大偏移。

  • 6:图像的高宽比与训练数据集的特征分布存在较大偏移。

  • 7:图像的亮度与训练数据集的特征分布存在较大偏移。

  • 8:图像的饱和度与训练数据集的特征分布存在较大偏移。

  • 9:图像的色彩丰富程度与训练数据集的特征分布存在较大偏移。

  • 10:图像的清晰度与训练数据集的特征分布存在较大偏移。

  • 11:图像的目标框数量与训练数据集的特征分布存在较大偏移。

  • 12:图像中目标框的面积标准差与训练数据集的特征分布存在较大偏移。

  • 13:图像中目标框的高宽比与训练数据集的特征分布存在较大偏移。

  • 14:图像中目标框的面积占比与训练数据集的特征分布存在较大偏移。

  • 15:图像中目标框的边缘化程度与训练数据集的特征分布存在较大偏移。

  • 16:图像中目标框的亮度与训练数据集的特征分布存在较大偏移。

  • 17:图像中目标框的清晰度与训练数据集的特征分布存在较大偏移。

  • 18:图像中目标框的堆叠程度与训练数据集的特征分布存在较大偏移。

  • 19:基于gaussianblur的数据增强与原图预测结果不一致。

  • 20:基于fliplr的数据增强与原图预测结果不一致。

  • 21:基于crop的数据增强与原图预测结果不一致。

  • 22:基于flipud的数据增强与原图预测结果不一致。

  • 23:基于scale的数据增强与原图预测结果不一致。

  • 24:基于translate的数据增强与原图预测结果不一致。

  • 25:基于shear的数据增强与原图预测结果不一致。

  • 26:基于superpixels的数据增强与原图预测结果不一致。

  • 27:基于sharpen的数据增强与原图预测结果不一致。

  • 28:基于add的数据增强与原图预测结果不一致。

  • 29:基于invert的数据增强与原图预测结果不一致。

  • 30:数据被预测为异常点。

@modelarts:shape

String

物体检测标签专用内置属性:物体形状,默认为空。可选值如下:

  • bndbox:矩形。

  • polygon:多边形。

  • circle:圆形。

  • line:直线。

  • dashed:虚线。

  • point:点。

  • polyline:折线。

@modelarts:source

String

语音起止点标签专用内置属性:语音来源(例如说话人/旁白等)。

@modelarts:start_index

Integer

命名实体标签专用内置属性:文本的起始位置,值从0开始,包括start_index所指的字符。

@modelarts:start_time

String

语音起止点标签专用内置属性:语音的起始时间,格式“hh:mm:ss.SSS”(其中hh表示小时,mm表示分钟,ss表示秒,SSS表示毫秒)。

@modelarts:to

String

三元组关系标签专用内置属性:三元组关系标签的指向实体ID。

表15 SampleMetadata

参数

是否必选

参数类型

描述

@modelarts:import_origin

Integer

内置属性:样本来源。

@modelarts:hard

Double

内置属性:样本级别是否难例。可选值为:

  • 0:非难例

  • 1:难例

@modelarts:hard_coefficient

Double

内置属性:样本级别难度系数。范围为[0,1]。

@modelarts:hard_reasons

Array of integers

内置属性:样本级别难例原因ID列表。难例原因ID可选值如下:

  • 0:未识别出任何目标物体。

  • 1:置信度偏低。

  • 2:基于训练数据集的聚类结果和预测结果不一致。

  • 3:预测结果和训练集同类别数据差异较大。

  • 4:连续多张相似图片的预测结果不一致。

  • 5:图像的分辨率与训练数据集的特征分布存在较大偏移。

  • 6:图像的高宽比与训练数据集的特征分布存在较大偏移。

  • 7:图像的亮度与训练数据集的特征分布存在较大偏移。

  • 8:图像的饱和度与训练数据集的特征分布存在较大偏移。

  • 9:图像的色彩丰富程度与训练数据集的特征分布存在较大偏移。

  • 10:图像的清晰度与训练数据集的特征分布存在较大偏移。

  • 11:图像的目标框数量与训练数据集的特征分布存在较大偏移。

  • 12:图像中目标框的面积标准差与训练数据集的特征分布存在较大偏移。

  • 13:图像中目标框的高宽比与训练数据集的特征分布存在较大偏移。

  • 14:图像中目标框的面积占比与训练数据集的特征分布存在较大偏移。

  • 15:图像中目标框的边缘化程度与训练数据集的特征分布存在较大偏移。

  • 16:图像中目标框的亮度与训练数据集的特征分布存在较大偏移。

  • 17:图像中目标框的清晰度与训练数据集的特征分布存在较大偏移。

  • 18:图像中目标框的堆叠程度与训练数据集的特征分布存在较大偏移。

  • 19:基于gaussianblur的数据增强与原图预测结果不一致。

  • 20:基于fliplr的数据增强与原图预测结果不一致。

  • 21:基于crop的数据增强与原图预测结果不一致。

  • 22:基于flipud的数据增强与原图预测结果不一致。

  • 23:基于scale的数据增强与原图预测结果不一致。

  • 24:基于translate的数据增强与原图预测结果不一致。

  • 25:基于shear的数据增强与原图预测结果不一致。

  • 26:基于superpixels的数据增强与原图预测结果不一致。

  • 27:基于sharpen的数据增强与原图预测结果不一致。

  • 28:基于add的数据增强与原图预测结果不一致。

  • 29:基于invert的数据增强与原图预测结果不一致。

  • 30:数据被预测为异常点。

@modelarts:size

Array of objects

内置属性:图像尺寸(图像的宽度、高度、深度),类型为List[/topic/body/section/table/tgroup/tbody/row/entry/p/br {""}) (br]。列表中的第一个数字为宽度(像素),第二个数字为高度(像素),第三个数字为深度(深度可以没有,默认为3),如[100,200,3]和[100,200]均合法。 说明:只有当样本的标签列表包含物体检测标签时,此字段必选。

响应参数

状态码: 200

表16 响应Body参数

参数

参数类型

描述

task_id

String

任务ID。

请求示例

  • 启动智能标注(主动学习)任务。任务类型选择“auto-label”。

    {
      "task_type" : "auto-label",
      "collect_key_sample" : true,
      "config" : {
        "algorithm_type" : "fast"
      }
    }
  • 启动智能标注(预标注)任务。任务类型选择“pre-label”。

    {
      "task_type" : "pre-label",
      "model_id" : "c4989033-7584-44ee-a180-1c476b810e46",
      "collect_key_sample" : true,
      "config" : {
        "inf_config_list" : [ {
          "specification" : "modelarts.vm.cpu.2u",
          "instance_count" : 1
        } ]
      }
    }
  • 启动自动分组任务。任务类型选择“auto-grouping”。

    {
      "task_type" : "auto-grouping",
      "config" : {
        "n_clusters" : "2",
        "ambiguity" : false,
        "image_brightness" : false,
        "image_colorfulness" : false,
        "property" : "size",
        "result_type" : 1
      }
    }

响应示例

状态码: 200

OK

{
  "task_id" : "r0jT2zwxBDKf8KEnSuZ"
}

状态码

状态码

描述

200

OK

401

Unauthorized

403

Forbidden

404

Not Found

错误码

请参见错误码