Submitting labeling requests

Once your project includes the dataset, label set, and instructions, you are ready to start the labeling task.

We suggest you send a small dataset first, get labeling results, review them, identify missing cases, then refine your instructions. It usually takes several iterations to get good instructions. Only send large datasets when you feel comfortable with your instructions.

To ensure labeling quality, we will contact you to clarify cases that are not covered by the instructions or are unclear. We will send an email with a link that you can use to access the associated labeling task page. In the page, you can send feedback. If you submit the data labeling task through the Data Labeling Service UI, we contact the user who is signed in to the Google Cloud Console. If you submit the task through the API, we contact the user identified by the user_email_address field in HumanAnnotationConfig. We highly recommend that you fill in this field when submitting tasks through the API, because without the user_email_address field we are not able to contact you. You cannot update the user_email_address field once the data labeling task is started. Instead, you must cancel the task, update the field, then resubmit the task.

If human labelers aren't able to complete your task due to lack of understandable instructions, data or instructions submitted in an unsupported language, a requirement for specific domain knowledge in order to complete the data labeling task, or similar reasons, your task might be canceled. If this occurs, we will send you a message to explain why the task was cancelled.

The AI Platform Data Labeling Service supports labeling of three types of data: images, video, and text. See Stage the unlabeled data for information about the supported formats. The human labelers' task is different for each data type, so the information you need to supply when you submit the labeling request is different too.

Select the type of data you want to label from the list below.

The labeling request is a long-running operation. When you submit a request, the response contains the operation ID, which you can use to check the status of the request.

In the command below, replace operation-name with the full name of the operation in the response. The full name has the format projects/{project-id}/locations/us-central1/operations/{operation-id}.

curl \
  -X GET \
  -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
  -H "Content-Type: application/json" \
  https://datalabeling.googleapis.com/v1beta1/operation-name

When the labeling is complete, the response contains the value "done": true.

{"response":
{"importCount": 3, "@type": "type.googleapis.com/google.cloud.data-labeling.v1alpha1.ImportDataOperationResponse", "dataset": "projects/google.com:labelingapitesting/datasets/5bae76a9_0000_22cf_a7d6_089e083237f4"},
"done": true,
"name": "projects/google.com:labelingapitesting/operations/5bae7811_0000_2eef_8327_94eb2c1eab5c",
"metadata": {"@type": "type.googleapis.com/google.cloud.data-labeling.v1alpha1.ImportDataOperationMetadata", "dataset": "projects/google.com:labelingapitesting/datasets/5bae76a9_0000_22cf_a7d6_089e083237f4"}
}

Follow the steps in Reviewing labeled data to review labeling task results.