Starting Intelligent Tasks¶
Function¶
This interface is used to start an intelligent task. Two types of intelligent tasks are supported: intelligent labeling and automatic grouping. You can specify the task_type parameter in the request body to start a type of tasks. For datasets whose data path or working path is in the KMS encryption bucket, active learning and automatic grouping tasks cannot be started, but pre-labeling tasks are supported.
Intelligent Labeling allows you to select an existing model in the system for intelligent labeling based on the labeling and image learning training in the current labeling phase to quickly label the remaining images. Auto labeling includes active learning and pre-labeling. * Active learning: The system uses semi-supervised learning and hard example filtering to perform auto labeling, reducing manual labeling workload and helping you find hard examples. * Pre-labeling: You select a model on the Model Management page for auto labeling. - Auto grouping: Unlabeled images are clustered using the clustering algorithm and then processed based on the clustering result. Images can be labeled by group or cleaned.
Debugging¶
You can debug this API through automatic authentication in or use the SDK sample code generated by API Explorer.
URI¶
POST /v2/{project_id}/datasets/{dataset_id}/tasks
Parameter | Mandatory | Type | Description |
---|---|---|---|
dataset_id | Yes | String | Dataset ID. |
project_id | Yes | String | Project ID. For details about how to obtain a project ID, see Obtaining a Project ID and Name. |
Request Parameters¶
Parameter | Mandatory | Type | Description |
---|---|---|---|
collect_key_sample | No | Boolean | Whether to collect key samples. Options:
|
config | No | SmartTaskConfig object | Task configuration. |
model_id | No | String | Model ID. |
task_type | No | String | Task type. The options are as follows: - auto-label: active learning - pre-label: pre-labeling - auto-grouping: auto grouping |
Parameter | Mandatory | Type | Description |
---|---|---|---|
algorithm_type | No | String | Algorithm type for auto labeling. Options:
|
ambiguity | No | Boolean | Whether to perform clustering based on the image blurring degree. |
annotation_output | No | String | Output path of the active learning labeling result. |
collect_rule | No | String | Sample collection rule. The default value is all, indicating full collection. Currently, only value all is available. |
collect_sample | No | Boolean | Whether to enable sample collection. Options:
|
confidence_scope | No | String | Confidence range of key samples. The minimum and maximum values are separated by hyphens (-). Example: 0.10-0.90. |
description | No | String | Task description. |
engine_name | No | String | Engine name. |
export_format | No | Integer | Format of the exported directory. Options:
|
export_params | No | ExportParams object | Parameters of a dataset export task. |
flavor | No | Flavor object | Training resource flavor. |
image_brightness | No | Boolean | Whether to perform clustering based on the image brightness. |
image_colorfulness | No | Boolean | Whether to perform clustering based on the image color. |
inf_cluster_id | No | String | ID of a dedicated cluster. This parameter is left blank by default, indicating that a dedicated cluster is not used. When using the dedicated cluster to deploy services, ensure that the cluster status is normal. After this parameter is set, the network configuration of the cluster is used, and the vpc_id parameter does not take effect. |
inf_config_list | No | Array of InfConfig objects | Configuration list required for running an inference task, which is optional and left blank by default. |
inf_output | No | String | Output path of inference in active learning. |
infer_result_output_dir | No | String | OBS directory for storing sample prediction results. This parameter is optional. The {service_id}-infer-result subdirectory in the output_dir directory is used by default. |
key_sample_output | No | String | Output path of hard examples in active learning. |
log_url | No | String | OBS URL of the logs of a training job. By default, this parameter is left blank. |
manifest_path | No | String | Path of the manifest file, which is used as the input for training and inference. |
model_id | No | String | Model ID. |
model_name | No | String | Model name. |
model_parameter | No | String | Model parameter. |
model_version | No | String | Model version. |
n_clusters | No | Integer | Number of clusters. |
name | No | String | Task name. |
output_dir | No | String | Sample output path. The format is as follows: Dataset output path/Dataset name |
parameters | No | Array of TrainingParameter objects | Runtime parameters of a training job |
pool_id | No | String | ID of a resource pool. |
property | No | String | Attribute name. |
req_uri | No | String | Inference path of a batch job. |
result_type | No | Integer | Processing mode of auto grouping results. Options:
|
samples | No | Array of SampleLabels objects | List of labeling information for samples to be auto labeled. |
stop_time | No | Integer | Timeout interval, in minutes. The default value is 15 minutes. This parameter is used only in the scenario of auto labeling for videos. |
time | No | String | Timestamp in active learning. |
train_data_path | No | String | Path for storing existing training datasets. |
train_url | No | String | URL of the OBS path where the file of a training job is outputted. By default, this parameter is left blank. |
version_format | No | String | Format of a dataset version. Options:
|
worker_server_num | No | Integer | Number of workers in a training job. |
Parameter | Mandatory | Type | Description |
---|---|---|---|
clear_hard_property | No | Boolean | Whether to clear hard example attributes. Options:
|
export_dataset_version_format | No | String | Format of the dataset version to which data is exported. |
export_dataset_version_name | No | String | Name of the dataset version to which data is exported. |
export_dest | No | String | Dataset export type. The options are as follows:
|
export_new_dataset_name | No | String | Name of the new dataset to which data is exported. |
export_new_dataset_work_path | No | String | Working directory of the new dataset to which data is exported. |
ratio_sample_usage | No | Boolean | Whether to randomly allocate the training set and validation set based on the specified ratio. Options:
|
sample_state | No | String | Sample status. The options are as follows:
|
samples | No | Array of strings | ID list of exported samples. |
search_conditions | No | Array of SearchCondition objects | Exported search conditions. The relationship between multiple search conditions is OR. |
train_sample_ratio | No | String | Split ratio of training set and verification set during specified version release. The default value is 1.00, indicating that all released versions are training sets. |
Parameter | Mandatory | Type | Description |
---|---|---|---|
coefficient | No | String | Filter by coefficient of difficulty. |
frame_in_video | No | Integer | A frame in the video. |
hard | No | String | Whether a sample is a hard sample. Options:
|
import_origin | No | String | Filter by data source. |
kvp | No | String | CT dosage, filtered by dosage. |
label_list | No | SearchLabels object | Label search criteria. |
labeler | No | String | Labeler. |
metadata | No | SearchProp object | Search by sample attribute. |
parent_sample_id | No | String | Parent sample ID. |
sample_dir | No | String | Directory where data samples are stored (the directory must end with a slash (/)). Only samples in the specified directory are searched for. Recursive search of directories is not supported. |
sample_name | No | String | Search by sample name, including the file name extension. |
sample_time | No | String | When a sample is added to the dataset, an index is created based on the last modification time (accurate to day) of the sample on OBS. You can search for the sample based on the time. Options:
|
score | No | String | Search by confidence. |
slice_thickness | No | String | DICOM layer thickness. Samples are filtered by layer thickness. |
study_date | No | String | DICOM scanning time. |
time_in_video | No | String | A time point in the video. |
Parameter | Mandatory | Type | Description |
---|---|---|---|
labels | No | Array of SearchLabel objects | List of label search criteria. |
op | No | String | If you want to search for multiple labels, op must be specified. If you search for only one label, op can be left blank. Options:
|
Parameter | Mandatory | Type | Description |
---|---|---|---|
name | No | String | Label name. |
op | No | String | Operation type between multiple attributes. Options:
|
property | No | Map<String,Array<String>> | Label attribute, which is in the Object format and stores any key-value pairs. key indicates the attribute name, and value indicates the value list. If value is null, the search is not performed by value. Otherwise, the search value can be any value in the list. |
type | No | Integer | Label type. Options:
|
Parameter | Mandatory | Type | Description |
---|---|---|---|
op | No | String | Relationship between attribute values. Options:
|
props | No | Map<String,Array<String>> | Search criteria of an attribute. Multiple search criteria can be set. |
Parameter | Mandatory | Type | Description |
---|---|---|---|
code | No | String | Attribute code of a resource specification, which is used for task creating. |
Parameter | Mandatory | Type | Description |
---|---|---|---|
envs | No | Map<String,String> | (Optional) Environment variable key-value pair required for running a model. By default, this parameter is left blank. To ensure data security, do not enter sensitive information in environment variables. |
instance_count | No | Integer | Instance number of model deployment, that is, the number of compute nodes. |
model_id | No | String | Model ID. |
specification | No | String | Resource specifications of real-time services. For details, see Deploying Services. |
weight | No | Integer | Traffic weight allocated to a model. This parameter is mandatory only when infer_type is set to real-time. The sum of the weights must be 100. |
Parameter | Mandatory | Type | Description |
---|---|---|---|
label | No | String | Parameter name. |
value | No | String | Parameter value. |
Parameter | Mandatory | Type | Description |
---|---|---|---|
labels | No | Array of SampleLabel objects | Sample label list. If this parameter is left blank, all sample labels are deleted. |
metadata | No | SampleMetadata object | Key-value pair of the sample metadata attribute. |
sample_id | No | String | Sample ID. |
sample_type | No | Integer | Sample type. Options:
|
sample_usage | No | String | Sample usage. Options:
|
source | No | String | Source address of sample data, which is obtained by invoking the sample list interface. |
worker_id | No | String | ID of a labeling team member. |
Parameter | Mandatory | Type | Description |
---|---|---|---|
annotated_by | No | String | Video labeling method, which is used to distinguish whether a video is labeled manually or automatically. Options:
|
id | No | String | Label ID. |
name | No | String | Label name. |
property | No | SampleLabelProperty object | Attribute key-value pair of the sample label, such as the object shape and shape feature. |
score | No | Float | Confidence. The value range is [0,1]. |
type | No | Integer | Label type. Options:
|
Parameter | Mandatory | Type | Description |
---|---|---|---|
@modelarts:content | No | String | Speech text content, which is a default attribute dedicated to the speech label (including the speech content and speech start and end points). |
@modelarts:end_index | No | Integer | End position of the text, which is a default attribute dedicated to the named entity label. The end position does not include the character corresponding to the value of end_index. Example:
|
@modelarts:end_time | No | String | Speech end time, which is a default attribute dedicated to the speech start/end point label, in the format of hh:mm:ss.SSS. (hh indicates hour; mm indicates minute; ss indicates second; and SSS indicates millisecond.) |
@modelarts:feature | No | Object | Shape feature, which is a default attribute dedicated to the object detection label, with type of List. The upper left corner of the image is used as the coordinate origin [0, 0]. Each coordinate point is represented by [x, y], where x indicates the horizontal coordinate and y indicates the vertical coordinate (both x and y are >=0). The format of each shape is as follows:
|
@modelarts:from | No | String | ID of the head entity in the triplet relationship label, which is a default attribute dedicated to the triplet relationship label. |
@modelarts:hard | No | String | Sample labeled as a hard sample or not, which is a default attribute. Options:
|
@modelarts:hard_coefficient | No | String | Coefficient of difficulty of each label level, which is a default attribute. The value range is [0,1]. |
@modelarts:hard_reasons | No | String | Reasons that the sample is a hard sample, which is a default attribute. Use a hyphen (-) to separate every two hard sample reason IDs, for example, 3-20-21-19. Options:
|
@modelarts:shape | No | String | Object shape, which is a default attribute dedicated to the object detection label and is left empty by default. Options:
|
@modelarts:source | No | String | Speech source, which is a default attribute dedicated to the speech start/end point label and can be set to a speaker or narrator. |
@modelarts:start_index | No | Integer | Start position of the text, which is a default attribute dedicated to the named entity label. The start value begins from 0, including the character corresponding to the value of start_index. |
@modelarts:start_time | No | String | Speech start time, which is a default attribute dedicated to the speech start/end point label, in the format of hh:mm:ss.SSS. (hh indicates hour; mm indicates minute; ss indicates second; and SSS indicates millisecond.) |
@modelarts:to | No | String | ID of the tail entity in the triplet relationship label, which is a default attribute dedicated to the triplet relationship label. |
Parameter | Mandatory | Type | Description |
---|---|---|---|
@modelarts:import_origin | No | Integer | Sample source, which is a built-in attribute. |
@modelarts:hard | No | Double | Whether the sample is labeled as a hard sample, which is a default attribute. Options:
|
@modelarts:hard_coefficient | No | Double | Coefficient of difficulty of each sample level, which is a default attribute. The value range is [0,1]. |
@modelarts:hard_reasons | No | Array of integers | ID of a hard sample reason, which is a default attribute. Options:
|
@modelarts:size | No | Array of objects | Image size (width, height, and depth of the image), which is a default attribute, with type of List<Integer>. In the list, the first number indicates the width (pixels), the second number indicates the height (pixels), and the third number indicates the depth (the depth can be left blank and the default value is 3). For example, [100,200,3] and [100,200] are both valid. Note: This parameter is mandatory only when the sample label list contains the object detection label. |
Response Parameters¶
Status code: 200
Parameter | Type | Description |
---|---|---|
task_id | String | Task ID. |
Example Requests¶
The following is an example of how to start an auto labeling (active learning) task. The task type has been set to auto-label.
{ "task_type" : "auto-label", "collect_key_sample" : true, "config" : { "algorithm_type" : "fast" } }
The following is an example of how to start an auto labeling (pre-labeling) task. The task type has been set to 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 } ] } }
The following is an example of how to start an auto grouping task. The task type has been set to auto-grouping.
{ "task_type" : "auto-grouping", "config" : { "n_clusters" : "2", "ambiguity" : false, "image_brightness" : false, "image_colorfulness" : false, "property" : "size", "result_type" : 1 } }
Example Responses¶
Status code: 200
OK
{
"task_id" : "r0jT2zwxBDKf8KEnSuZ"
}
Status Codes¶
Status Code | Description |
---|---|
200 | OK |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
Error Codes¶
See Error Codes.