diff --git a/datalabeling/google/__init__.py b/datalabeling/google/__init__.py
index 8fcc60e2b9c6..9a1b64a6d586 100644
--- a/datalabeling/google/__init__.py
+++ b/datalabeling/google/__init__.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
-# Copyright 2019 Google LLC
+# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/datalabeling/google/cloud/__init__.py b/datalabeling/google/cloud/__init__.py
index 8fcc60e2b9c6..9a1b64a6d586 100644
--- a/datalabeling/google/cloud/__init__.py
+++ b/datalabeling/google/cloud/__init__.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
-# Copyright 2019 Google LLC
+# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/datalabeling/google/cloud/datalabeling.py b/datalabeling/google/cloud/datalabeling.py
index f852ea6c3b1a..d4b9c191eecc 100644
--- a/datalabeling/google/cloud/datalabeling.py
+++ b/datalabeling/google/cloud/datalabeling.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
-# Copyright 2019 Google LLC
+# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/gapic/data_labeling_service_client.py b/datalabeling/google/cloud/datalabeling_v1beta1/gapic/data_labeling_service_client.py
index c4de47d05a63..31f5785a783d 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/gapic/data_labeling_service_client.py
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/gapic/data_labeling_service_client.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
-# Copyright 2019 Google LLC
+# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -726,9 +726,7 @@ def export_data(
>>> client = datalabeling_v1beta1.DataLabelingServiceClient()
>>>
>>> name = client.dataset_path('[PROJECT]', '[DATASET]')
- >>>
- >>> # TODO: Initialize `annotated_dataset`:
- >>> annotated_dataset = ''
+ >>> annotated_dataset = client.annotated_dataset_path('[PROJECT]', '[DATASET]', '[ANNOTATED_DATASET]')
>>>
>>> # TODO: Initialize `output_config`:
>>> output_config = {}
@@ -1174,6 +1172,74 @@ def list_annotated_datasets(
)
return iterator
+ def delete_annotated_dataset(
+ self,
+ name,
+ retry=google.api_core.gapic_v1.method.DEFAULT,
+ timeout=google.api_core.gapic_v1.method.DEFAULT,
+ metadata=None,
+ ):
+ """
+ Deletes an annotated dataset by resource name.
+
+ Example:
+ >>> from google.cloud import datalabeling_v1beta1
+ >>>
+ >>> client = datalabeling_v1beta1.DataLabelingServiceClient()
+ >>>
+ >>> name = client.annotated_dataset_path('[PROJECT]', '[DATASET]', '[ANNOTATED_DATASET]')
+ >>>
+ >>> client.delete_annotated_dataset(name)
+
+ Args:
+ name (str): Required. Name of the annotated dataset to delete, format:
+ projects/{project\_id}/datasets/{dataset\_id}/annotatedDatasets/
+ {annotated\_dataset\_id}
+ retry (Optional[google.api_core.retry.Retry]): A retry object used
+ to retry requests. If ``None`` is specified, requests will
+ be retried using a default configuration.
+ timeout (Optional[float]): The amount of time, in seconds, to wait
+ for the request to complete. Note that if ``retry`` is
+ specified, the timeout applies to each individual attempt.
+ metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata
+ that is provided to the method.
+
+ Raises:
+ google.api_core.exceptions.GoogleAPICallError: If the request
+ failed for any reason.
+ google.api_core.exceptions.RetryError: If the request failed due
+ to a retryable error and retry attempts failed.
+ ValueError: If the parameters are invalid.
+ """
+ # Wrap the transport method to add retry and timeout logic.
+ if "delete_annotated_dataset" not in self._inner_api_calls:
+ self._inner_api_calls[
+ "delete_annotated_dataset"
+ ] = google.api_core.gapic_v1.method.wrap_method(
+ self.transport.delete_annotated_dataset,
+ default_retry=self._method_configs["DeleteAnnotatedDataset"].retry,
+ default_timeout=self._method_configs["DeleteAnnotatedDataset"].timeout,
+ client_info=self._client_info,
+ )
+
+ request = data_labeling_service_pb2.DeleteAnnotatedDatasetRequest(name=name)
+ if metadata is None:
+ metadata = []
+ metadata = list(metadata)
+ try:
+ routing_header = [("name", name)]
+ except AttributeError:
+ pass
+ else:
+ routing_metadata = google.api_core.gapic_v1.routing_header.to_grpc_metadata(
+ routing_header
+ )
+ metadata.append(routing_metadata)
+
+ self._inner_api_calls["delete_annotated_dataset"](
+ request, retry=retry, timeout=timeout, metadata=metadata
+ )
+
def label_image(
self,
parent,
@@ -2442,7 +2508,8 @@ def get_evaluation(
metadata=None,
):
"""
- Gets an evaluation by resource name.
+ Gets an evaluation by resource name (to search, use
+ ``projects.evaluations.search``).
Example:
>>> from google.cloud import datalabeling_v1beta1
@@ -2455,7 +2522,8 @@ def get_evaluation(
Args:
name (str): Required. Name of the evaluation. Format:
- 'projects/{project\_id}/datasets/{dataset\_id}/evaluations/{evaluation\_id}'
+
+ "projects/{project\_id}/datasets/{dataset\_id}/evaluations/{evaluation\_id}'
retry (Optional[google.api_core.retry.Retry]): A retry object used
to retry requests. If ``None`` is specified, requests will
be retried using a default configuration.
@@ -2507,28 +2575,24 @@ def get_evaluation(
def search_evaluations(
self,
parent,
- filter_,
+ filter_=None,
page_size=None,
retry=google.api_core.gapic_v1.method.DEFAULT,
timeout=google.api_core.gapic_v1.method.DEFAULT,
metadata=None,
):
"""
- Searchs evaluations within a project. Supported filter: evaluation\_job,
- evaluation\_time.
+ Searches ``evaluations`` within a project.
Example:
>>> from google.cloud import datalabeling_v1beta1
>>>
>>> client = datalabeling_v1beta1.DataLabelingServiceClient()
>>>
- >>> parent = client.project_path('[PROJECT]')
- >>>
- >>> # TODO: Initialize `filter_`:
- >>> filter_ = ''
+ >>> parent = client.evaluation_path('[PROJECT]', '[DATASET]', '[EVALUATION]')
>>>
>>> # Iterate over all results
- >>> for element in client.search_evaluations(parent, filter_):
+ >>> for element in client.search_evaluations(parent):
... # process element
... pass
>>>
@@ -2536,17 +2600,36 @@ def search_evaluations(
>>> # Alternatively:
>>>
>>> # Iterate over results one page at a time
- >>> for page in client.search_evaluations(parent, filter_).pages:
+ >>> for page in client.search_evaluations(parent).pages:
... for element in page:
... # process element
... pass
Args:
- parent (str): Required. Evaluation search parent. Format: projects/{project\_id}
- filter_ (str): Optional. Support filtering by model id, job state, start and end time.
- Format: "evaluation\_job.evaluation\_job\_id = {evaluation\_job\_id} AND
- evaluation\_job.evaluation\_job\_run\_time\_start = {timestamp} AND
- evaluation\_job.evaluation\_job\_run\_time\_end = {timestamp} AND
+ parent (str): Required. Evaluation search parent (project ID). Format:
+ "projects/{project\_id}"
+ filter_ (str): Optional. To search evaluations, you can filter by the following:
+
+ - evaluation\_job.evaluation\_job\_id (the last part of
+ ``EvaluationJob.name``)
+ - evaluation\_job.model\_id (the {model\_name} portion of
+ ``EvaluationJob.modelVersion``)
+ - evaluation\_job.evaluation\_job\_run\_time\_start (Minimum threshold
+ for the ``evaluationJobRunTime`` that created the evaluation)
+ - evaluation\_job.evaluation\_job\_run\_time\_end (Maximum threshold
+ for the ``evaluationJobRunTime`` that created the evaluation)
+ - evaluation\_job.job\_state (``EvaluationJob.state``)
+ - annotation\_spec.display\_name (the Evaluation contains a metric for
+ the annotation spec with this ``displayName``)
+
+ To filter by multiple critiera, use the ``AND`` operator or the ``OR``
+ operator. The following examples shows a string that filters by several
+ critiera:
+
+ "evaluation\ *job.evaluation\_job\_id = {evaluation\_job\_id} AND
+ evaluation*\ job.model\_id = {model\_name} AND
+ evaluation\ *job.evaluation\_job\_run\_time\_start = {timestamp\_1} AND
+ evaluation*\ job.evaluation\_job\_run\_time\_end = {timestamp\_2} AND
annotation\_spec.display\_name = {display\_name}"
page_size (int): The maximum number of resources contained in the
underlying API response. If page streaming is performed per-
@@ -2626,9 +2709,9 @@ def search_example_comparisons(
metadata=None,
):
"""
- Searchs example comparisons in evaluation, in format of examples
- of both ground truth and prediction(s). It is represented as a search with
- evaluation id.
+ Searches example comparisons from an evaluation. The return format is a
+ list of example comparisons that show ground truth and prediction(s) for
+ a single input. Search by providing an evaluation ID.
Example:
>>> from google.cloud import datalabeling_v1beta1
@@ -2652,9 +2735,10 @@ def search_example_comparisons(
... pass
Args:
- parent (str): Required. Name of the Evaluation resource to search example comparison
- from. Format:
- projects/{project\_id}/datasets/{dataset\_id}/evaluations/{evaluation\_id}
+ parent (str): Required. Name of the ``Evaluation`` resource to search for example
+ comparisons from. Format:
+
+ "projects/{project\_id}/datasets/{dataset\_id}/evaluations/{evaluation\_id}"
page_size (int): The maximum number of resources contained in the
underlying API response. If page streaming is performed per-
resource, this parameter does not affect the return value. If page
@@ -2750,8 +2834,8 @@ def create_evaluation_job(
>>> response = client.create_evaluation_job(parent, job)
Args:
- parent (str): Required. Evaluation job resource parent, format:
- projects/{project\_id}.
+ parent (str): Required. Evaluation job resource parent. Format:
+ "projects/{project\_id}"
job (Union[dict, ~google.cloud.datalabeling_v1beta1.types.EvaluationJob]): Required. The evaluation job to create.
If a dict is provided, it must be of the same form as the protobuf
@@ -2809,13 +2893,18 @@ def create_evaluation_job(
def update_evaluation_job(
self,
evaluation_job,
- update_mask,
+ update_mask=None,
retry=google.api_core.gapic_v1.method.DEFAULT,
timeout=google.api_core.gapic_v1.method.DEFAULT,
metadata=None,
):
"""
- Updates an evaluation job.
+ Updates an evaluation job. You can only update certain fields of the
+ job's ``EvaluationJobConfig``: ``humanAnnotationConfig.instruction``,
+ ``exampleCount``, and ``exampleSamplePercentage``.
+
+ If you want to change any other aspect of the evaluation job, you must
+ delete the job and create a new one.
Example:
>>> from google.cloud import datalabeling_v1beta1
@@ -2825,17 +2914,22 @@ def update_evaluation_job(
>>> # TODO: Initialize `evaluation_job`:
>>> evaluation_job = {}
>>>
- >>> # TODO: Initialize `update_mask`:
- >>> update_mask = {}
- >>>
- >>> response = client.update_evaluation_job(evaluation_job, update_mask)
+ >>> response = client.update_evaluation_job(evaluation_job)
Args:
evaluation_job (Union[dict, ~google.cloud.datalabeling_v1beta1.types.EvaluationJob]): Required. Evaluation job that is going to be updated.
If a dict is provided, it must be of the same form as the protobuf
message :class:`~google.cloud.datalabeling_v1beta1.types.EvaluationJob`
- update_mask (Union[dict, ~google.cloud.datalabeling_v1beta1.types.FieldMask]): Optional. Mask for which field in evaluation\_job should be updated.
+ update_mask (Union[dict, ~google.cloud.datalabeling_v1beta1.types.FieldMask]): Optional. Mask for which fields to update. You can only provide the
+ following fields:
+
+ - ``evaluationJobConfig.humanAnnotationConfig.instruction``
+ - ``evaluationJobConfig.exampleCount``
+ - ``evaluationJobConfig.exampleSamplePercentage``
+
+ You can provide more than one of these fields by separating them with
+ commas.
If a dict is provided, it must be of the same form as the protobuf
message :class:`~google.cloud.datalabeling_v1beta1.types.FieldMask`
@@ -2910,7 +3004,8 @@ def get_evaluation_job(
Args:
name (str): Required. Name of the evaluation job. Format:
- 'projects/{project\_id}/evaluationJobs/{evaluation\_job\_id}'
+
+ "projects/{project\_id}/evaluationJobs/{evaluation\_job\_id}"
retry (Optional[google.api_core.retry.Retry]): A retry object used
to retry requests. If ``None`` is specified, requests will
be retried using a default configuration.
@@ -2967,8 +3062,8 @@ def pause_evaluation_job(
metadata=None,
):
"""
- Pauses an evaluation job. Pausing a evaluation job that is already in
- PAUSED state will be a no-op.
+ Pauses an evaluation job. Pausing an evaluation job that is already in a
+ ``PAUSED`` state is a no-op.
Example:
>>> from google.cloud import datalabeling_v1beta1
@@ -2981,7 +3076,8 @@ def pause_evaluation_job(
Args:
name (str): Required. Name of the evaluation job that is going to be paused. Format:
- 'projects/{project\_id}/evaluationJobs/{evaluation\_job\_id}'
+
+ "projects/{project\_id}/evaluationJobs/{evaluation\_job\_id}"
retry (Optional[google.api_core.retry.Retry]): A retry object used
to retry requests. If ``None`` is specified, requests will
be retried using a default configuration.
@@ -3035,8 +3131,8 @@ def resume_evaluation_job(
metadata=None,
):
"""
- Resumes a paused evaluation job. Deleted evaluation job can't be resumed.
- Resuming a running evaluation job will be a no-op.
+ Resumes a paused evaluation job. A deleted evaluation job can't be resumed.
+ Resuming a running or scheduled evaluation job is a no-op.
Example:
>>> from google.cloud import datalabeling_v1beta1
@@ -3049,7 +3145,9 @@ def resume_evaluation_job(
Args:
name (str): Required. Name of the evaluation job that is going to be resumed.
- Format: 'projects/{project\_id}/evaluationJobs/{evaluation\_job\_id}'
+ Format:
+
+ "projects/{project\_id}/evaluationJobs/{evaluation\_job\_id}"
retry (Optional[google.api_core.retry.Retry]): A retry object used
to retry requests. If ``None`` is specified, requests will
be retried using a default configuration.
@@ -3116,7 +3214,9 @@ def delete_evaluation_job(
Args:
name (str): Required. Name of the evaluation job that is going to be deleted.
- Format: 'projects/{project\_id}/evaluationJobs/{evaluation\_job\_id}'
+ Format:
+
+ "projects/{project\_id}/evaluationJobs/{evaluation\_job\_id}"
retry (Optional[google.api_core.retry.Retry]): A retry object used
to retry requests. If ``None`` is specified, requests will
be retried using a default configuration.
@@ -3165,7 +3265,7 @@ def delete_evaluation_job(
def list_evaluation_jobs(
self,
parent,
- filter_,
+ filter_=None,
page_size=None,
retry=google.api_core.gapic_v1.method.DEFAULT,
timeout=google.api_core.gapic_v1.method.DEFAULT,
@@ -3182,11 +3282,8 @@ def list_evaluation_jobs(
>>>
>>> parent = client.project_path('[PROJECT]')
>>>
- >>> # TODO: Initialize `filter_`:
- >>> filter_ = ''
- >>>
>>> # Iterate over all results
- >>> for element in client.list_evaluation_jobs(parent, filter_):
+ >>> for element in client.list_evaluation_jobs(parent):
... # process element
... pass
>>>
@@ -3194,16 +3291,21 @@ def list_evaluation_jobs(
>>> # Alternatively:
>>>
>>> # Iterate over results one page at a time
- >>> for page in client.list_evaluation_jobs(parent, filter_).pages:
+ >>> for page in client.list_evaluation_jobs(parent).pages:
... for element in page:
... # process element
... pass
Args:
- parent (str): Required. Evaluation resource parent. Format: "projects/{project\_id}"
- filter_ (str): Optional. Only support filter by model id and job state. Format:
- "evaluation\_job.model\_id = {model\_id} AND evaluation\_job.state =
- {EvaluationJob::State}"
+ parent (str): Required. Evaluation job resource parent. Format:
+ "projects/{project\_id}"
+ filter_ (str): Optional. You can filter the jobs to list by model\_id (also known as
+ model\_name, as described in ``EvaluationJob.modelVersion``) or by
+ evaluation job state (as described in ``EvaluationJob.state``). To
+ filter by both criteria, use the ``AND`` operator or the ``OR``
+ operator. For example, you can use the following string for your filter:
+ "evaluation\ *job.model\_id = {model\_name} AND evaluation*\ job.state =
+ {evaluation\_job\_state}"
page_size (int): The maximum number of resources contained in the
underlying API response. If page streaming is performed per-
resource, this parameter does not affect the return value. If page
@@ -3272,69 +3374,3 @@ def list_evaluation_jobs(
response_token_field="next_page_token",
)
return iterator
-
- def delete_annotated_dataset(
- self,
- name=None,
- retry=google.api_core.gapic_v1.method.DEFAULT,
- timeout=google.api_core.gapic_v1.method.DEFAULT,
- metadata=None,
- ):
- """
- Deletes an annotated dataset by resource name.
-
- Example:
- >>> from google.cloud import datalabeling_v1beta1
- >>>
- >>> client = datalabeling_v1beta1.DataLabelingServiceClient()
- >>>
- >>> client.delete_annotated_dataset()
-
- Args:
- name (str): Required. Name of the annotated dataset to delete, format:
- projects/{project\_id}/datasets/{dataset\_id}/annotatedDatasets/
- {annotated\_dataset\_id}
- retry (Optional[google.api_core.retry.Retry]): A retry object used
- to retry requests. If ``None`` is specified, requests will
- be retried using a default configuration.
- timeout (Optional[float]): The amount of time, in seconds, to wait
- for the request to complete. Note that if ``retry`` is
- specified, the timeout applies to each individual attempt.
- metadata (Optional[Sequence[Tuple[str, str]]]): Additional metadata
- that is provided to the method.
-
- Raises:
- google.api_core.exceptions.GoogleAPICallError: If the request
- failed for any reason.
- google.api_core.exceptions.RetryError: If the request failed due
- to a retryable error and retry attempts failed.
- ValueError: If the parameters are invalid.
- """
- # Wrap the transport method to add retry and timeout logic.
- if "delete_annotated_dataset" not in self._inner_api_calls:
- self._inner_api_calls[
- "delete_annotated_dataset"
- ] = google.api_core.gapic_v1.method.wrap_method(
- self.transport.delete_annotated_dataset,
- default_retry=self._method_configs["DeleteAnnotatedDataset"].retry,
- default_timeout=self._method_configs["DeleteAnnotatedDataset"].timeout,
- client_info=self._client_info,
- )
-
- request = data_labeling_service_pb2.DeleteAnnotatedDatasetRequest(name=name)
- if metadata is None:
- metadata = []
- metadata = list(metadata)
- try:
- routing_header = [("name", name)]
- except AttributeError:
- pass
- else:
- routing_metadata = google.api_core.gapic_v1.routing_header.to_grpc_metadata(
- routing_header
- )
- metadata.append(routing_metadata)
-
- self._inner_api_calls["delete_annotated_dataset"](
- request, retry=retry, timeout=timeout, metadata=metadata
- )
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/gapic/data_labeling_service_client_config.py b/datalabeling/google/cloud/datalabeling_v1beta1/gapic/data_labeling_service_client_config.py
index 2c22921218c2..54d9359b93ce 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/gapic/data_labeling_service_client_config.py
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/gapic/data_labeling_service_client_config.py
@@ -9,127 +9,132 @@
"default": {
"initial_retry_delay_millis": 100,
"retry_delay_multiplier": 1.3,
- "max_retry_delay_millis": 30000,
+ "max_retry_delay_millis": 60000,
"initial_rpc_timeout_millis": 20000,
"rpc_timeout_multiplier": 1.0,
"max_rpc_timeout_millis": 20000,
- "total_timeout_millis": 300000,
+ "total_timeout_millis": 600000,
}
},
"methods": {
"CreateDataset": {
- "timeout_millis": 30000,
+ "timeout_millis": 60000,
"retry_codes_name": "non_idempotent",
"retry_params_name": "default",
},
"GetDataset": {
- "timeout_millis": 30000,
+ "timeout_millis": 60000,
"retry_codes_name": "idempotent",
"retry_params_name": "default",
},
"ListDatasets": {
- "timeout_millis": 30000,
+ "timeout_millis": 60000,
"retry_codes_name": "idempotent",
"retry_params_name": "default",
},
"DeleteDataset": {
- "timeout_millis": 30000,
- "retry_codes_name": "idempotent",
+ "timeout_millis": 60000,
+ "retry_codes_name": "non_idempotent",
"retry_params_name": "default",
},
"ImportData": {
- "timeout_millis": 30000,
+ "timeout_millis": 60000,
"retry_codes_name": "non_idempotent",
"retry_params_name": "default",
},
"ExportData": {
- "timeout_millis": 30000,
- "retry_codes_name": "idempotent",
+ "timeout_millis": 60000,
+ "retry_codes_name": "non_idempotent",
"retry_params_name": "default",
},
"GetDataItem": {
- "timeout_millis": 30000,
+ "timeout_millis": 60000,
"retry_codes_name": "idempotent",
"retry_params_name": "default",
},
"ListDataItems": {
- "timeout_millis": 30000,
+ "timeout_millis": 60000,
"retry_codes_name": "idempotent",
"retry_params_name": "default",
},
"GetAnnotatedDataset": {
- "timeout_millis": 30000,
+ "timeout_millis": 60000,
"retry_codes_name": "idempotent",
"retry_params_name": "default",
},
"ListAnnotatedDatasets": {
- "timeout_millis": 30000,
+ "timeout_millis": 60000,
"retry_codes_name": "idempotent",
"retry_params_name": "default",
},
+ "DeleteAnnotatedDataset": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "non_idempotent",
+ "retry_params_name": "default",
+ },
"LabelImage": {
- "timeout_millis": 30000,
+ "timeout_millis": 60000,
"retry_codes_name": "non_idempotent",
"retry_params_name": "default",
},
"LabelVideo": {
- "timeout_millis": 30000,
+ "timeout_millis": 60000,
"retry_codes_name": "non_idempotent",
"retry_params_name": "default",
},
"LabelText": {
- "timeout_millis": 30000,
+ "timeout_millis": 60000,
"retry_codes_name": "non_idempotent",
"retry_params_name": "default",
},
"GetExample": {
- "timeout_millis": 30000,
+ "timeout_millis": 60000,
"retry_codes_name": "idempotent",
"retry_params_name": "default",
},
"ListExamples": {
- "timeout_millis": 30000,
+ "timeout_millis": 60000,
"retry_codes_name": "idempotent",
"retry_params_name": "default",
},
"CreateAnnotationSpecSet": {
- "timeout_millis": 30000,
+ "timeout_millis": 60000,
"retry_codes_name": "non_idempotent",
"retry_params_name": "default",
},
"GetAnnotationSpecSet": {
- "timeout_millis": 30000,
+ "timeout_millis": 60000,
"retry_codes_name": "idempotent",
"retry_params_name": "default",
},
"ListAnnotationSpecSets": {
- "timeout_millis": 30000,
+ "timeout_millis": 60000,
"retry_codes_name": "idempotent",
"retry_params_name": "default",
},
"DeleteAnnotationSpecSet": {
- "timeout_millis": 30000,
- "retry_codes_name": "idempotent",
+ "timeout_millis": 60000,
+ "retry_codes_name": "non_idempotent",
"retry_params_name": "default",
},
"CreateInstruction": {
- "timeout_millis": 30000,
+ "timeout_millis": 60000,
"retry_codes_name": "non_idempotent",
"retry_params_name": "default",
},
"GetInstruction": {
- "timeout_millis": 30000,
+ "timeout_millis": 60000,
"retry_codes_name": "idempotent",
"retry_params_name": "default",
},
"ListInstructions": {
- "timeout_millis": 30000,
+ "timeout_millis": 60000,
"retry_codes_name": "idempotent",
"retry_params_name": "default",
},
"DeleteInstruction": {
- "timeout_millis": 30000,
- "retry_codes_name": "idempotent",
+ "timeout_millis": 60000,
+ "retry_codes_name": "non_idempotent",
"retry_params_name": "default",
},
"GetEvaluation": {
@@ -174,7 +179,7 @@
},
"DeleteEvaluationJob": {
"timeout_millis": 60000,
- "retry_codes_name": "idempotent",
+ "retry_codes_name": "non_idempotent",
"retry_params_name": "default",
},
"ListEvaluationJobs": {
@@ -182,11 +187,6 @@
"retry_codes_name": "idempotent",
"retry_params_name": "default",
},
- "DeleteAnnotatedDataset": {
- "timeout_millis": 60000,
- "retry_codes_name": "non_idempotent",
- "retry_params_name": "default",
- },
},
}
}
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/gapic/enums.py b/datalabeling/google/cloud/datalabeling_v1beta1/gapic/enums.py
index c066882020ac..2a782589734f 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/gapic/enums.py
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/gapic/enums.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
-# Copyright 2019 Google LLC
+# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -34,7 +34,8 @@ class AnnotationSentiment(enum.IntEnum):
class AnnotationSource(enum.IntEnum):
"""
- Specifies where is the answer from.
+ Specifies where the annotation comes from (whether it was provided by a
+ human labeler or a different source).
Attributes:
ANNOTATION_SOURCE_UNSPECIFIED (int)
@@ -49,8 +50,9 @@ class AnnotationType(enum.IntEnum):
"""
Attributes:
ANNOTATION_TYPE_UNSPECIFIED (int)
- IMAGE_CLASSIFICATION_ANNOTATION (int): Classification annotations in an image.
- IMAGE_BOUNDING_BOX_ANNOTATION (int): Bounding box annotations in an image.
+ IMAGE_CLASSIFICATION_ANNOTATION (int): Classification annotations in an image. Allowed for continuous evaluation.
+ IMAGE_BOUNDING_BOX_ANNOTATION (int): Bounding box annotations in an image. A form of image object detection.
+ Allowed for continuous evaluation.
IMAGE_ORIENTED_BOUNDING_BOX_ANNOTATION (int): Oriented bounding box. The box does not have to be parallel to horizontal
line.
IMAGE_BOUNDING_POLY_ANNOTATION (int): Bounding poly annotations in an image.
@@ -60,9 +62,9 @@ class AnnotationType(enum.IntEnum):
VIDEO_OBJECT_TRACKING_ANNOTATION (int): Video object tracking annotation.
VIDEO_OBJECT_DETECTION_ANNOTATION (int): Video object detection annotation.
VIDEO_EVENT_ANNOTATION (int): Video event annotation.
- TEXT_CLASSIFICATION_ANNOTATION (int): Classification for text.
+ TEXT_CLASSIFICATION_ANNOTATION (int): Classification for text. Allowed for continuous evaluation.
TEXT_ENTITY_EXTRACTION_ANNOTATION (int): Entity extraction for text.
- GENERAL_CLASSIFICATION_ANNOTATION (int): General classification.
+ GENERAL_CLASSIFICATION_ANNOTATION (int): General classification. Allowed for continuous evaluation.
"""
ANNOTATION_TYPE_UNSPECIFIED = 0
@@ -85,10 +87,10 @@ class DataType(enum.IntEnum):
"""
Attributes:
DATA_TYPE_UNSPECIFIED (int)
- IMAGE (int)
+ IMAGE (int): Allowed for continuous evaluation.
VIDEO (int)
- TEXT (int)
- GENERAL_DATA (int)
+ TEXT (int): Allowed for continuous evaluation.
+ GENERAL_DATA (int): Allowed for continuous evaluation.
"""
DATA_TYPE_UNSPECIFIED = 0
@@ -120,10 +122,39 @@ class State(enum.IntEnum):
Attributes:
STATE_UNSPECIFIED (int)
- SCHEDULED (int)
- RUNNING (int)
- PAUSED (int)
- STOPPED (int)
+ SCHEDULED (int): The job is scheduled to run at the ``configured interval``. You can
+ ``pause`` or ``delete`` the job.
+
+ When the job is in this state, it samples prediction input and output
+ from your model version into your BigQuery table as predictions occur.
+ RUNNING (int): The job is currently running. When the job runs, Data Labeling Service
+ does several things:
+
+ 1. If you have configured your job to use Data Labeling Service for
+ ground truth labeling, the service creates a ``Dataset`` and a
+ labeling task for all data sampled since the last time the job ran.
+ Human labelers provide ground truth labels for your data. Human
+ labeling may take hours, or even days, depending on how much data has
+ been sampled. The job remains in the ``RUNNING`` state during this
+ time, and it can even be running multiple times in parallel if it
+ gets triggered again (for example 24 hours later) before the earlier
+ run has completed. When human labelers have finished labeling the
+ data, the next step occurs. If you have configured your job to
+ provide your own ground truth labels, Data Labeling Service still
+ creates a ``Dataset`` for newly sampled data, but it expects that you
+ have already added ground truth labels to the BigQuery table by this
+ time. The next step occurs immediately.
+
+ 2. Data Labeling Service creates an ``Evaluation`` by comparing your
+ model version's predictions with the ground truth labels.
+
+ If the job remains in this state for a long time, it continues to sample
+ prediction data into your BigQuery table and will run again at the next
+ interval, even if it causes the job to run multiple times in parallel.
+ PAUSED (int): The job is not sampling prediction input and output into your BigQuery
+ table and it will not run according to its schedule. You can ``resume``
+ the job.
+ STOPPED (int): The job has this state right before it is deleted.
"""
STATE_UNSPECIFIED = 0
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/gapic/transports/data_labeling_service_grpc_transport.py b/datalabeling/google/cloud/datalabeling_v1beta1/gapic/transports/data_labeling_service_grpc_transport.py
index c429a412c130..4e6e56a7d984 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/gapic/transports/data_labeling_service_grpc_transport.py
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/gapic/transports/data_labeling_service_grpc_transport.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
-# Copyright 2019 Google LLC
+# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -253,6 +253,19 @@ def list_annotated_datasets(self):
"""
return self._stubs["data_labeling_service_stub"].ListAnnotatedDatasets
+ @property
+ def delete_annotated_dataset(self):
+ """Return the gRPC stub for :meth:`DataLabelingServiceClient.delete_annotated_dataset`.
+
+ Deletes an annotated dataset by resource name.
+
+ Returns:
+ Callable: A callable which accepts the appropriate
+ deserialized request object and returns a
+ deserialized response object.
+ """
+ return self._stubs["data_labeling_service_stub"].DeleteAnnotatedDataset
+
@property
def label_image(self):
"""Return the gRPC stub for :meth:`DataLabelingServiceClient.label_image`.
@@ -429,7 +442,8 @@ def delete_instruction(self):
def get_evaluation(self):
"""Return the gRPC stub for :meth:`DataLabelingServiceClient.get_evaluation`.
- Gets an evaluation by resource name.
+ Gets an evaluation by resource name (to search, use
+ ``projects.evaluations.search``).
Returns:
Callable: A callable which accepts the appropriate
@@ -442,8 +456,7 @@ def get_evaluation(self):
def search_evaluations(self):
"""Return the gRPC stub for :meth:`DataLabelingServiceClient.search_evaluations`.
- Searchs evaluations within a project. Supported filter: evaluation\_job,
- evaluation\_time.
+ Searches ``evaluations`` within a project.
Returns:
Callable: A callable which accepts the appropriate
@@ -456,9 +469,9 @@ def search_evaluations(self):
def search_example_comparisons(self):
"""Return the gRPC stub for :meth:`DataLabelingServiceClient.search_example_comparisons`.
- Searchs example comparisons in evaluation, in format of examples
- of both ground truth and prediction(s). It is represented as a search with
- evaluation id.
+ Searches example comparisons from an evaluation. The return format is a
+ list of example comparisons that show ground truth and prediction(s) for
+ a single input. Search by providing an evaluation ID.
Returns:
Callable: A callable which accepts the appropriate
@@ -484,7 +497,12 @@ def create_evaluation_job(self):
def update_evaluation_job(self):
"""Return the gRPC stub for :meth:`DataLabelingServiceClient.update_evaluation_job`.
- Updates an evaluation job.
+ Updates an evaluation job. You can only update certain fields of the
+ job's ``EvaluationJobConfig``: ``humanAnnotationConfig.instruction``,
+ ``exampleCount``, and ``exampleSamplePercentage``.
+
+ If you want to change any other aspect of the evaluation job, you must
+ delete the job and create a new one.
Returns:
Callable: A callable which accepts the appropriate
@@ -510,8 +528,8 @@ def get_evaluation_job(self):
def pause_evaluation_job(self):
"""Return the gRPC stub for :meth:`DataLabelingServiceClient.pause_evaluation_job`.
- Pauses an evaluation job. Pausing a evaluation job that is already in
- PAUSED state will be a no-op.
+ Pauses an evaluation job. Pausing an evaluation job that is already in a
+ ``PAUSED`` state is a no-op.
Returns:
Callable: A callable which accepts the appropriate
@@ -524,8 +542,8 @@ def pause_evaluation_job(self):
def resume_evaluation_job(self):
"""Return the gRPC stub for :meth:`DataLabelingServiceClient.resume_evaluation_job`.
- Resumes a paused evaluation job. Deleted evaluation job can't be resumed.
- Resuming a running evaluation job will be a no-op.
+ Resumes a paused evaluation job. A deleted evaluation job can't be resumed.
+ Resuming a running or scheduled evaluation job is a no-op.
Returns:
Callable: A callable which accepts the appropriate
@@ -560,16 +578,3 @@ def list_evaluation_jobs(self):
deserialized response object.
"""
return self._stubs["data_labeling_service_stub"].ListEvaluationJobs
-
- @property
- def delete_annotated_dataset(self):
- """Return the gRPC stub for :meth:`DataLabelingServiceClient.delete_annotated_dataset`.
-
- Deletes an annotated dataset by resource name.
-
- Returns:
- Callable: A callable which accepts the appropriate
- deserialized request object and returns a
- deserialized response object.
- """
- return self._stubs["data_labeling_service_stub"].DeleteAnnotatedDataset
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/proto/annotation.proto b/datalabeling/google/cloud/datalabeling_v1beta1/proto/annotation.proto
index b71e4598090a..4750fdc3bbac 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/proto/annotation.proto
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/proto/annotation.proto
@@ -18,15 +18,16 @@ syntax = "proto3";
package google.cloud.datalabeling.v1beta1;
import "google/api/annotations.proto";
+import "google/api/resource.proto";
import "google/cloud/datalabeling/v1beta1/annotation_spec_set.proto";
-import "google/cloud/datalabeling/v1beta1/data_payloads.proto";
import "google/protobuf/duration.proto";
option go_package = "google.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabeling";
option java_multiple_files = true;
option java_package = "com.google.cloud.datalabeling.v1beta1";
-// Specifies where is the answer from.
+// Specifies where the annotation comes from (whether it was provided by a
+// human labeler or a different source).
enum AnnotationSource {
ANNOTATION_SOURCE_UNSPECIFIED = 0;
@@ -71,10 +72,11 @@ enum AnnotationSentiment {
enum AnnotationType {
ANNOTATION_TYPE_UNSPECIFIED = 0;
- // Classification annotations in an image.
+ // Classification annotations in an image. Allowed for continuous evaluation.
IMAGE_CLASSIFICATION_ANNOTATION = 1;
- // Bounding box annotations in an image.
+ // Bounding box annotations in an image. A form of image object detection.
+ // Allowed for continuous evaluation.
IMAGE_BOUNDING_BOX_ANNOTATION = 2;
// Oriented bounding box. The box does not have to be parallel to horizontal
@@ -102,13 +104,13 @@ enum AnnotationType {
// Video event annotation.
VIDEO_EVENT_ANNOTATION = 6;
- // Classification for text.
+ // Classification for text. Allowed for continuous evaluation.
TEXT_CLASSIFICATION_ANNOTATION = 8;
// Entity extraction for text.
TEXT_ENTITY_EXTRACTION_ANNOTATION = 9;
- // General classification.
+ // General classification. Allowed for continuous evaluation.
GENERAL_CLASSIFICATION_ANNOTATION = 14;
}
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/proto/annotation_pb2.py b/datalabeling/google/cloud/datalabeling_v1beta1/proto/annotation_pb2.py
index 01bc066bdfc1..5ba2d891f96f 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/proto/annotation_pb2.py
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/proto/annotation_pb2.py
@@ -17,12 +17,10 @@
from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
+from google.api import resource_pb2 as google_dot_api_dot_resource__pb2
from google.cloud.datalabeling_v1beta1.proto import (
annotation_spec_set_pb2 as google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_annotation__spec__set__pb2,
)
-from google.cloud.datalabeling_v1beta1.proto import (
- data_payloads_pb2 as google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_data__payloads__pb2,
-)
from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2
@@ -34,12 +32,12 @@
"\n%com.google.cloud.datalabeling.v1beta1P\001ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabeling"
),
serialized_pb=_b(
- '\n8google/cloud/datalabeling_v1beta1/proto/annotation.proto\x12!google.cloud.datalabeling.v1beta1\x1a\x1cgoogle/api/annotations.proto\x1a\x41google/cloud/datalabeling_v1beta1/proto/annotation_spec_set.proto\x1a;google/cloud/datalabeling_v1beta1/proto/data_payloads.proto\x1a\x1egoogle/protobuf/duration.proto"\xe2\x02\n\nAnnotation\x12\x0c\n\x04name\x18\x01 \x01(\t\x12N\n\x11\x61nnotation_source\x18\x02 \x01(\x0e\x32\x33.google.cloud.datalabeling.v1beta1.AnnotationSource\x12L\n\x10\x61nnotation_value\x18\x03 \x01(\x0b\x32\x32.google.cloud.datalabeling.v1beta1.AnnotationValue\x12R\n\x13\x61nnotation_metadata\x18\x04 \x01(\x0b\x32\x35.google.cloud.datalabeling.v1beta1.AnnotationMetadata\x12T\n\x14\x61nnotation_sentiment\x18\x06 \x01(\x0e\x32\x36.google.cloud.datalabeling.v1beta1.AnnotationSentiment"\xd1\x07\n\x0f\x41nnotationValue\x12k\n\x1fimage_classification_annotation\x18\x01 \x01(\x0b\x32@.google.cloud.datalabeling.v1beta1.ImageClassificationAnnotationH\x00\x12h\n\x1eimage_bounding_poly_annotation\x18\x02 \x01(\x0b\x32>.google.cloud.datalabeling.v1beta1.ImageBoundingPolyAnnotationH\x00\x12_\n\x19image_polyline_annotation\x18\x08 \x01(\x0b\x32:.google.cloud.datalabeling.v1beta1.ImagePolylineAnnotationH\x00\x12g\n\x1dimage_segmentation_annotation\x18\t \x01(\x0b\x32>.google.cloud.datalabeling.v1beta1.ImageSegmentationAnnotationH\x00\x12i\n\x1etext_classification_annotation\x18\x03 \x01(\x0b\x32?.google.cloud.datalabeling.v1beta1.TextClassificationAnnotationH\x00\x12n\n!text_entity_extraction_annotation\x18\n \x01(\x0b\x32\x41.google.cloud.datalabeling.v1beta1.TextEntityExtractionAnnotationH\x00\x12k\n\x1fvideo_classification_annotation\x18\x04 \x01(\x0b\x32@.google.cloud.datalabeling.v1beta1.VideoClassificationAnnotationH\x00\x12l\n video_object_tracking_annotation\x18\x05 \x01(\x0b\x32@.google.cloud.datalabeling.v1beta1.VideoObjectTrackingAnnotationH\x00\x12Y\n\x16video_event_annotation\x18\x06 \x01(\x0b\x32\x37.google.cloud.datalabeling.v1beta1.VideoEventAnnotationH\x00\x42\x0c\n\nvalue_type"k\n\x1dImageClassificationAnnotation\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec"\x1e\n\x06Vertex\x12\t\n\x01x\x18\x01 \x01(\x05\x12\t\n\x01y\x18\x02 \x01(\x05"(\n\x10NormalizedVertex\x12\t\n\x01x\x18\x01 \x01(\x02\x12\t\n\x01y\x18\x02 \x01(\x02"K\n\x0c\x42oundingPoly\x12;\n\x08vertices\x18\x01 \x03(\x0b\x32).google.cloud.datalabeling.v1beta1.Vertex"j\n\x16NormalizedBoundingPoly\x12P\n\x13normalized_vertices\x18\x01 \x03(\x0b\x32\x33.google.cloud.datalabeling.v1beta1.NormalizedVertex"\xa2\x02\n\x1bImageBoundingPolyAnnotation\x12H\n\rbounding_poly\x18\x02 \x01(\x0b\x32/.google.cloud.datalabeling.v1beta1.BoundingPolyH\x00\x12]\n\x18normalized_bounding_poly\x18\x03 \x01(\x0b\x32\x39.google.cloud.datalabeling.v1beta1.NormalizedBoundingPolyH\x00\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpecB\x0e\n\x0c\x62ounded_area"G\n\x08Polyline\x12;\n\x08vertices\x18\x01 \x03(\x0b\x32).google.cloud.datalabeling.v1beta1.Vertex"f\n\x12NormalizedPolyline\x12P\n\x13normalized_vertices\x18\x01 \x03(\x0b\x32\x33.google.cloud.datalabeling.v1beta1.NormalizedVertex"\x84\x02\n\x17ImagePolylineAnnotation\x12?\n\x08polyline\x18\x02 \x01(\x0b\x32+.google.cloud.datalabeling.v1beta1.PolylineH\x00\x12T\n\x13normalized_polyline\x18\x03 \x01(\x0b\x32\x35.google.cloud.datalabeling.v1beta1.NormalizedPolylineH\x00\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpecB\x06\n\x04poly"\xa2\x02\n\x1bImageSegmentationAnnotation\x12o\n\x11\x61nnotation_colors\x18\x01 \x03(\x0b\x32T.google.cloud.datalabeling.v1beta1.ImageSegmentationAnnotation.AnnotationColorsEntry\x12\x11\n\tmime_type\x18\x02 \x01(\t\x12\x13\n\x0bimage_bytes\x18\x03 \x01(\x0c\x1aj\n\x15\x41nnotationColorsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12@\n\x05value\x18\x02 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec:\x02\x38\x01"j\n\x1cTextClassificationAnnotation\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec"\xbe\x01\n\x1eTextEntityExtractionAnnotation\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec\x12P\n\x12sequential_segment\x18\x02 \x01(\x0b\x32\x34.google.cloud.datalabeling.v1beta1.SequentialSegment"/\n\x11SequentialSegment\x12\r\n\x05start\x18\x01 \x01(\x05\x12\x0b\n\x03\x65nd\x18\x02 \x01(\x05"w\n\x0bTimeSegment\x12\x34\n\x11start_time_offset\x18\x01 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x32\n\x0f\x65nd_time_offset\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration"\xb1\x01\n\x1dVideoClassificationAnnotation\x12\x44\n\x0ctime_segment\x18\x01 \x01(\x0b\x32..google.cloud.datalabeling.v1beta1.TimeSegment\x12J\n\x0f\x61nnotation_spec\x18\x02 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec"\xfe\x01\n\x13ObjectTrackingFrame\x12H\n\rbounding_poly\x18\x01 \x01(\x0b\x32/.google.cloud.datalabeling.v1beta1.BoundingPolyH\x00\x12]\n\x18normalized_bounding_poly\x18\x02 \x01(\x0b\x32\x39.google.cloud.datalabeling.v1beta1.NormalizedBoundingPolyH\x00\x12.\n\x0btime_offset\x18\x03 \x01(\x0b\x32\x19.google.protobuf.DurationB\x0e\n\x0c\x62ounded_area"\x89\x02\n\x1dVideoObjectTrackingAnnotation\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec\x12\x44\n\x0ctime_segment\x18\x02 \x01(\x0b\x32..google.cloud.datalabeling.v1beta1.TimeSegment\x12V\n\x16object_tracking_frames\x18\x03 \x03(\x0b\x32\x36.google.cloud.datalabeling.v1beta1.ObjectTrackingFrame"\xa8\x01\n\x14VideoEventAnnotation\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec\x12\x44\n\x0ctime_segment\x18\x02 \x01(\x0b\x32..google.cloud.datalabeling.v1beta1.TimeSegment"d\n\x12\x41nnotationMetadata\x12N\n\x11operator_metadata\x18\x02 \x01(\x0b\x32\x33.google.cloud.datalabeling.v1beta1.OperatorMetadata"]\n\x10OperatorMetadata\x12\r\n\x05score\x18\x01 \x01(\x02\x12\x13\n\x0btotal_votes\x18\x02 \x01(\x05\x12\x13\n\x0blabel_votes\x18\x03 \x01(\x05\x12\x10\n\x08\x63omments\x18\x04 \x03(\t*C\n\x10\x41nnotationSource\x12!\n\x1d\x41NNOTATION_SOURCE_UNSPECIFIED\x10\x00\x12\x0c\n\x08OPERATOR\x10\x03*W\n\x13\x41nnotationSentiment\x12$\n ANNOTATION_SENTIMENT_UNSPECIFIED\x10\x00\x12\x0c\n\x08NEGATIVE\x10\x01\x12\x0c\n\x08POSITIVE\x10\x02*\x91\x04\n\x0e\x41nnotationType\x12\x1f\n\x1b\x41NNOTATION_TYPE_UNSPECIFIED\x10\x00\x12#\n\x1fIMAGE_CLASSIFICATION_ANNOTATION\x10\x01\x12!\n\x1dIMAGE_BOUNDING_BOX_ANNOTATION\x10\x02\x12*\n&IMAGE_ORIENTED_BOUNDING_BOX_ANNOTATION\x10\r\x12"\n\x1eIMAGE_BOUNDING_POLY_ANNOTATION\x10\n\x12\x1d\n\x19IMAGE_POLYLINE_ANNOTATION\x10\x0b\x12!\n\x1dIMAGE_SEGMENTATION_ANNOTATION\x10\x0c\x12)\n%VIDEO_SHOTS_CLASSIFICATION_ANNOTATION\x10\x03\x12$\n VIDEO_OBJECT_TRACKING_ANNOTATION\x10\x04\x12%\n!VIDEO_OBJECT_DETECTION_ANNOTATION\x10\x05\x12\x1a\n\x16VIDEO_EVENT_ANNOTATION\x10\x06\x12"\n\x1eTEXT_CLASSIFICATION_ANNOTATION\x10\x08\x12%\n!TEXT_ENTITY_EXTRACTION_ANNOTATION\x10\t\x12%\n!GENERAL_CLASSIFICATION_ANNOTATION\x10\x0e\x42x\n%com.google.cloud.datalabeling.v1beta1P\x01ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabelingb\x06proto3'
+ '\n8google/cloud/datalabeling_v1beta1/proto/annotation.proto\x12!google.cloud.datalabeling.v1beta1\x1a\x1cgoogle/api/annotations.proto\x1a\x19google/api/resource.proto\x1a\x41google/cloud/datalabeling_v1beta1/proto/annotation_spec_set.proto\x1a\x1egoogle/protobuf/duration.proto"\xe2\x02\n\nAnnotation\x12\x0c\n\x04name\x18\x01 \x01(\t\x12N\n\x11\x61nnotation_source\x18\x02 \x01(\x0e\x32\x33.google.cloud.datalabeling.v1beta1.AnnotationSource\x12L\n\x10\x61nnotation_value\x18\x03 \x01(\x0b\x32\x32.google.cloud.datalabeling.v1beta1.AnnotationValue\x12R\n\x13\x61nnotation_metadata\x18\x04 \x01(\x0b\x32\x35.google.cloud.datalabeling.v1beta1.AnnotationMetadata\x12T\n\x14\x61nnotation_sentiment\x18\x06 \x01(\x0e\x32\x36.google.cloud.datalabeling.v1beta1.AnnotationSentiment"\xd1\x07\n\x0f\x41nnotationValue\x12k\n\x1fimage_classification_annotation\x18\x01 \x01(\x0b\x32@.google.cloud.datalabeling.v1beta1.ImageClassificationAnnotationH\x00\x12h\n\x1eimage_bounding_poly_annotation\x18\x02 \x01(\x0b\x32>.google.cloud.datalabeling.v1beta1.ImageBoundingPolyAnnotationH\x00\x12_\n\x19image_polyline_annotation\x18\x08 \x01(\x0b\x32:.google.cloud.datalabeling.v1beta1.ImagePolylineAnnotationH\x00\x12g\n\x1dimage_segmentation_annotation\x18\t \x01(\x0b\x32>.google.cloud.datalabeling.v1beta1.ImageSegmentationAnnotationH\x00\x12i\n\x1etext_classification_annotation\x18\x03 \x01(\x0b\x32?.google.cloud.datalabeling.v1beta1.TextClassificationAnnotationH\x00\x12n\n!text_entity_extraction_annotation\x18\n \x01(\x0b\x32\x41.google.cloud.datalabeling.v1beta1.TextEntityExtractionAnnotationH\x00\x12k\n\x1fvideo_classification_annotation\x18\x04 \x01(\x0b\x32@.google.cloud.datalabeling.v1beta1.VideoClassificationAnnotationH\x00\x12l\n video_object_tracking_annotation\x18\x05 \x01(\x0b\x32@.google.cloud.datalabeling.v1beta1.VideoObjectTrackingAnnotationH\x00\x12Y\n\x16video_event_annotation\x18\x06 \x01(\x0b\x32\x37.google.cloud.datalabeling.v1beta1.VideoEventAnnotationH\x00\x42\x0c\n\nvalue_type"k\n\x1dImageClassificationAnnotation\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec"\x1e\n\x06Vertex\x12\t\n\x01x\x18\x01 \x01(\x05\x12\t\n\x01y\x18\x02 \x01(\x05"(\n\x10NormalizedVertex\x12\t\n\x01x\x18\x01 \x01(\x02\x12\t\n\x01y\x18\x02 \x01(\x02"K\n\x0c\x42oundingPoly\x12;\n\x08vertices\x18\x01 \x03(\x0b\x32).google.cloud.datalabeling.v1beta1.Vertex"j\n\x16NormalizedBoundingPoly\x12P\n\x13normalized_vertices\x18\x01 \x03(\x0b\x32\x33.google.cloud.datalabeling.v1beta1.NormalizedVertex"\xa2\x02\n\x1bImageBoundingPolyAnnotation\x12H\n\rbounding_poly\x18\x02 \x01(\x0b\x32/.google.cloud.datalabeling.v1beta1.BoundingPolyH\x00\x12]\n\x18normalized_bounding_poly\x18\x03 \x01(\x0b\x32\x39.google.cloud.datalabeling.v1beta1.NormalizedBoundingPolyH\x00\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpecB\x0e\n\x0c\x62ounded_area"G\n\x08Polyline\x12;\n\x08vertices\x18\x01 \x03(\x0b\x32).google.cloud.datalabeling.v1beta1.Vertex"f\n\x12NormalizedPolyline\x12P\n\x13normalized_vertices\x18\x01 \x03(\x0b\x32\x33.google.cloud.datalabeling.v1beta1.NormalizedVertex"\x84\x02\n\x17ImagePolylineAnnotation\x12?\n\x08polyline\x18\x02 \x01(\x0b\x32+.google.cloud.datalabeling.v1beta1.PolylineH\x00\x12T\n\x13normalized_polyline\x18\x03 \x01(\x0b\x32\x35.google.cloud.datalabeling.v1beta1.NormalizedPolylineH\x00\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpecB\x06\n\x04poly"\xa2\x02\n\x1bImageSegmentationAnnotation\x12o\n\x11\x61nnotation_colors\x18\x01 \x03(\x0b\x32T.google.cloud.datalabeling.v1beta1.ImageSegmentationAnnotation.AnnotationColorsEntry\x12\x11\n\tmime_type\x18\x02 \x01(\t\x12\x13\n\x0bimage_bytes\x18\x03 \x01(\x0c\x1aj\n\x15\x41nnotationColorsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12@\n\x05value\x18\x02 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec:\x02\x38\x01"j\n\x1cTextClassificationAnnotation\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec"\xbe\x01\n\x1eTextEntityExtractionAnnotation\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec\x12P\n\x12sequential_segment\x18\x02 \x01(\x0b\x32\x34.google.cloud.datalabeling.v1beta1.SequentialSegment"/\n\x11SequentialSegment\x12\r\n\x05start\x18\x01 \x01(\x05\x12\x0b\n\x03\x65nd\x18\x02 \x01(\x05"w\n\x0bTimeSegment\x12\x34\n\x11start_time_offset\x18\x01 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x32\n\x0f\x65nd_time_offset\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration"\xb1\x01\n\x1dVideoClassificationAnnotation\x12\x44\n\x0ctime_segment\x18\x01 \x01(\x0b\x32..google.cloud.datalabeling.v1beta1.TimeSegment\x12J\n\x0f\x61nnotation_spec\x18\x02 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec"\xfe\x01\n\x13ObjectTrackingFrame\x12H\n\rbounding_poly\x18\x01 \x01(\x0b\x32/.google.cloud.datalabeling.v1beta1.BoundingPolyH\x00\x12]\n\x18normalized_bounding_poly\x18\x02 \x01(\x0b\x32\x39.google.cloud.datalabeling.v1beta1.NormalizedBoundingPolyH\x00\x12.\n\x0btime_offset\x18\x03 \x01(\x0b\x32\x19.google.protobuf.DurationB\x0e\n\x0c\x62ounded_area"\x89\x02\n\x1dVideoObjectTrackingAnnotation\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec\x12\x44\n\x0ctime_segment\x18\x02 \x01(\x0b\x32..google.cloud.datalabeling.v1beta1.TimeSegment\x12V\n\x16object_tracking_frames\x18\x03 \x03(\x0b\x32\x36.google.cloud.datalabeling.v1beta1.ObjectTrackingFrame"\xa8\x01\n\x14VideoEventAnnotation\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec\x12\x44\n\x0ctime_segment\x18\x02 \x01(\x0b\x32..google.cloud.datalabeling.v1beta1.TimeSegment"d\n\x12\x41nnotationMetadata\x12N\n\x11operator_metadata\x18\x02 \x01(\x0b\x32\x33.google.cloud.datalabeling.v1beta1.OperatorMetadata"]\n\x10OperatorMetadata\x12\r\n\x05score\x18\x01 \x01(\x02\x12\x13\n\x0btotal_votes\x18\x02 \x01(\x05\x12\x13\n\x0blabel_votes\x18\x03 \x01(\x05\x12\x10\n\x08\x63omments\x18\x04 \x03(\t*C\n\x10\x41nnotationSource\x12!\n\x1d\x41NNOTATION_SOURCE_UNSPECIFIED\x10\x00\x12\x0c\n\x08OPERATOR\x10\x03*W\n\x13\x41nnotationSentiment\x12$\n ANNOTATION_SENTIMENT_UNSPECIFIED\x10\x00\x12\x0c\n\x08NEGATIVE\x10\x01\x12\x0c\n\x08POSITIVE\x10\x02*\x91\x04\n\x0e\x41nnotationType\x12\x1f\n\x1b\x41NNOTATION_TYPE_UNSPECIFIED\x10\x00\x12#\n\x1fIMAGE_CLASSIFICATION_ANNOTATION\x10\x01\x12!\n\x1dIMAGE_BOUNDING_BOX_ANNOTATION\x10\x02\x12*\n&IMAGE_ORIENTED_BOUNDING_BOX_ANNOTATION\x10\r\x12"\n\x1eIMAGE_BOUNDING_POLY_ANNOTATION\x10\n\x12\x1d\n\x19IMAGE_POLYLINE_ANNOTATION\x10\x0b\x12!\n\x1dIMAGE_SEGMENTATION_ANNOTATION\x10\x0c\x12)\n%VIDEO_SHOTS_CLASSIFICATION_ANNOTATION\x10\x03\x12$\n VIDEO_OBJECT_TRACKING_ANNOTATION\x10\x04\x12%\n!VIDEO_OBJECT_DETECTION_ANNOTATION\x10\x05\x12\x1a\n\x16VIDEO_EVENT_ANNOTATION\x10\x06\x12"\n\x1eTEXT_CLASSIFICATION_ANNOTATION\x10\x08\x12%\n!TEXT_ENTITY_EXTRACTION_ANNOTATION\x10\t\x12%\n!GENERAL_CLASSIFICATION_ANNOTATION\x10\x0e\x42x\n%com.google.cloud.datalabeling.v1beta1P\x01ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabelingb\x06proto3'
),
dependencies=[
google_dot_api_dot_annotations__pb2.DESCRIPTOR,
+ google_dot_api_dot_resource__pb2.DESCRIPTOR,
google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_annotation__spec__set__pb2.DESCRIPTOR,
- google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_data__payloads__pb2.DESCRIPTOR,
google_dot_protobuf_dot_duration__pb2.DESCRIPTOR,
],
)
@@ -63,8 +61,8 @@
],
containing_type=None,
serialized_options=None,
- serialized_start=4560,
- serialized_end=4627,
+ serialized_start=4526,
+ serialized_end=4593,
)
_sym_db.RegisterEnumDescriptor(_ANNOTATIONSOURCE)
@@ -91,8 +89,8 @@
],
containing_type=None,
serialized_options=None,
- serialized_start=4629,
- serialized_end=4716,
+ serialized_start=4595,
+ serialized_end=4682,
)
_sym_db.RegisterEnumDescriptor(_ANNOTATIONSENTIMENT)
@@ -204,8 +202,8 @@
],
containing_type=None,
serialized_options=None,
- serialized_start=4719,
- serialized_end=5248,
+ serialized_start=4685,
+ serialized_end=5214,
)
_sym_db.RegisterEnumDescriptor(_ANNOTATIONTYPE)
@@ -337,8 +335,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=286,
- serialized_end=640,
+ serialized_start=252,
+ serialized_end=606,
)
@@ -528,8 +526,8 @@
fields=[],
)
],
- serialized_start=643,
- serialized_end=1620,
+ serialized_start=609,
+ serialized_end=1586,
)
@@ -567,8 +565,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1622,
- serialized_end=1729,
+ serialized_start=1588,
+ serialized_end=1695,
)
@@ -624,8 +622,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1731,
- serialized_end=1761,
+ serialized_start=1697,
+ serialized_end=1727,
)
@@ -681,8 +679,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1763,
- serialized_end=1803,
+ serialized_start=1729,
+ serialized_end=1769,
)
@@ -720,8 +718,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1805,
- serialized_end=1880,
+ serialized_start=1771,
+ serialized_end=1846,
)
@@ -759,8 +757,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1882,
- serialized_end=1988,
+ serialized_start=1848,
+ serialized_end=1954,
)
@@ -842,8 +840,8 @@
fields=[],
)
],
- serialized_start=1991,
- serialized_end=2281,
+ serialized_start=1957,
+ serialized_end=2247,
)
@@ -881,8 +879,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=2283,
- serialized_end=2354,
+ serialized_start=2249,
+ serialized_end=2320,
)
@@ -920,8 +918,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=2356,
- serialized_end=2458,
+ serialized_start=2322,
+ serialized_end=2424,
)
@@ -1003,8 +1001,8 @@
fields=[],
)
],
- serialized_start=2461,
- serialized_end=2721,
+ serialized_start=2427,
+ serialized_end=2687,
)
@@ -1060,8 +1058,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=2908,
- serialized_end=3014,
+ serialized_start=2874,
+ serialized_end=2980,
)
_IMAGESEGMENTATIONANNOTATION = _descriptor.Descriptor(
@@ -1134,8 +1132,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=2724,
- serialized_end=3014,
+ serialized_start=2690,
+ serialized_end=2980,
)
@@ -1173,8 +1171,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=3016,
- serialized_end=3122,
+ serialized_start=2982,
+ serialized_end=3088,
)
@@ -1230,8 +1228,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=3125,
- serialized_end=3315,
+ serialized_start=3091,
+ serialized_end=3281,
)
@@ -1287,8 +1285,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=3317,
- serialized_end=3364,
+ serialized_start=3283,
+ serialized_end=3330,
)
@@ -1344,8 +1342,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=3366,
- serialized_end=3485,
+ serialized_start=3332,
+ serialized_end=3451,
)
@@ -1401,8 +1399,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=3488,
- serialized_end=3665,
+ serialized_start=3454,
+ serialized_end=3631,
)
@@ -1484,8 +1482,8 @@
fields=[],
)
],
- serialized_start=3668,
- serialized_end=3922,
+ serialized_start=3634,
+ serialized_end=3888,
)
@@ -1559,8 +1557,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=3925,
- serialized_end=4190,
+ serialized_start=3891,
+ serialized_end=4156,
)
@@ -1616,8 +1614,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=4193,
- serialized_end=4361,
+ serialized_start=4159,
+ serialized_end=4327,
)
@@ -1655,8 +1653,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=4363,
- serialized_end=4463,
+ serialized_start=4329,
+ serialized_end=4429,
)
@@ -1748,8 +1746,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=4465,
- serialized_end=4558,
+ serialized_start=4431,
+ serialized_end=4524,
)
_ANNOTATION.fields_by_name["annotation_source"].enum_type = _ANNOTATIONSOURCE
@@ -2016,9 +2014,10 @@
dict(
DESCRIPTOR=_ANNOTATION,
__module__="google.cloud.datalabeling_v1beta1.proto.annotation_pb2",
- __doc__="""Annotation for Example. Each example may have one or more annotations.
- For example in image classification problem, each image might have one
- or more labels. We call labels binded with this image an Annotation.
+ __doc__="""Annotation for Example. Each example may have one or more
+ annotations. For example in image classification problem, each image
+ might have one or more labels. We call labels binded with this image an
+ Annotation.
Attributes:
@@ -2177,8 +2176,8 @@
dict(
DESCRIPTOR=_IMAGEBOUNDINGPOLYANNOTATION,
__module__="google.cloud.datalabeling_v1beta1.proto.annotation_pb2",
- __doc__="""Image bounding poly annotation. It represents a polygon including
- bounding box in the image.
+ __doc__="""Image bounding poly annotation. It represents a polygon
+ including bounding box in the image.
Attributes:
@@ -2345,8 +2344,8 @@
dict(
DESCRIPTOR=_TIMESEGMENT,
__module__="google.cloud.datalabeling_v1beta1.proto.annotation_pb2",
- __doc__="""A time period inside of an example that has a time dimension (e.g.
- video).
+ __doc__="""A time period inside of an example that has a time
+ dimension (e.g. video).
Attributes:
@@ -2388,7 +2387,8 @@
dict(
DESCRIPTOR=_OBJECTTRACKINGFRAME,
__module__="google.cloud.datalabeling_v1beta1.proto.annotation_pb2",
- __doc__="""Video frame level annotation for object detection and tracking.
+ __doc__="""Video frame level annotation for object detection and
+ tracking.
Attributes:
@@ -2470,7 +2470,8 @@
dict(
DESCRIPTOR=_OPERATORMETADATA,
__module__="google.cloud.datalabeling_v1beta1.proto.annotation_pb2",
- __doc__="""General information useful for labels coming from contributors.
+ __doc__="""General information useful for labels coming from
+ contributors.
Attributes:
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/proto/annotation_spec_set.proto b/datalabeling/google/cloud/datalabeling_v1beta1/proto/annotation_spec_set.proto
index bd5413dc714d..71bc12a1a67c 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/proto/annotation_spec_set.proto
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/proto/annotation_spec_set.proto
@@ -18,28 +18,36 @@ syntax = "proto3";
package google.cloud.datalabeling.v1beta1;
import "google/api/annotations.proto";
+import "google/api/resource.proto";
option go_package = "google.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabeling";
option java_multiple_files = true;
option java_package = "com.google.cloud.datalabeling.v1beta1";
-// AnnotationSpecSet is a collection of label definitions. For example, in
-// image classification tasks, we define a set of labels, this set is called
-// AnnotationSpecSet. AnnotationSpecSet is immutable upon creation.
+// An AnnotationSpecSet is a collection of label definitions. For example, in
+// image classification tasks, you define a set of possible labels for images as
+// an AnnotationSpecSet. An AnnotationSpecSet is immutable upon creation.
message AnnotationSpecSet {
- // Output only. AnnotationSpecSet resource name, format:
- // projects/{project_id}/annotationSpecSets/{annotation_spec_set_id}
+ option (google.api.resource) = {
+ type: "datalabeling.googleapis.com/AnnotationSpecSet"
+ pattern: "projects/{project}/annotationSpecSets/{annotation_spec_set}"
+ };
+
+ // Output only. The AnnotationSpecSet resource name in the following format:
+ //
+ // "projects/{project_id}/annotationSpecSets/{annotation_spec_set_id}"
string name = 1;
- // Required. The display name for AnnotationSpecSet defined by user.
- // Maximum of 64 characters.
+ // Required. The display name for AnnotationSpecSet that you define when you
+ // create it. Maximum of 64 characters.
string display_name = 2;
// Optional. User-provided description of the annotation specification set.
- // The description can be up to 10000 characters long.
+ // The description can be up to 10,000 characters long.
string description = 3;
- // Required. The actual spec set defined by the users.
+ // Required. The array of AnnotationSpecs that you define when you create the
+ // AnnotationSpecSet. These are the possible labels for the labeling task.
repeated AnnotationSpec annotation_specs = 4;
// Output only. The names of any related resources that are blocking changes
@@ -47,12 +55,15 @@ message AnnotationSpecSet {
repeated string blocking_resources = 5;
}
-// Container of information related to one annotation spec.
+// Container of information related to one possible annotation that can be used
+// in a labeling task. For example, an image classification task where images
+// are labeled as `dog` or `cat` must reference an AnnotationSpec for `dog` and
+// an AnnotationSpec for `cat`.
message AnnotationSpec {
// Required. The display name of the AnnotationSpec. Maximum of 64 characters.
string display_name = 1;
// Optional. User-provided description of the annotation specification.
- // The description can be up to 10000 characters long.
+ // The description can be up to 10,000 characters long.
string description = 2;
}
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/proto/annotation_spec_set_pb2.py b/datalabeling/google/cloud/datalabeling_v1beta1/proto/annotation_spec_set_pb2.py
index e1674fb539a9..7201902009ab 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/proto/annotation_spec_set_pb2.py
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/proto/annotation_spec_set_pb2.py
@@ -16,6 +16,7 @@
from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
+from google.api import resource_pb2 as google_dot_api_dot_resource__pb2
DESCRIPTOR = _descriptor.FileDescriptor(
@@ -26,9 +27,12 @@
"\n%com.google.cloud.datalabeling.v1beta1P\001ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabeling"
),
serialized_pb=_b(
- '\nAgoogle/cloud/datalabeling_v1beta1/proto/annotation_spec_set.proto\x12!google.cloud.datalabeling.v1beta1\x1a\x1cgoogle/api/annotations.proto"\xb5\x01\n\x11\x41nnotationSpecSet\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12K\n\x10\x61nnotation_specs\x18\x04 \x03(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec\x12\x1a\n\x12\x62locking_resources\x18\x05 \x03(\t";\n\x0e\x41nnotationSpec\x12\x14\n\x0c\x64isplay_name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\tBx\n%com.google.cloud.datalabeling.v1beta1P\x01ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabelingb\x06proto3'
+ '\nAgoogle/cloud/datalabeling_v1beta1/proto/annotation_spec_set.proto\x12!google.cloud.datalabeling.v1beta1\x1a\x1cgoogle/api/annotations.proto\x1a\x19google/api/resource.proto"\xa6\x02\n\x11\x41nnotationSpecSet\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12K\n\x10\x61nnotation_specs\x18\x04 \x03(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec\x12\x1a\n\x12\x62locking_resources\x18\x05 \x03(\t:o\xea\x41l\n-datalabeling.googleapis.com/AnnotationSpecSet\x12;projects/{project}/annotationSpecSets/{annotation_spec_set}";\n\x0e\x41nnotationSpec\x12\x14\n\x0c\x64isplay_name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\tBx\n%com.google.cloud.datalabeling.v1beta1P\x01ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabelingb\x06proto3'
),
- dependencies=[google_dot_api_dot_annotations__pb2.DESCRIPTOR],
+ dependencies=[
+ google_dot_api_dot_annotations__pb2.DESCRIPTOR,
+ google_dot_api_dot_resource__pb2.DESCRIPTOR,
+ ],
)
@@ -133,13 +137,15 @@
extensions=[],
nested_types=[],
enum_types=[],
- serialized_options=None,
+ serialized_options=_b(
+ "\352Al\n-datalabeling.googleapis.com/AnnotationSpecSet\022;projects/{project}/annotationSpecSets/{annotation_spec_set}"
+ ),
is_extendable=False,
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=135,
- serialized_end=316,
+ serialized_start=162,
+ serialized_end=456,
)
@@ -195,8 +201,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=318,
- serialized_end=377,
+ serialized_start=458,
+ serialized_end=517,
)
_ANNOTATIONSPECSET.fields_by_name["annotation_specs"].message_type = _ANNOTATIONSPEC
@@ -210,24 +216,28 @@
dict(
DESCRIPTOR=_ANNOTATIONSPECSET,
__module__="google.cloud.datalabeling_v1beta1.proto.annotation_spec_set_pb2",
- __doc__="""AnnotationSpecSet is a collection of label definitions. For example, in
- image classification tasks, we define a set of labels, this set is
- called AnnotationSpecSet. AnnotationSpecSet is immutable upon creation.
+ __doc__="""An AnnotationSpecSet is a collection of label definitions.
+ For example, in image classification tasks, you define a set of possible
+ labels for images as an AnnotationSpecSet. An AnnotationSpecSet is
+ immutable upon creation.
Attributes:
name:
- Output only. AnnotationSpecSet resource name, format: projects
- /{project\_id}/annotationSpecSets/{annotation\_spec\_set\_id}
+ Output only. The AnnotationSpecSet resource name in the
+ following format: "projects/{project\_id}/annotationSpecSets/
+ {annotation\_spec\_set\_id}"
display_name:
- Required. The display name for AnnotationSpecSet defined by
- user. Maximum of 64 characters.
+ Required. The display name for AnnotationSpecSet that you
+ define when you create it. Maximum of 64 characters.
description:
Optional. User-provided description of the annotation
- specification set. The description can be up to 10000
+ specification set. The description can be up to 10,000
characters long.
annotation_specs:
- Required. The actual spec set defined by the users.
+ Required. The array of AnnotationSpecs that you define when
+ you create the AnnotationSpecSet. These are the possible
+ labels for the labeling task.
blocking_resources:
Output only. The names of any related resources that are
blocking changes to the annotation spec set.
@@ -243,7 +253,11 @@
dict(
DESCRIPTOR=_ANNOTATIONSPEC,
__module__="google.cloud.datalabeling_v1beta1.proto.annotation_spec_set_pb2",
- __doc__="""Container of information related to one annotation spec.
+ __doc__="""Container of information related to one possible
+ annotation that can be used in a labeling task. For example, an image
+ classification task where images are labeled as ``dog`` or ``cat`` must
+ reference an AnnotationSpec for ``dog`` and an AnnotationSpec for
+ ``cat``.
Attributes:
@@ -252,7 +266,7 @@
64 characters.
description:
Optional. User-provided description of the annotation
- specification. The description can be up to 10000 characters
+ specification. The description can be up to 10,000 characters
long.
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.AnnotationSpec)
@@ -262,4 +276,5 @@
DESCRIPTOR._options = None
+_ANNOTATIONSPECSET._options = None
# @@protoc_insertion_point(module_scope)
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/proto/data_labeling_service.proto b/datalabeling/google/cloud/datalabeling_v1beta1/proto/data_labeling_service.proto
index 8395206d9bea..7616bc2f7a4f 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/proto/data_labeling_service.proto
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/proto/data_labeling_service.proto
@@ -19,14 +19,14 @@ package google.cloud.datalabeling.v1beta1;
import "google/api/annotations.proto";
import "google/api/client.proto";
-import "google/cloud/datalabeling/v1beta1/annotation.proto";
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
import "google/cloud/datalabeling/v1beta1/annotation_spec_set.proto";
import "google/cloud/datalabeling/v1beta1/dataset.proto";
import "google/cloud/datalabeling/v1beta1/evaluation.proto";
import "google/cloud/datalabeling/v1beta1/evaluation_job.proto";
import "google/cloud/datalabeling/v1beta1/human_annotation_config.proto";
import "google/cloud/datalabeling/v1beta1/instruction.proto";
-import "google/cloud/datalabeling/v1beta1/operations.proto";
import "google/longrunning/operations.proto";
import "google/protobuf/empty.proto";
import "google/protobuf/field_mask.proto";
@@ -37,8 +37,7 @@ option java_package = "com.google.cloud.datalabeling.v1beta1";
service DataLabelingService {
option (google.api.default_host) = "datalabeling.googleapis.com";
- option (google.api.oauth_scopes) =
- "https://www.googleapis.com/auth/cloud-platform";
+ option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
// Creates dataset. If success return a Dataset resource.
rpc CreateDataset(CreateDatasetRequest) returns (Dataset) {
@@ -46,6 +45,7 @@ service DataLabelingService {
post: "/v1beta1/{parent=projects/*}/datasets"
body: "*"
};
+ option (google.api.method_signature) = "parent,dataset";
}
// Gets dataset by resource name.
@@ -53,6 +53,7 @@ service DataLabelingService {
option (google.api.http) = {
get: "/v1beta1/{name=projects/*/datasets/*}"
};
+ option (google.api.method_signature) = "name";
}
// Lists datasets under a project. Pagination is supported.
@@ -60,6 +61,7 @@ service DataLabelingService {
option (google.api.http) = {
get: "/v1beta1/{parent=projects/*}/datasets"
};
+ option (google.api.method_signature) = "parent,filter";
}
// Deletes a dataset by resource name.
@@ -67,6 +69,7 @@ service DataLabelingService {
option (google.api.http) = {
delete: "/v1beta1/{name=projects/*/datasets/*}"
};
+ option (google.api.method_signature) = "name";
}
// Imports data into dataset based on source locations defined in request.
@@ -79,6 +82,11 @@ service DataLabelingService {
post: "/v1beta1/{name=projects/*/datasets/*}:importData"
body: "*"
};
+ option (google.api.method_signature) = "name,input_config";
+ option (google.longrunning.operation_info) = {
+ response_type: "ImportDataOperationResponse"
+ metadata_type: "ImportDataOperationMetadata"
+ };
}
// Exports data and annotations from dataset.
@@ -87,6 +95,11 @@ service DataLabelingService {
post: "/v1beta1/{name=projects/*/datasets/*}:exportData"
body: "*"
};
+ option (google.api.method_signature) = "name,annotated_dataset,filter,output_config";
+ option (google.longrunning.operation_info) = {
+ response_type: "ExportDataOperationResponse"
+ metadata_type: "ExportDataOperationMetadata"
+ };
}
// Gets a data item in a dataset by resource name. This API can be
@@ -95,6 +108,7 @@ service DataLabelingService {
option (google.api.http) = {
get: "/v1beta1/{name=projects/*/datasets/*/dataItems/*}"
};
+ option (google.api.method_signature) = "name";
}
// Lists data items in a dataset. This API can be called after data
@@ -103,27 +117,27 @@ service DataLabelingService {
option (google.api.http) = {
get: "/v1beta1/{parent=projects/*/datasets/*}/dataItems"
};
+ option (google.api.method_signature) = "parent,filter";
}
// Gets an annotated dataset by resource name.
- rpc GetAnnotatedDataset(GetAnnotatedDatasetRequest)
- returns (AnnotatedDataset) {
+ rpc GetAnnotatedDataset(GetAnnotatedDatasetRequest) returns (AnnotatedDataset) {
option (google.api.http) = {
get: "/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*}"
};
+ option (google.api.method_signature) = "name";
}
// Lists annotated datasets for a dataset. Pagination is supported.
- rpc ListAnnotatedDatasets(ListAnnotatedDatasetsRequest)
- returns (ListAnnotatedDatasetsResponse) {
+ rpc ListAnnotatedDatasets(ListAnnotatedDatasetsRequest) returns (ListAnnotatedDatasetsResponse) {
option (google.api.http) = {
get: "/v1beta1/{parent=projects/*/datasets/*}/annotatedDatasets"
};
+ option (google.api.method_signature) = "parent,filter";
}
// Deletes an annotated dataset by resource name.
- rpc DeleteAnnotatedDataset(DeleteAnnotatedDatasetRequest)
- returns (google.protobuf.Empty) {
+ rpc DeleteAnnotatedDataset(DeleteAnnotatedDatasetRequest) returns (google.protobuf.Empty) {
option (google.api.http) = {
delete: "/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*}"
};
@@ -136,6 +150,11 @@ service DataLabelingService {
post: "/v1beta1/{parent=projects/*/datasets/*}/image:label"
body: "*"
};
+ option (google.api.method_signature) = "parent,basic_config,feature";
+ option (google.longrunning.operation_info) = {
+ response_type: "AnnotatedDataset"
+ metadata_type: "LabelOperationMetadata"
+ };
}
// Starts a labeling task for video. The type of video labeling task is
@@ -145,6 +164,11 @@ service DataLabelingService {
post: "/v1beta1/{parent=projects/*/datasets/*}/video:label"
body: "*"
};
+ option (google.api.method_signature) = "parent,basic_config,feature";
+ option (google.longrunning.operation_info) = {
+ response_type: "AnnotatedDataset"
+ metadata_type: "LabelOperationMetadata"
+ };
}
// Starts a labeling task for text. The type of text labeling task is
@@ -154,6 +178,11 @@ service DataLabelingService {
post: "/v1beta1/{parent=projects/*/datasets/*}/text:label"
body: "*"
};
+ option (google.api.method_signature) = "parent,basic_config,feature";
+ option (google.longrunning.operation_info) = {
+ response_type: "AnnotatedDataset"
+ metadata_type: "LabelOperationMetadata"
+ };
}
// Gets an example by resource name, including both data and annotation.
@@ -161,6 +190,7 @@ service DataLabelingService {
option (google.api.http) = {
get: "/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*/examples/*}"
};
+ option (google.api.method_signature) = "name,filter";
}
// Lists examples in an annotated dataset. Pagination is supported.
@@ -168,48 +198,53 @@ service DataLabelingService {
option (google.api.http) = {
get: "/v1beta1/{parent=projects/*/datasets/*/annotatedDatasets/*}/examples"
};
+ option (google.api.method_signature) = "parent,filter";
}
// Creates an annotation spec set by providing a set of labels.
- rpc CreateAnnotationSpecSet(CreateAnnotationSpecSetRequest)
- returns (AnnotationSpecSet) {
+ rpc CreateAnnotationSpecSet(CreateAnnotationSpecSetRequest) returns (AnnotationSpecSet) {
option (google.api.http) = {
post: "/v1beta1/{parent=projects/*}/annotationSpecSets"
body: "*"
};
+ option (google.api.method_signature) = "parent,annotation_spec_set";
}
// Gets an annotation spec set by resource name.
- rpc GetAnnotationSpecSet(GetAnnotationSpecSetRequest)
- returns (AnnotationSpecSet) {
+ rpc GetAnnotationSpecSet(GetAnnotationSpecSetRequest) returns (AnnotationSpecSet) {
option (google.api.http) = {
get: "/v1beta1/{name=projects/*/annotationSpecSets/*}"
};
+ option (google.api.method_signature) = "name";
}
// Lists annotation spec sets for a project. Pagination is supported.
- rpc ListAnnotationSpecSets(ListAnnotationSpecSetsRequest)
- returns (ListAnnotationSpecSetsResponse) {
+ rpc ListAnnotationSpecSets(ListAnnotationSpecSetsRequest) returns (ListAnnotationSpecSetsResponse) {
option (google.api.http) = {
get: "/v1beta1/{parent=projects/*}/annotationSpecSets"
};
+ option (google.api.method_signature) = "parent,filter";
}
// Deletes an annotation spec set by resource name.
- rpc DeleteAnnotationSpecSet(DeleteAnnotationSpecSetRequest)
- returns (google.protobuf.Empty) {
+ rpc DeleteAnnotationSpecSet(DeleteAnnotationSpecSetRequest) returns (google.protobuf.Empty) {
option (google.api.http) = {
delete: "/v1beta1/{name=projects/*/annotationSpecSets/*}"
};
+ option (google.api.method_signature) = "name";
}
// Creates an instruction for how data should be labeled.
- rpc CreateInstruction(CreateInstructionRequest)
- returns (google.longrunning.Operation) {
+ rpc CreateInstruction(CreateInstructionRequest) returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1beta1/{parent=projects/*}/instructions"
body: "*"
};
+ option (google.api.method_signature) = "parent,instruction";
+ option (google.longrunning.operation_info) = {
+ response_type: "Instruction"
+ metadata_type: "CreateInstructionMetadata"
+ };
}
// Gets an instruction by resource name.
@@ -217,49 +252,51 @@ service DataLabelingService {
option (google.api.http) = {
get: "/v1beta1/{name=projects/*/instructions/*}"
};
+ option (google.api.method_signature) = "name";
}
// Lists instructions for a project. Pagination is supported.
- rpc ListInstructions(ListInstructionsRequest)
- returns (ListInstructionsResponse) {
+ rpc ListInstructions(ListInstructionsRequest) returns (ListInstructionsResponse) {
option (google.api.http) = {
get: "/v1beta1/{parent=projects/*}/instructions"
};
+ option (google.api.method_signature) = "parent,filter";
}
// Deletes an instruction object by resource name.
- rpc DeleteInstruction(DeleteInstructionRequest)
- returns (google.protobuf.Empty) {
+ rpc DeleteInstruction(DeleteInstructionRequest) returns (google.protobuf.Empty) {
option (google.api.http) = {
delete: "/v1beta1/{name=projects/*/instructions/*}"
};
+ option (google.api.method_signature) = "name";
}
- // Gets an evaluation by resource name.
+ // Gets an evaluation by resource name (to search, use
+ // [projects.evaluations.search][google.cloud.datalabeling.v1beta1.DataLabelingService.SearchEvaluations]).
rpc GetEvaluation(GetEvaluationRequest) returns (Evaluation) {
option (google.api.http) = {
get: "/v1beta1/{name=projects/*/datasets/*/evaluations/*}"
};
+ option (google.api.method_signature) = "name";
}
- // Searchs evaluations within a project. Supported filter: evaluation_job,
- // evaluation_time.
- rpc SearchEvaluations(SearchEvaluationsRequest)
- returns (SearchEvaluationsResponse) {
+ // Searches [evaluations][google.cloud.datalabeling.v1beta1.Evaluation] within a project.
+ rpc SearchEvaluations(SearchEvaluationsRequest) returns (SearchEvaluationsResponse) {
option (google.api.http) = {
get: "/v1beta1/{parent=projects/*}/evaluations:search"
};
+ option (google.api.method_signature) = "parent,filter";
}
- // Searchs example comparisons in evaluation, in format of examples
- // of both ground truth and prediction(s). It is represented as a search with
- // evaluation id.
- rpc SearchExampleComparisons(SearchExampleComparisonsRequest)
- returns (SearchExampleComparisonsResponse) {
+ // Searches example comparisons from an evaluation. The return format is a
+ // list of example comparisons that show ground truth and prediction(s) for
+ // a single input. Search by providing an evaluation ID.
+ rpc SearchExampleComparisons(SearchExampleComparisonsRequest) returns (SearchExampleComparisonsResponse) {
option (google.api.http) = {
post: "/v1beta1/{parent=projects/*/datasets/*/evaluations/*}/exampleComparisons:search"
body: "*"
};
+ option (google.api.method_signature) = "parent";
}
// Creates an evaluation job.
@@ -268,14 +305,21 @@ service DataLabelingService {
post: "/v1beta1/{parent=projects/*}/evaluationJobs"
body: "*"
};
+ option (google.api.method_signature) = "parent,job";
}
- // Updates an evaluation job.
+ // Updates an evaluation job. You can only update certain fields of the job's
+ // [EvaluationJobConfig][google.cloud.datalabeling.v1beta1.EvaluationJobConfig]: `humanAnnotationConfig.instruction`,
+ // `exampleCount`, and `exampleSamplePercentage`.
+ //
+ // If you want to change any other aspect of the evaluation job, you must
+ // delete the job and create a new one.
rpc UpdateEvaluationJob(UpdateEvaluationJobRequest) returns (EvaluationJob) {
option (google.api.http) = {
patch: "/v1beta1/{evaluation_job.name=projects/*/evaluationJobs/*}"
body: "evaluation_job"
};
+ option (google.api.method_signature) = "evaluation_job,update_mask";
}
// Gets an evaluation job by resource name.
@@ -283,43 +327,44 @@ service DataLabelingService {
option (google.api.http) = {
get: "/v1beta1/{name=projects/*/evaluationJobs/*}"
};
+ option (google.api.method_signature) = "name";
}
- // Pauses an evaluation job. Pausing a evaluation job that is already in
- // PAUSED state will be a no-op.
- rpc PauseEvaluationJob(PauseEvaluationJobRequest)
- returns (google.protobuf.Empty) {
+ // Pauses an evaluation job. Pausing an evaluation job that is already in a
+ // `PAUSED` state is a no-op.
+ rpc PauseEvaluationJob(PauseEvaluationJobRequest) returns (google.protobuf.Empty) {
option (google.api.http) = {
post: "/v1beta1/{name=projects/*/evaluationJobs/*}:pause"
body: "*"
};
+ option (google.api.method_signature) = "name";
}
- // Resumes a paused evaluation job. Deleted evaluation job can't be resumed.
- // Resuming a running evaluation job will be a no-op.
- rpc ResumeEvaluationJob(ResumeEvaluationJobRequest)
- returns (google.protobuf.Empty) {
+ // Resumes a paused evaluation job. A deleted evaluation job can't be resumed.
+ // Resuming a running or scheduled evaluation job is a no-op.
+ rpc ResumeEvaluationJob(ResumeEvaluationJobRequest) returns (google.protobuf.Empty) {
option (google.api.http) = {
post: "/v1beta1/{name=projects/*/evaluationJobs/*}:resume"
body: "*"
};
+ option (google.api.method_signature) = "name";
}
// Stops and deletes an evaluation job.
- rpc DeleteEvaluationJob(DeleteEvaluationJobRequest)
- returns (google.protobuf.Empty) {
+ rpc DeleteEvaluationJob(DeleteEvaluationJobRequest) returns (google.protobuf.Empty) {
option (google.api.http) = {
delete: "/v1beta1/{name=projects/*/evaluationJobs/*}"
};
+ option (google.api.method_signature) = "name";
}
// Lists all evaluation jobs within a project with possible filters.
// Pagination is supported.
- rpc ListEvaluationJobs(ListEvaluationJobsRequest)
- returns (ListEvaluationJobsResponse) {
+ rpc ListEvaluationJobs(ListEvaluationJobsRequest) returns (ListEvaluationJobsResponse) {
option (google.api.http) = {
get: "/v1beta1/{parent=projects/*}/evaluationJobs"
};
+ option (google.api.method_signature) = "parent,filter";
}
}
@@ -327,38 +372,53 @@ service DataLabelingService {
message CreateDatasetRequest {
// Required. Dataset resource parent, format:
// projects/{project_id}
- string parent = 1;
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Project"
+ }
+ ];
// Required. The dataset to be created.
- Dataset dataset = 2;
+ Dataset dataset = 2 [(google.api.field_behavior) = REQUIRED];
}
// Request message for GetDataSet.
message GetDatasetRequest {
// Required. Dataset resource name, format:
// projects/{project_id}/datasets/{dataset_id}
- string name = 1;
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/Dataset"
+ }
+ ];
}
// Request message for ListDataset.
message ListDatasetsRequest {
// Required. Dataset resource parent, format:
// projects/{project_id}
- string parent = 1;
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Project"
+ }
+ ];
// Optional. Filter on dataset is not supported at this moment.
- string filter = 2;
+ string filter = 2 [(google.api.field_behavior) = OPTIONAL];
// Optional. Requested page size. Server may return fewer results than
// requested. Default value is 100.
- int32 page_size = 3;
+ int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL];
// Optional. A token identifying a page of results for the server to return.
// Typically obtained by
- // [ListDatasetsResponse.next_page_token][google.cloud.datalabeling.v1beta1.ListDatasetsResponse.next_page_token]
- // of the previous [DataLabelingService.ListDatasets] call. Returns the first
- // page if empty.
- string page_token = 4;
+ // [ListDatasetsResponse.next_page_token][google.cloud.datalabeling.v1beta1.ListDatasetsResponse.next_page_token] of the previous
+ // [DataLabelingService.ListDatasets] call.
+ // Returns the first page if empty.
+ string page_token = 4 [(google.api.field_behavior) = OPTIONAL];
}
// Results of listing datasets within a project.
@@ -374,17 +434,27 @@ message ListDatasetsResponse {
message DeleteDatasetRequest {
// Required. Dataset resource name, format:
// projects/{project_id}/datasets/{dataset_id}
- string name = 1;
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/Dataset"
+ }
+ ];
}
// Request message for ImportData API.
message ImportDataRequest {
// Required. Dataset resource name, format:
// projects/{project_id}/datasets/{dataset_id}
- string name = 1;
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/Dataset"
+ }
+ ];
// Required. Specify the input source of the data.
- InputConfig input_config = 2;
+ InputConfig input_config = 2 [(google.api.field_behavior) = REQUIRED];
// Email of the user who started the import task and should be notified by
// email. If empty no notification will be sent.
@@ -395,20 +465,30 @@ message ImportDataRequest {
message ExportDataRequest {
// Required. Dataset resource name, format:
// projects/{project_id}/datasets/{dataset_id}
- string name = 1;
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/Dataset"
+ }
+ ];
// Required. Annotated dataset resource name. DataItem in
// Dataset and their annotations in specified annotated dataset will be
// exported. It's in format of
// projects/{project_id}/datasets/{dataset_id}/annotatedDatasets/
// {annotated_dataset_id}
- string annotated_dataset = 2;
+ string annotated_dataset = 2 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/AnnotatedDataset"
+ }
+ ];
// Optional. Filter is not supported at this moment.
- string filter = 3;
+ string filter = 3 [(google.api.field_behavior) = OPTIONAL];
// Required. Specify the output destination.
- OutputConfig output_config = 4;
+ OutputConfig output_config = 4 [(google.api.field_behavior) = REQUIRED];
// Email of the user who started the export task and should be notified by
// email. If empty no notification will be sent.
@@ -419,28 +499,38 @@ message ExportDataRequest {
message GetDataItemRequest {
// Required. The name of the data item to get, format:
// projects/{project_id}/datasets/{dataset_id}/dataItems/{data_item_id}
- string name = 1;
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/DataItem"
+ }
+ ];
}
// Request message for ListDataItems.
message ListDataItemsRequest {
// Required. Name of the dataset to list data items, format:
// projects/{project_id}/datasets/{dataset_id}
- string parent = 1;
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/Dataset"
+ }
+ ];
// Optional. Filter is not supported at this moment.
- string filter = 2;
+ string filter = 2 [(google.api.field_behavior) = OPTIONAL];
// Optional. Requested page size. Server may return fewer results than
// requested. Default value is 100.
- int32 page_size = 3;
+ int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL];
// Optional. A token identifying a page of results for the server to return.
// Typically obtained by
- // [ListDataItemsResponse.next_page_token][google.cloud.datalabeling.v1beta1.ListDataItemsResponse.next_page_token]
- // of the previous [DataLabelingService.ListDataItems] call. Return first page
- // if empty.
- string page_token = 4;
+ // [ListDataItemsResponse.next_page_token][google.cloud.datalabeling.v1beta1.ListDataItemsResponse.next_page_token] of the previous
+ // [DataLabelingService.ListDataItems] call.
+ // Return first page if empty.
+ string page_token = 4 [(google.api.field_behavior) = OPTIONAL];
}
// Results of listing data items in a dataset.
@@ -457,28 +547,38 @@ message GetAnnotatedDatasetRequest {
// Required. Name of the annotated dataset to get, format:
// projects/{project_id}/datasets/{dataset_id}/annotatedDatasets/
// {annotated_dataset_id}
- string name = 1;
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/AnnotatedDataset"
+ }
+ ];
}
// Request message for ListAnnotatedDatasets.
message ListAnnotatedDatasetsRequest {
// Required. Name of the dataset to list annotated datasets, format:
// projects/{project_id}/datasets/{dataset_id}
- string parent = 1;
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/Dataset"
+ }
+ ];
// Optional. Filter is not supported at this moment.
- string filter = 2;
+ string filter = 2 [(google.api.field_behavior) = OPTIONAL];
// Optional. Requested page size. Server may return fewer results than
// requested. Default value is 100.
- int32 page_size = 3;
+ int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL];
// Optional. A token identifying a page of results for the server to return.
// Typically obtained by
- // [ListAnnotatedDatasetsResponse.next_page_token][google.cloud.datalabeling.v1beta1.ListAnnotatedDatasetsResponse.next_page_token]
- // of the previous [DataLabelingService.ListAnnotatedDatasets] call. Return
- // first page if empty.
- string page_token = 4;
+ // [ListAnnotatedDatasetsResponse.next_page_token][google.cloud.datalabeling.v1beta1.ListAnnotatedDatasetsResponse.next_page_token] of the previous
+ // [DataLabelingService.ListAnnotatedDatasets] call.
+ // Return first page if empty.
+ string page_token = 4 [(google.api.field_behavior) = OPTIONAL];
}
// Results of listing annotated datasets for a dataset.
@@ -495,7 +595,12 @@ message DeleteAnnotatedDatasetRequest {
// Required. Name of the annotated dataset to delete, format:
// projects/{project_id}/datasets/{dataset_id}/annotatedDatasets/
// {annotated_dataset_id}
- string name = 1;
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/AnnotatedDataset"
+ }
+ ];
}
// Request message for starting an image labeling task.
@@ -553,13 +658,18 @@ message LabelImageRequest {
// Required. Name of the dataset to request labeling task, format:
// projects/{project_id}/datasets/{dataset_id}
- string parent = 1;
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/Dataset"
+ }
+ ];
// Required. Basic human annotation config.
- HumanAnnotationConfig basic_config = 2;
+ HumanAnnotationConfig basic_config = 2 [(google.api.field_behavior) = REQUIRED];
// Required. The type of image labeling task.
- Feature feature = 3;
+ Feature feature = 3 [(google.api.field_behavior) = REQUIRED];
}
// Request message for LabelVideo.
@@ -607,13 +717,18 @@ message LabelVideoRequest {
// Required. Name of the dataset to request labeling task, format:
// projects/{project_id}/datasets/{dataset_id}
- string parent = 1;
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/Dataset"
+ }
+ ];
// Required. Basic human annotation config.
- HumanAnnotationConfig basic_config = 2;
+ HumanAnnotationConfig basic_config = 2 [(google.api.field_behavior) = REQUIRED];
// Required. The type of video labeling task.
- Feature feature = 3;
+ Feature feature = 3 [(google.api.field_behavior) = REQUIRED];
}
// Request message for LabelText.
@@ -645,13 +760,18 @@ message LabelTextRequest {
// Required. Name of the data set to request labeling task, format:
// projects/{project_id}/datasets/{dataset_id}
- string parent = 1;
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/Dataset"
+ }
+ ];
// Required. Basic human annotation config.
- HumanAnnotationConfig basic_config = 2;
+ HumanAnnotationConfig basic_config = 2 [(google.api.field_behavior) = REQUIRED];
// Required. The type of text labeling task.
- Feature feature = 6;
+ Feature feature = 6 [(google.api.field_behavior) = REQUIRED];
}
// Request message for GetExample
@@ -659,35 +779,45 @@ message GetExampleRequest {
// Required. Name of example, format:
// projects/{project_id}/datasets/{dataset_id}/annotatedDatasets/
// {annotated_dataset_id}/examples/{example_id}
- string name = 1;
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/Example"
+ }
+ ];
// Optional. An expression for filtering Examples. Filter by
// annotation_spec.display_name is supported. Format
// "annotation_spec.display_name = {display_name}"
- string filter = 2;
+ string filter = 2 [(google.api.field_behavior) = OPTIONAL];
}
// Request message for ListExamples.
message ListExamplesRequest {
// Required. Example resource parent.
- string parent = 1;
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/AnnotatedDataset"
+ }
+ ];
// Optional. An expression for filtering Examples. For annotated datasets that
// have annotation spec set, filter by
// annotation_spec.display_name is supported. Format
// "annotation_spec.display_name = {display_name}"
- string filter = 2;
+ string filter = 2 [(google.api.field_behavior) = OPTIONAL];
// Optional. Requested page size. Server may return fewer results than
// requested. Default value is 100.
- int32 page_size = 3;
+ int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL];
// Optional. A token identifying a page of results for the server to return.
// Typically obtained by
- // [ListExamplesResponse.next_page_token][google.cloud.datalabeling.v1beta1.ListExamplesResponse.next_page_token]
- // of the previous [DataLabelingService.ListExamples] call. Return first page
- // if empty.
- string page_token = 4;
+ // [ListExamplesResponse.next_page_token][google.cloud.datalabeling.v1beta1.ListExamplesResponse.next_page_token] of the previous
+ // [DataLabelingService.ListExamples] call.
+ // Return first page if empty.
+ string page_token = 4 [(google.api.field_behavior) = OPTIONAL];
}
// Results of listing Examples in and annotated dataset.
@@ -703,40 +833,55 @@ message ListExamplesResponse {
message CreateAnnotationSpecSetRequest {
// Required. AnnotationSpecSet resource parent, format:
// projects/{project_id}
- string parent = 1;
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Project"
+ }
+ ];
// Required. Annotation spec set to create. Annotation specs must be included.
// Only one annotation spec will be accepted for annotation specs with same
// display_name.
- AnnotationSpecSet annotation_spec_set = 2;
+ AnnotationSpecSet annotation_spec_set = 2 [(google.api.field_behavior) = REQUIRED];
}
// Request message for GetAnnotationSpecSet.
message GetAnnotationSpecSetRequest {
// Required. AnnotationSpecSet resource name, format:
// projects/{project_id}/annotationSpecSets/{annotation_spec_set_id}
- string name = 1;
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/AnnotationSpecSet"
+ }
+ ];
}
// Request message for ListAnnotationSpecSets.
message ListAnnotationSpecSetsRequest {
// Required. Parent of AnnotationSpecSet resource, format:
// projects/{project_id}
- string parent = 1;
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Project"
+ }
+ ];
// Optional. Filter is not supported at this moment.
- string filter = 2;
+ string filter = 2 [(google.api.field_behavior) = OPTIONAL];
// Optional. Requested page size. Server may return fewer results than
// requested. Default value is 100.
- int32 page_size = 3;
+ int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL];
// Optional. A token identifying a page of results for the server to return.
// Typically obtained by
- // [ListAnnotationSpecSetsResponse.next_page_token][google.cloud.datalabeling.v1beta1.ListAnnotationSpecSetsResponse.next_page_token]
- // of the previous [DataLabelingService.ListAnnotationSpecSets] call. Return
- // first page if empty.
- string page_token = 4;
+ // [ListAnnotationSpecSetsResponse.next_page_token][google.cloud.datalabeling.v1beta1.ListAnnotationSpecSetsResponse.next_page_token] of the previous
+ // [DataLabelingService.ListAnnotationSpecSets] call.
+ // Return first page if empty.
+ string page_token = 4 [(google.api.field_behavior) = OPTIONAL];
}
// Results of listing annotation spec set under a project.
@@ -752,52 +897,77 @@ message ListAnnotationSpecSetsResponse {
message DeleteAnnotationSpecSetRequest {
// Required. AnnotationSpec resource name, format:
// `projects/{project_id}/annotationSpecSets/{annotation_spec_set_id}`.
- string name = 1;
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/AnnotationSpecSet"
+ }
+ ];
}
// Request message for CreateInstruction.
message CreateInstructionRequest {
// Required. Instruction resource parent, format:
// projects/{project_id}
- string parent = 1;
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Project"
+ }
+ ];
// Required. Instruction of how to perform the labeling task.
- Instruction instruction = 2;
+ Instruction instruction = 2 [(google.api.field_behavior) = REQUIRED];
}
// Request message for GetInstruction.
message GetInstructionRequest {
// Required. Instruction resource name, format:
// projects/{project_id}/instructions/{instruction_id}
- string name = 1;
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/Instruction"
+ }
+ ];
}
// Request message for DeleteInstruction.
message DeleteInstructionRequest {
// Required. Instruction resource name, format:
// projects/{project_id}/instructions/{instruction_id}
- string name = 1;
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/Instruction"
+ }
+ ];
}
// Request message for ListInstructions.
message ListInstructionsRequest {
// Required. Instruction resource parent, format:
// projects/{project_id}
- string parent = 1;
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Project"
+ }
+ ];
// Optional. Filter is not supported at this moment.
- string filter = 2;
+ string filter = 2 [(google.api.field_behavior) = OPTIONAL];
// Optional. Requested page size. Server may return fewer results than
// requested. Default value is 100.
- int32 page_size = 3;
+ int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL];
// Optional. A token identifying a page of results for the server to return.
// Typically obtained by
- // [ListInstructionsResponse.next_page_token][google.cloud.datalabeling.v1beta1.ListInstructionsResponse.next_page_token]
- // of the previous [DataLabelingService.ListInstructions] call. Return first
- // page if empty.
- string page_token = 4;
+ // [ListInstructionsResponse.next_page_token][google.cloud.datalabeling.v1beta1.ListInstructionsResponse.next_page_token] of the previous
+ // [DataLabelingService.ListInstructions] call.
+ // Return first page if empty.
+ string page_token = 4 [(google.api.field_behavior) = OPTIONAL];
}
// Results of listing instructions under a project.
@@ -812,39 +982,77 @@ message ListInstructionsResponse {
// Request message for GetEvaluation.
message GetEvaluationRequest {
// Required. Name of the evaluation. Format:
- // 'projects/{project_id}/datasets/{dataset_id}/evaluations/{evaluation_id}'
- string name = 1;
+ //
+ // "projects/{project_id}/datasets/{dataset_id}/evaluations/{evaluation_id}'
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/Evaluation"
+ }
+ ];
}
// Request message for SearchEvaluation.
message SearchEvaluationsRequest {
- // Required. Evaluation search parent. Format:
- // projects/{project_id}
- string parent = 1;
-
- // Optional. Support filtering by model id, job state, start and end time.
- // Format:
- // "evaluation_job.evaluation_job_id = {evaluation_job_id} AND
- // evaluation_job.evaluation_job_run_time_start = {timestamp} AND
- // evaluation_job.evaluation_job_run_time_end = {timestamp} AND
- // annotation_spec.display_name = {display_name}"
- string filter = 2;
+ // Required. Evaluation search parent (project ID). Format:
+ // "projects/{project_id}"
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/Evaluation"
+ }
+ ];
+
+ // Optional. To search evaluations, you can filter by the following:
+ //
+ // * evaluation_job.evaluation_job_id (the last part of
+ // [EvaluationJob.name][google.cloud.datalabeling.v1beta1.EvaluationJob.name])
+ // * evaluation_job.model_id (the {model_name} portion
+ // of [EvaluationJob.modelVersion][google.cloud.datalabeling.v1beta1.EvaluationJob.model_version])
+ // * evaluation_job.evaluation_job_run_time_start (Minimum
+ // threshold for the
+ // [evaluationJobRunTime][google.cloud.datalabeling.v1beta1.Evaluation.evaluation_job_run_time] that created
+ // the evaluation)
+ // * evaluation_job.evaluation_job_run_time_end (Maximum
+ // threshold for the
+ // [evaluationJobRunTime][google.cloud.datalabeling.v1beta1.Evaluation.evaluation_job_run_time] that created
+ // the evaluation)
+ // * evaluation_job.job_state ([EvaluationJob.state][google.cloud.datalabeling.v1beta1.EvaluationJob.state])
+ // * annotation_spec.display_name (the Evaluation contains a
+ // metric for the annotation spec with this
+ // [displayName][google.cloud.datalabeling.v1beta1.AnnotationSpec.display_name])
+ //
+ // To filter by multiple critiera, use the `AND` operator or the `OR`
+ // operator. The following examples shows a string that filters by several
+ // critiera:
+ //
+ // "evaluation_job.evaluation_job_id =
+ // {evaluation_job_id} AND evaluation_job.model_id =
+ // {model_name} AND
+ // evaluation_job.evaluation_job_run_time_start =
+ // {timestamp_1} AND
+ // evaluation_job.evaluation_job_run_time_end =
+ // {timestamp_2} AND annotation_spec.display_name =
+ // {display_name}"
+ string filter = 2 [(google.api.field_behavior) = OPTIONAL];
// Optional. Requested page size. Server may return fewer results than
// requested. Default value is 100.
- int32 page_size = 3;
+ int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL];
// Optional. A token identifying a page of results for the server to return.
- // Typically obtained by
- // [SearchEvaluationsResponse.next_page_token][google.cloud.datalabeling.v1beta1.SearchEvaluationsResponse.next_page_token]
- // of the previous [DataLabelingService.SearchEvaluations] call. Return first
- // page if empty.
- string page_token = 4;
+ // Typically obtained by the
+ // [nextPageToken][google.cloud.datalabeling.v1beta1.SearchEvaluationsResponse.next_page_token] of the response
+ // to a previous search request.
+ //
+ // If you don't specify this field, the API call requests the first page of
+ // the search.
+ string page_token = 4 [(google.api.field_behavior) = OPTIONAL];
}
// Results of searching evaluations.
message SearchEvaluationsResponse {
- // The list of evaluations to return.
+ // The list of evaluations matching the search.
repeated Evaluation evaluations = 1;
// A token to retrieve next page of results.
@@ -853,33 +1061,44 @@ message SearchEvaluationsResponse {
// Request message of SearchExampleComparisons.
message SearchExampleComparisonsRequest {
- // Required. Name of the Evaluation resource to search example comparison
- // from. Format:
- // projects/{project_id}/datasets/{dataset_id}/evaluations/{evaluation_id}
- string parent = 1;
+ // Required. Name of the [Evaluation][google.cloud.datalabeling.v1beta1.Evaluation] resource to search for example
+ // comparisons from. Format:
+ //
+ // "projects/{project_id}/datasets/{dataset_id}/evaluations/{evaluation_id}"
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/Evaluation"
+ }
+ ];
// Optional. Requested page size. Server may return fewer results than
// requested. Default value is 100.
- int32 page_size = 2;
+ int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
// Optional. A token identifying a page of results for the server to return.
- // Typically obtained by
- // [SearchExampleComparisons.next_page_token][] of the previous
- // [DataLabelingService.SearchExampleComparisons] call.
- // Return first page if empty.
- string page_token = 3;
+ // Typically obtained by the
+ // [nextPageToken][SearchExampleComparisons.next_page_token] of the response
+ // to a previous search rquest.
+ //
+ // If you don't specify this field, the API call requests the first page of
+ // the search.
+ string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
}
// Results of searching example comparisons.
message SearchExampleComparisonsResponse {
- // Example comparisons containing annotation comparison between groundtruth
- // and predictions.
+ // Example comparisons comparing ground truth output and predictions for a
+ // specific input.
message ExampleComparison {
+ // The ground truth output for the input.
Example ground_truth_example = 1;
+ // Predictions by the model for the input.
repeated Example model_created_examples = 2;
}
+ // A list of example comparisons matching the search criteria.
repeated ExampleComparison example_comparisons = 1;
// A token to retrieve next page of results.
@@ -888,72 +1107,119 @@ message SearchExampleComparisonsResponse {
// Request message for CreateEvaluationJob.
message CreateEvaluationJobRequest {
- // Required. Evaluation job resource parent, format:
- // projects/{project_id}.
- string parent = 1;
+ // Required. Evaluation job resource parent. Format:
+ // "projects/{project_id}"
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Project"
+ }
+ ];
// Required. The evaluation job to create.
- EvaluationJob job = 2;
+ EvaluationJob job = 2 [(google.api.field_behavior) = REQUIRED];
}
// Request message for UpdateEvaluationJob.
message UpdateEvaluationJobRequest {
// Required. Evaluation job that is going to be updated.
- EvaluationJob evaluation_job = 1;
-
- // Optional. Mask for which field in evaluation_job should be updated.
- google.protobuf.FieldMask update_mask = 2;
+ EvaluationJob evaluation_job = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // Optional. Mask for which fields to update. You can only provide the
+ // following fields:
+ //
+ // * `evaluationJobConfig.humanAnnotationConfig.instruction`
+ // * `evaluationJobConfig.exampleCount`
+ // * `evaluationJobConfig.exampleSamplePercentage`
+ //
+ // You can provide more than one of these fields by separating them with
+ // commas.
+ google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = OPTIONAL];
}
// Request message for GetEvaluationJob.
message GetEvaluationJobRequest {
// Required. Name of the evaluation job. Format:
- // 'projects/{project_id}/evaluationJobs/{evaluation_job_id}'
- string name = 1;
+ //
+ // "projects/{project_id}/evaluationJobs/{evaluation_job_id}"
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/EvaluationJob"
+ }
+ ];
}
// Request message for PauseEvaluationJob.
message PauseEvaluationJobRequest {
// Required. Name of the evaluation job that is going to be paused. Format:
- // 'projects/{project_id}/evaluationJobs/{evaluation_job_id}'
- string name = 1;
+ //
+ // "projects/{project_id}/evaluationJobs/{evaluation_job_id}"
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/EvaluationJob"
+ }
+ ];
}
// Request message ResumeEvaluationJob.
message ResumeEvaluationJobRequest {
// Required. Name of the evaluation job that is going to be resumed. Format:
- // 'projects/{project_id}/evaluationJobs/{evaluation_job_id}'
- string name = 1;
+ //
+ // "projects/{project_id}/evaluationJobs/{evaluation_job_id}"
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/EvaluationJob"
+ }
+ ];
}
// Request message DeleteEvaluationJob.
message DeleteEvaluationJobRequest {
// Required. Name of the evaluation job that is going to be deleted. Format:
- // 'projects/{project_id}/evaluationJobs/{evaluation_job_id}'
- string name = 1;
+ //
+ // "projects/{project_id}/evaluationJobs/{evaluation_job_id}"
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "datalabeling.googleapis.com/EvaluationJob"
+ }
+ ];
}
// Request message for ListEvaluationJobs.
message ListEvaluationJobsRequest {
- // Required. Evaluation resource parent. Format:
- // "projects/{project_id}"
- string parent = 1;
-
- // Optional. Only support filter by model id and job state. Format:
- // "evaluation_job.model_id = {model_id} AND evaluation_job.state =
- // {EvaluationJob::State}"
- string filter = 2;
+ // Required. Evaluation job resource parent. Format:
+ // "projects/{project_id}"
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Project"
+ }
+ ];
+
+ // Optional. You can filter the jobs to list by model_id (also known as
+ // model_name, as described in
+ // [EvaluationJob.modelVersion][google.cloud.datalabeling.v1beta1.EvaluationJob.model_version]) or by
+ // evaluation job state (as described in [EvaluationJob.state][google.cloud.datalabeling.v1beta1.EvaluationJob.state]). To filter
+ // by both criteria, use the `AND` operator or the `OR` operator. For example,
+ // you can use the following string for your filter:
+ // "evaluation_job.model_id = {model_name} AND
+ // evaluation_job.state = {evaluation_job_state}"
+ string filter = 2 [(google.api.field_behavior) = OPTIONAL];
// Optional. Requested page size. Server may return fewer results than
// requested. Default value is 100.
- int32 page_size = 3;
+ int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL];
// Optional. A token identifying a page of results for the server to return.
- // Typically obtained by
- // [ListEvaluationJobs.next_page_token][] of the previous
- // [DataLabelingService.ListEvaluationJobs] call.
- // Return first page if empty.
- string page_token = 4;
+ // Typically obtained by the
+ // [nextPageToken][google.cloud.datalabeling.v1beta1.ListEvaluationJobsResponse.next_page_token] in the response
+ // to the previous request. The request returns the first page if this is
+ // empty.
+ string page_token = 4 [(google.api.field_behavior) = OPTIONAL];
}
// Results for listing evaluation jobs.
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/proto/data_labeling_service_pb2.py b/datalabeling/google/cloud/datalabeling_v1beta1/proto/data_labeling_service_pb2.py
index 87f44e316714..258d5a0c7dfd 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/proto/data_labeling_service_pb2.py
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/proto/data_labeling_service_pb2.py
@@ -17,9 +17,8 @@
from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
from google.api import client_pb2 as google_dot_api_dot_client__pb2
-from google.cloud.datalabeling_v1beta1.proto import (
- annotation_pb2 as google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_annotation__pb2,
-)
+from google.api import field_behavior_pb2 as google_dot_api_dot_field__behavior__pb2
+from google.api import resource_pb2 as google_dot_api_dot_resource__pb2
from google.cloud.datalabeling_v1beta1.proto import (
annotation_spec_set_pb2 as google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_annotation__spec__set__pb2,
)
@@ -38,9 +37,6 @@
from google.cloud.datalabeling_v1beta1.proto import (
instruction_pb2 as google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_instruction__pb2,
)
-from google.cloud.datalabeling_v1beta1.proto import (
- operations_pb2 as google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_operations__pb2,
-)
from google.longrunning import (
operations_pb2 as google_dot_longrunning_dot_operations__pb2,
)
@@ -56,19 +52,19 @@
"\n%com.google.cloud.datalabeling.v1beta1P\001ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabeling"
),
serialized_pb=_b(
- '\nCgoogle/cloud/datalabeling_v1beta1/proto/data_labeling_service.proto\x12!google.cloud.datalabeling.v1beta1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x38google/cloud/datalabeling_v1beta1/proto/annotation.proto\x1a\x41google/cloud/datalabeling_v1beta1/proto/annotation_spec_set.proto\x1a\x35google/cloud/datalabeling_v1beta1/proto/dataset.proto\x1a\x38google/cloud/datalabeling_v1beta1/proto/evaluation.proto\x1a\x82\xd3\xe4\x93\x02\x38"3/v1beta1/{parent=projects/*/datasets/*}/image:label:\x01*\x12\xa1\x01\n\nLabelVideo\x12\x34.google.cloud.datalabeling.v1beta1.LabelVideoRequest\x1a\x1d.google.longrunning.Operation">\x82\xd3\xe4\x93\x02\x38"3/v1beta1/{parent=projects/*/datasets/*}/video:label:\x01*\x12\x9e\x01\n\tLabelText\x12\x33.google.cloud.datalabeling.v1beta1.LabelTextRequest\x1a\x1d.google.longrunning.Operation"=\x82\xd3\xe4\x93\x02\x37"2/v1beta1/{parent=projects/*/datasets/*}/text:label:\x01*\x12\xbc\x01\n\nGetExample\x12\x34.google.cloud.datalabeling.v1beta1.GetExampleRequest\x1a*.google.cloud.datalabeling.v1beta1.Example"L\x82\xd3\xe4\x93\x02\x46\x12\x44/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*/examples/*}\x12\xcd\x01\n\x0cListExamples\x12\x36.google.cloud.datalabeling.v1beta1.ListExamplesRequest\x1a\x37.google.cloud.datalabeling.v1beta1.ListExamplesResponse"L\x82\xd3\xe4\x93\x02\x46\x12\x44/v1beta1/{parent=projects/*/datasets/*/annotatedDatasets/*}/examples\x12\xce\x01\n\x17\x43reateAnnotationSpecSet\x12\x41.google.cloud.datalabeling.v1beta1.CreateAnnotationSpecSetRequest\x1a\x34.google.cloud.datalabeling.v1beta1.AnnotationSpecSet":\x82\xd3\xe4\x93\x02\x34"//v1beta1/{parent=projects/*}/annotationSpecSets:\x01*\x12\xc5\x01\n\x14GetAnnotationSpecSet\x12>.google.cloud.datalabeling.v1beta1.GetAnnotationSpecSetRequest\x1a\x34.google.cloud.datalabeling.v1beta1.AnnotationSpecSet"7\x82\xd3\xe4\x93\x02\x31\x12//v1beta1/{name=projects/*/annotationSpecSets/*}\x12\xd6\x01\n\x16ListAnnotationSpecSets\x12@.google.cloud.datalabeling.v1beta1.ListAnnotationSpecSetsRequest\x1a\x41.google.cloud.datalabeling.v1beta1.ListAnnotationSpecSetsResponse"7\x82\xd3\xe4\x93\x02\x31\x12//v1beta1/{parent=projects/*}/annotationSpecSets\x12\xad\x01\n\x17\x44\x65leteAnnotationSpecSet\x12\x41.google.cloud.datalabeling.v1beta1.DeleteAnnotationSpecSetRequest\x1a\x16.google.protobuf.Empty"7\x82\xd3\xe4\x93\x02\x31*//v1beta1/{name=projects/*/annotationSpecSets/*}\x12\xa5\x01\n\x11\x43reateInstruction\x12;.google.cloud.datalabeling.v1beta1.CreateInstructionRequest\x1a\x1d.google.longrunning.Operation"4\x82\xd3\xe4\x93\x02.")/v1beta1/{parent=projects/*}/instructions:\x01*\x12\xad\x01\n\x0eGetInstruction\x12\x38.google.cloud.datalabeling.v1beta1.GetInstructionRequest\x1a..google.cloud.datalabeling.v1beta1.Instruction"1\x82\xd3\xe4\x93\x02+\x12)/v1beta1/{name=projects/*/instructions/*}\x12\xbe\x01\n\x10ListInstructions\x12:.google.cloud.datalabeling.v1beta1.ListInstructionsRequest\x1a;.google.cloud.datalabeling.v1beta1.ListInstructionsResponse"1\x82\xd3\xe4\x93\x02+\x12)/v1beta1/{parent=projects/*}/instructions\x12\x9b\x01\n\x11\x44\x65leteInstruction\x12;.google.cloud.datalabeling.v1beta1.DeleteInstructionRequest\x1a\x16.google.protobuf.Empty"1\x82\xd3\xe4\x93\x02+*)/v1beta1/{name=projects/*/instructions/*}\x12\xb4\x01\n\rGetEvaluation\x12\x37.google.cloud.datalabeling.v1beta1.GetEvaluationRequest\x1a-.google.cloud.datalabeling.v1beta1.Evaluation";\x82\xd3\xe4\x93\x02\x35\x12\x33/v1beta1/{name=projects/*/datasets/*/evaluations/*}\x12\xc7\x01\n\x11SearchEvaluations\x12;.google.cloud.datalabeling.v1beta1.SearchEvaluationsRequest\x1a<.google.cloud.datalabeling.v1beta1.SearchEvaluationsResponse"7\x82\xd3\xe4\x93\x02\x31\x12//v1beta1/{parent=projects/*}/evaluations:search\x12\xff\x01\n\x18SearchExampleComparisons\x12\x42.google.cloud.datalabeling.v1beta1.SearchExampleComparisonsRequest\x1a\x43.google.cloud.datalabeling.v1beta1.SearchExampleComparisonsResponse"Z\x82\xd3\xe4\x93\x02T"O/v1beta1/{parent=projects/*/datasets/*/evaluations/*}/exampleComparisons:search:\x01*\x12\xbe\x01\n\x13\x43reateEvaluationJob\x12=.google.cloud.datalabeling.v1beta1.CreateEvaluationJobRequest\x1a\x30.google.cloud.datalabeling.v1beta1.EvaluationJob"6\x82\xd3\xe4\x93\x02\x30"+/v1beta1/{parent=projects/*}/evaluationJobs:\x01*\x12\xda\x01\n\x13UpdateEvaluationJob\x12=.google.cloud.datalabeling.v1beta1.UpdateEvaluationJobRequest\x1a\x30.google.cloud.datalabeling.v1beta1.EvaluationJob"R\x82\xd3\xe4\x93\x02L2:/v1beta1/{evaluation_job.name=projects/*/evaluationJobs/*}:\x0e\x65valuation_job\x12\xb5\x01\n\x10GetEvaluationJob\x12:.google.cloud.datalabeling.v1beta1.GetEvaluationJobRequest\x1a\x30.google.cloud.datalabeling.v1beta1.EvaluationJob"3\x82\xd3\xe4\x93\x02-\x12+/v1beta1/{name=projects/*/evaluationJobs/*}\x12\xa8\x01\n\x12PauseEvaluationJob\x12<.google.cloud.datalabeling.v1beta1.PauseEvaluationJobRequest\x1a\x16.google.protobuf.Empty"<\x82\xd3\xe4\x93\x02\x36"1/v1beta1/{name=projects/*/evaluationJobs/*}:pause:\x01*\x12\xab\x01\n\x13ResumeEvaluationJob\x12=.google.cloud.datalabeling.v1beta1.ResumeEvaluationJobRequest\x1a\x16.google.protobuf.Empty"=\x82\xd3\xe4\x93\x02\x37"2/v1beta1/{name=projects/*/evaluationJobs/*}:resume:\x01*\x12\xa1\x01\n\x13\x44\x65leteEvaluationJob\x12=.google.cloud.datalabeling.v1beta1.DeleteEvaluationJobRequest\x1a\x16.google.protobuf.Empty"3\x82\xd3\xe4\x93\x02-*+/v1beta1/{name=projects/*/evaluationJobs/*}\x12\xc6\x01\n\x12ListEvaluationJobs\x12<.google.cloud.datalabeling.v1beta1.ListEvaluationJobsRequest\x1a=.google.cloud.datalabeling.v1beta1.ListEvaluationJobsResponse"3\x82\xd3\xe4\x93\x02-\x12+/v1beta1/{parent=projects/*}/evaluationJobs\x1aO\xca\x41\x1b\x64\x61talabeling.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformBx\n%com.google.cloud.datalabeling.v1beta1P\x01ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabelingb\x06proto3'
+ '\nCgoogle/cloud/datalabeling_v1beta1/proto/data_labeling_service.proto\x12!google.cloud.datalabeling.v1beta1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x41google/cloud/datalabeling_v1beta1/proto/annotation_spec_set.proto\x1a\x35google/cloud/datalabeling_v1beta1/proto/dataset.proto\x1a\x38google/cloud/datalabeling_v1beta1/proto/evaluation.proto\x1a\n\x06parent\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&datalabeling.googleapis.com/Evaluation\x12\x13\n\x06\x66ilter\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x16\n\tpage_size\x18\x03 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x04 \x01(\tB\x03\xe0\x41\x01"x\n\x19SearchEvaluationsResponse\x12\x42\n\x0b\x65valuations\x18\x01 \x03(\x0b\x32-.google.cloud.datalabeling.v1beta1.Evaluation\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t"\x92\x01\n\x1fSearchExampleComparisonsRequest\x12>\n\x06parent\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&datalabeling.googleapis.com/Evaluation\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01"\xdb\x02\n SearchExampleComparisonsResponse\x12r\n\x13\x65xample_comparisons\x18\x01 \x03(\x0b\x32U.google.cloud.datalabeling.v1beta1.SearchExampleComparisonsResponse.ExampleComparison\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x1a\xa9\x01\n\x11\x45xampleComparison\x12H\n\x14ground_truth_example\x18\x01 \x01(\x0b\x32*.google.cloud.datalabeling.v1beta1.Example\x12J\n\x16model_created_examples\x18\x02 \x03(\x0b\x32*.google.cloud.datalabeling.v1beta1.Example"\xa5\x01\n\x1a\x43reateEvaluationJobRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12\x42\n\x03job\x18\x02 \x01(\x0b\x32\x30.google.cloud.datalabeling.v1beta1.EvaluationJobB\x03\xe0\x41\x02"\xa1\x01\n\x1aUpdateEvaluationJobRequest\x12M\n\x0e\x65valuation_job\x18\x01 \x01(\x0b\x32\x30.google.cloud.datalabeling.v1beta1.EvaluationJobB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x01"Z\n\x17GetEvaluationJobRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)datalabeling.googleapis.com/EvaluationJob"\\\n\x19PauseEvaluationJobRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)datalabeling.googleapis.com/EvaluationJob"]\n\x1aResumeEvaluationJobRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)datalabeling.googleapis.com/EvaluationJob"]\n\x1a\x44\x65leteEvaluationJobRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)datalabeling.googleapis.com/EvaluationJob"\xa6\x01\n\x19ListEvaluationJobsRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12\x13\n\x06\x66ilter\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x16\n\tpage_size\x18\x03 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x04 \x01(\tB\x03\xe0\x41\x01"\x80\x01\n\x1aListEvaluationJobsResponse\x12I\n\x0f\x65valuation_jobs\x18\x01 \x03(\x0b\x32\x30.google.cloud.datalabeling.v1beta1.EvaluationJob\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t2\xa6\x38\n\x13\x44\x61taLabelingService\x12\xb7\x01\n\rCreateDataset\x12\x37.google.cloud.datalabeling.v1beta1.CreateDatasetRequest\x1a*.google.cloud.datalabeling.v1beta1.Dataset"A\x82\xd3\xe4\x93\x02*"%/v1beta1/{parent=projects/*}/datasets:\x01*\xda\x41\x0eparent,dataset\x12\xa4\x01\n\nGetDataset\x12\x34.google.cloud.datalabeling.v1beta1.GetDatasetRequest\x1a*.google.cloud.datalabeling.v1beta1.Dataset"4\x82\xd3\xe4\x93\x02\'\x12%/v1beta1/{name=projects/*/datasets/*}\xda\x41\x04name\x12\xbe\x01\n\x0cListDatasets\x12\x36.google.cloud.datalabeling.v1beta1.ListDatasetsRequest\x1a\x37.google.cloud.datalabeling.v1beta1.ListDatasetsResponse"=\x82\xd3\xe4\x93\x02\'\x12%/v1beta1/{parent=projects/*}/datasets\xda\x41\rparent,filter\x12\x96\x01\n\rDeleteDataset\x12\x37.google.cloud.datalabeling.v1beta1.DeleteDatasetRequest\x1a\x16.google.protobuf.Empty"4\x82\xd3\xe4\x93\x02\'*%/v1beta1/{name=projects/*/datasets/*}\xda\x41\x04name\x12\xf0\x01\n\nImportData\x12\x34.google.cloud.datalabeling.v1beta1.ImportDataRequest\x1a\x1d.google.longrunning.Operation"\x8c\x01\x82\xd3\xe4\x93\x02\x35"0/v1beta1/{name=projects/*/datasets/*}:importData:\x01*\xda\x41\x11name,input_config\xca\x41:\n\x1bImportDataOperationResponse\x12\x1bImportDataOperationMetadata\x12\x8a\x02\n\nExportData\x12\x34.google.cloud.datalabeling.v1beta1.ExportDataRequest\x1a\x1d.google.longrunning.Operation"\xa6\x01\x82\xd3\xe4\x93\x02\x35"0/v1beta1/{name=projects/*/datasets/*}:exportData:\x01*\xda\x41+name,annotated_dataset,filter,output_config\xca\x41:\n\x1b\x45xportDataOperationResponse\x12\x1b\x45xportDataOperationMetadata\x12\xb3\x01\n\x0bGetDataItem\x12\x35.google.cloud.datalabeling.v1beta1.GetDataItemRequest\x1a+.google.cloud.datalabeling.v1beta1.DataItem"@\x82\xd3\xe4\x93\x02\x33\x12\x31/v1beta1/{name=projects/*/datasets/*/dataItems/*}\xda\x41\x04name\x12\xcd\x01\n\rListDataItems\x12\x37.google.cloud.datalabeling.v1beta1.ListDataItemsRequest\x1a\x38.google.cloud.datalabeling.v1beta1.ListDataItemsResponse"I\x82\xd3\xe4\x93\x02\x33\x12\x31/v1beta1/{parent=projects/*/datasets/*}/dataItems\xda\x41\rparent,filter\x12\xd3\x01\n\x13GetAnnotatedDataset\x12=.google.cloud.datalabeling.v1beta1.GetAnnotatedDatasetRequest\x1a\x33.google.cloud.datalabeling.v1beta1.AnnotatedDataset"H\x82\xd3\xe4\x93\x02;\x12\x39/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*}\xda\x41\x04name\x12\xed\x01\n\x15ListAnnotatedDatasets\x12?.google.cloud.datalabeling.v1beta1.ListAnnotatedDatasetsRequest\x1a@.google.cloud.datalabeling.v1beta1.ListAnnotatedDatasetsResponse"Q\x82\xd3\xe4\x93\x02;\x12\x39/v1beta1/{parent=projects/*/datasets/*}/annotatedDatasets\xda\x41\rparent,filter\x12\xb5\x01\n\x16\x44\x65leteAnnotatedDataset\x12@.google.cloud.datalabeling.v1beta1.DeleteAnnotatedDatasetRequest\x1a\x16.google.protobuf.Empty"A\x82\xd3\xe4\x93\x02;*9/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*}\x12\xed\x01\n\nLabelImage\x12\x34.google.cloud.datalabeling.v1beta1.LabelImageRequest\x1a\x1d.google.longrunning.Operation"\x89\x01\x82\xd3\xe4\x93\x02\x38"3/v1beta1/{parent=projects/*/datasets/*}/image:label:\x01*\xda\x41\x1bparent,basic_config,feature\xca\x41*\n\x10\x41nnotatedDataset\x12\x16LabelOperationMetadata\x12\xed\x01\n\nLabelVideo\x12\x34.google.cloud.datalabeling.v1beta1.LabelVideoRequest\x1a\x1d.google.longrunning.Operation"\x89\x01\x82\xd3\xe4\x93\x02\x38"3/v1beta1/{parent=projects/*/datasets/*}/video:label:\x01*\xda\x41\x1bparent,basic_config,feature\xca\x41*\n\x10\x41nnotatedDataset\x12\x16LabelOperationMetadata\x12\xea\x01\n\tLabelText\x12\x33.google.cloud.datalabeling.v1beta1.LabelTextRequest\x1a\x1d.google.longrunning.Operation"\x88\x01\x82\xd3\xe4\x93\x02\x37"2/v1beta1/{parent=projects/*/datasets/*}/text:label:\x01*\xda\x41\x1bparent,basic_config,feature\xca\x41*\n\x10\x41nnotatedDataset\x12\x16LabelOperationMetadata\x12\xca\x01\n\nGetExample\x12\x34.google.cloud.datalabeling.v1beta1.GetExampleRequest\x1a*.google.cloud.datalabeling.v1beta1.Example"Z\x82\xd3\xe4\x93\x02\x46\x12\x44/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*/examples/*}\xda\x41\x0bname,filter\x12\xdd\x01\n\x0cListExamples\x12\x36.google.cloud.datalabeling.v1beta1.ListExamplesRequest\x1a\x37.google.cloud.datalabeling.v1beta1.ListExamplesResponse"\\\x82\xd3\xe4\x93\x02\x46\x12\x44/v1beta1/{parent=projects/*/datasets/*/annotatedDatasets/*}/examples\xda\x41\rparent,filter\x12\xeb\x01\n\x17\x43reateAnnotationSpecSet\x12\x41.google.cloud.datalabeling.v1beta1.CreateAnnotationSpecSetRequest\x1a\x34.google.cloud.datalabeling.v1beta1.AnnotationSpecSet"W\x82\xd3\xe4\x93\x02\x34"//v1beta1/{parent=projects/*}/annotationSpecSets:\x01*\xda\x41\x1aparent,annotation_spec_set\x12\xcc\x01\n\x14GetAnnotationSpecSet\x12>.google.cloud.datalabeling.v1beta1.GetAnnotationSpecSetRequest\x1a\x34.google.cloud.datalabeling.v1beta1.AnnotationSpecSet">\x82\xd3\xe4\x93\x02\x31\x12//v1beta1/{name=projects/*/annotationSpecSets/*}\xda\x41\x04name\x12\xe6\x01\n\x16ListAnnotationSpecSets\x12@.google.cloud.datalabeling.v1beta1.ListAnnotationSpecSetsRequest\x1a\x41.google.cloud.datalabeling.v1beta1.ListAnnotationSpecSetsResponse"G\x82\xd3\xe4\x93\x02\x31\x12//v1beta1/{parent=projects/*}/annotationSpecSets\xda\x41\rparent,filter\x12\xb4\x01\n\x17\x44\x65leteAnnotationSpecSet\x12\x41.google.cloud.datalabeling.v1beta1.DeleteAnnotationSpecSetRequest\x1a\x16.google.protobuf.Empty">\x82\xd3\xe4\x93\x02\x31*//v1beta1/{name=projects/*/annotationSpecSets/*}\xda\x41\x04name\x12\xe5\x01\n\x11\x43reateInstruction\x12;.google.cloud.datalabeling.v1beta1.CreateInstructionRequest\x1a\x1d.google.longrunning.Operation"t\x82\xd3\xe4\x93\x02.")/v1beta1/{parent=projects/*}/instructions:\x01*\xda\x41\x12parent,instruction\xca\x41(\n\x0bInstruction\x12\x19\x43reateInstructionMetadata\x12\xb4\x01\n\x0eGetInstruction\x12\x38.google.cloud.datalabeling.v1beta1.GetInstructionRequest\x1a..google.cloud.datalabeling.v1beta1.Instruction"8\x82\xd3\xe4\x93\x02+\x12)/v1beta1/{name=projects/*/instructions/*}\xda\x41\x04name\x12\xce\x01\n\x10ListInstructions\x12:.google.cloud.datalabeling.v1beta1.ListInstructionsRequest\x1a;.google.cloud.datalabeling.v1beta1.ListInstructionsResponse"A\x82\xd3\xe4\x93\x02+\x12)/v1beta1/{parent=projects/*}/instructions\xda\x41\rparent,filter\x12\xa2\x01\n\x11\x44\x65leteInstruction\x12;.google.cloud.datalabeling.v1beta1.DeleteInstructionRequest\x1a\x16.google.protobuf.Empty"8\x82\xd3\xe4\x93\x02+*)/v1beta1/{name=projects/*/instructions/*}\xda\x41\x04name\x12\xbb\x01\n\rGetEvaluation\x12\x37.google.cloud.datalabeling.v1beta1.GetEvaluationRequest\x1a-.google.cloud.datalabeling.v1beta1.Evaluation"B\x82\xd3\xe4\x93\x02\x35\x12\x33/v1beta1/{name=projects/*/datasets/*/evaluations/*}\xda\x41\x04name\x12\xd7\x01\n\x11SearchEvaluations\x12;.google.cloud.datalabeling.v1beta1.SearchEvaluationsRequest\x1a<.google.cloud.datalabeling.v1beta1.SearchEvaluationsResponse"G\x82\xd3\xe4\x93\x02\x31\x12//v1beta1/{parent=projects/*}/evaluations:search\xda\x41\rparent,filter\x12\x88\x02\n\x18SearchExampleComparisons\x12\x42.google.cloud.datalabeling.v1beta1.SearchExampleComparisonsRequest\x1a\x43.google.cloud.datalabeling.v1beta1.SearchExampleComparisonsResponse"c\x82\xd3\xe4\x93\x02T"O/v1beta1/{parent=projects/*/datasets/*/evaluations/*}/exampleComparisons:search:\x01*\xda\x41\x06parent\x12\xcb\x01\n\x13\x43reateEvaluationJob\x12=.google.cloud.datalabeling.v1beta1.CreateEvaluationJobRequest\x1a\x30.google.cloud.datalabeling.v1beta1.EvaluationJob"C\x82\xd3\xe4\x93\x02\x30"+/v1beta1/{parent=projects/*}/evaluationJobs:\x01*\xda\x41\nparent,job\x12\xf7\x01\n\x13UpdateEvaluationJob\x12=.google.cloud.datalabeling.v1beta1.UpdateEvaluationJobRequest\x1a\x30.google.cloud.datalabeling.v1beta1.EvaluationJob"o\x82\xd3\xe4\x93\x02L2:/v1beta1/{evaluation_job.name=projects/*/evaluationJobs/*}:\x0e\x65valuation_job\xda\x41\x1a\x65valuation_job,update_mask\x12\xbc\x01\n\x10GetEvaluationJob\x12:.google.cloud.datalabeling.v1beta1.GetEvaluationJobRequest\x1a\x30.google.cloud.datalabeling.v1beta1.EvaluationJob":\x82\xd3\xe4\x93\x02-\x12+/v1beta1/{name=projects/*/evaluationJobs/*}\xda\x41\x04name\x12\xaf\x01\n\x12PauseEvaluationJob\x12<.google.cloud.datalabeling.v1beta1.PauseEvaluationJobRequest\x1a\x16.google.protobuf.Empty"C\x82\xd3\xe4\x93\x02\x36"1/v1beta1/{name=projects/*/evaluationJobs/*}:pause:\x01*\xda\x41\x04name\x12\xb2\x01\n\x13ResumeEvaluationJob\x12=.google.cloud.datalabeling.v1beta1.ResumeEvaluationJobRequest\x1a\x16.google.protobuf.Empty"D\x82\xd3\xe4\x93\x02\x37"2/v1beta1/{name=projects/*/evaluationJobs/*}:resume:\x01*\xda\x41\x04name\x12\xa8\x01\n\x13\x44\x65leteEvaluationJob\x12=.google.cloud.datalabeling.v1beta1.DeleteEvaluationJobRequest\x1a\x16.google.protobuf.Empty":\x82\xd3\xe4\x93\x02-*+/v1beta1/{name=projects/*/evaluationJobs/*}\xda\x41\x04name\x12\xd6\x01\n\x12ListEvaluationJobs\x12<.google.cloud.datalabeling.v1beta1.ListEvaluationJobsRequest\x1a=.google.cloud.datalabeling.v1beta1.ListEvaluationJobsResponse"C\x82\xd3\xe4\x93\x02-\x12+/v1beta1/{parent=projects/*}/evaluationJobs\xda\x41\rparent,filter\x1aO\xca\x41\x1b\x64\x61talabeling.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformBx\n%com.google.cloud.datalabeling.v1beta1P\x01ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabelingb\x06proto3'
),
dependencies=[
google_dot_api_dot_annotations__pb2.DESCRIPTOR,
google_dot_api_dot_client__pb2.DESCRIPTOR,
- google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_annotation__pb2.DESCRIPTOR,
+ google_dot_api_dot_field__behavior__pb2.DESCRIPTOR,
+ google_dot_api_dot_resource__pb2.DESCRIPTOR,
google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_annotation__spec__set__pb2.DESCRIPTOR,
google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_dataset__pb2.DESCRIPTOR,
google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_evaluation__pb2.DESCRIPTOR,
google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_evaluation__job__pb2.DESCRIPTOR,
google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_human__annotation__config__pb2.DESCRIPTOR,
google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_instruction__pb2.DESCRIPTOR,
- google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_operations__pb2.DESCRIPTOR,
google_dot_longrunning_dot_operations__pb2.DESCRIPTOR,
google_dot_protobuf_dot_empty__pb2.DESCRIPTOR,
google_dot_protobuf_dot_field__mask__pb2.DESCRIPTOR,
@@ -114,8 +110,8 @@
],
containing_type=None,
serialized_options=None,
- serialized_start=2571,
- serialized_end=2721,
+ serialized_start=3223,
+ serialized_end=3373,
)
_sym_db.RegisterEnumDescriptor(_LABELIMAGEREQUEST_FEATURE)
@@ -155,8 +151,8 @@
],
containing_type=None,
serialized_options=None,
- serialized_start=3295,
- serialized_end=3403,
+ serialized_start=4002,
+ serialized_end=4110,
)
_sym_db.RegisterEnumDescriptor(_LABELVIDEOREQUEST_FEATURE)
@@ -190,8 +186,8 @@
],
containing_type=None,
serialized_options=None,
- serialized_start=3821,
- serialized_end=3908,
+ serialized_start=4583,
+ serialized_end=4670,
)
_sym_db.RegisterEnumDescriptor(_LABELTEXTREQUEST_FEATURE)
@@ -218,7 +214,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A-\n+cloudresourcemanager.googleapis.com/Project"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -236,7 +234,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
],
@@ -248,8 +246,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=749,
- serialized_end=848,
+ serialized_start=694,
+ serialized_end=851,
)
@@ -275,7 +273,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A%\n#datalabeling.googleapis.com/Dataset"
+ ),
file=DESCRIPTOR,
)
],
@@ -287,8 +287,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=850,
- serialized_end=883,
+ serialized_start=853,
+ serialized_end=931,
)
@@ -314,7 +314,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A-\n+cloudresourcemanager.googleapis.com/Project"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -332,7 +334,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -350,7 +352,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -368,7 +370,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
],
@@ -380,8 +382,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=885,
- serialized_end=977,
+ serialized_start=934,
+ serialized_end=1094,
)
@@ -437,8 +439,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=979,
- serialized_end=1088,
+ serialized_start=1096,
+ serialized_end=1205,
)
@@ -464,7 +466,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A%\n#datalabeling.googleapis.com/Dataset"
+ ),
file=DESCRIPTOR,
)
],
@@ -476,8 +480,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1090,
- serialized_end=1126,
+ serialized_start=1207,
+ serialized_end=1288,
)
@@ -503,7 +507,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A%\n#datalabeling.googleapis.com/Dataset"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -521,7 +527,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -551,8 +557,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1129,
- serialized_end=1260,
+ serialized_start=1291,
+ serialized_end=1472,
)
@@ -578,7 +584,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A%\n#datalabeling.googleapis.com/Dataset"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -596,7 +604,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A.\n,datalabeling.googleapis.com/AnnotatedDataset"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -614,7 +624,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -632,7 +642,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -662,8 +672,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1263,
- serialized_end=1439,
+ serialized_start=1475,
+ serialized_end=1760,
)
@@ -689,7 +699,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A&\n$datalabeling.googleapis.com/DataItem"
+ ),
file=DESCRIPTOR,
)
],
@@ -701,8 +713,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1441,
- serialized_end=1475,
+ serialized_start=1762,
+ serialized_end=1842,
)
@@ -728,7 +740,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A%\n#datalabeling.googleapis.com/Dataset"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -746,7 +760,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -764,7 +778,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -782,7 +796,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
],
@@ -794,8 +808,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1477,
- serialized_end=1570,
+ serialized_start=1845,
+ serialized_end=1998,
)
@@ -851,8 +865,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1572,
- serialized_end=1685,
+ serialized_start=2000,
+ serialized_end=2113,
)
@@ -878,7 +892,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A.\n,datalabeling.googleapis.com/AnnotatedDataset"
+ ),
file=DESCRIPTOR,
)
],
@@ -890,8 +906,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1687,
- serialized_end=1729,
+ serialized_start=2115,
+ serialized_end=2211,
)
@@ -917,7 +933,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A%\n#datalabeling.googleapis.com/Dataset"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -935,7 +953,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -953,7 +971,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -971,7 +989,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
],
@@ -983,8 +1001,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1731,
- serialized_end=1832,
+ serialized_start=2214,
+ serialized_end=2375,
)
@@ -1040,8 +1058,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1835,
- serialized_end=1972,
+ serialized_start=2378,
+ serialized_end=2515,
)
@@ -1067,7 +1085,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A.\n,datalabeling.googleapis.com/AnnotatedDataset"
+ ),
file=DESCRIPTOR,
)
],
@@ -1079,8 +1099,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1974,
- serialized_end=2019,
+ serialized_start=2517,
+ serialized_end=2616,
)
@@ -1178,7 +1198,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A%\n#datalabeling.googleapis.com/Dataset"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -1196,7 +1218,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -1214,7 +1236,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
],
@@ -1234,8 +1256,8 @@
fields=[],
)
],
- serialized_start=2022,
- serialized_end=2739,
+ serialized_start=2619,
+ serialized_end=3391,
)
@@ -1333,7 +1355,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A%\n#datalabeling.googleapis.com/Dataset"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -1351,7 +1375,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -1369,7 +1393,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
],
@@ -1389,8 +1413,8 @@
fields=[],
)
],
- serialized_start=2742,
- serialized_end=3421,
+ serialized_start=3394,
+ serialized_end=4128,
)
@@ -1452,7 +1476,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A%\n#datalabeling.googleapis.com/Dataset"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -1470,7 +1496,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -1488,7 +1514,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
],
@@ -1508,8 +1534,8 @@
fields=[],
)
],
- serialized_start=3424,
- serialized_end=3926,
+ serialized_start=4131,
+ serialized_end=4688,
)
@@ -1535,7 +1561,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A%\n#datalabeling.googleapis.com/Example"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -1553,7 +1581,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
],
@@ -1565,8 +1593,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=3928,
- serialized_end=3977,
+ serialized_start=4690,
+ serialized_end=4789,
)
@@ -1592,7 +1620,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A.\n,datalabeling.googleapis.com/AnnotatedDataset"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -1610,7 +1640,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -1628,7 +1658,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -1646,7 +1676,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
],
@@ -1658,8 +1688,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=3979,
- serialized_end=4071,
+ serialized_start=4792,
+ serialized_end=4953,
)
@@ -1715,8 +1745,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=4073,
- serialized_end=4182,
+ serialized_start=4955,
+ serialized_end=5064,
)
@@ -1742,7 +1772,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A-\n+cloudresourcemanager.googleapis.com/Project"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -1760,7 +1792,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
],
@@ -1772,8 +1804,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=4185,
- serialized_end=4316,
+ serialized_start=5067,
+ serialized_end=5256,
)
@@ -1799,7 +1831,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A/\n-datalabeling.googleapis.com/AnnotationSpecSet"
+ ),
file=DESCRIPTOR,
)
],
@@ -1811,8 +1845,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=4318,
- serialized_end=4361,
+ serialized_start=5258,
+ serialized_end=5356,
)
@@ -1838,7 +1872,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A-\n+cloudresourcemanager.googleapis.com/Project"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -1856,7 +1892,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -1874,7 +1910,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -1892,7 +1928,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
],
@@ -1904,8 +1940,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=4363,
- serialized_end=4465,
+ serialized_start=5359,
+ serialized_end=5529,
)
@@ -1961,8 +1997,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=4468,
- serialized_end=4609,
+ serialized_start=5532,
+ serialized_end=5673,
)
@@ -1988,7 +2024,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A/\n-datalabeling.googleapis.com/AnnotationSpecSet"
+ ),
file=DESCRIPTOR,
)
],
@@ -2000,8 +2038,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=4611,
- serialized_end=4657,
+ serialized_start=5675,
+ serialized_end=5776,
)
@@ -2027,7 +2065,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A-\n+cloudresourcemanager.googleapis.com/Project"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -2045,7 +2085,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
],
@@ -2057,8 +2097,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=4659,
- serialized_end=4770,
+ serialized_start=5779,
+ serialized_end=5948,
)
@@ -2084,7 +2124,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A)\n'datalabeling.googleapis.com/Instruction"
+ ),
file=DESCRIPTOR,
)
],
@@ -2096,8 +2138,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=4772,
- serialized_end=4809,
+ serialized_start=5950,
+ serialized_end=6036,
)
@@ -2123,7 +2165,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A)\n'datalabeling.googleapis.com/Instruction"
+ ),
file=DESCRIPTOR,
)
],
@@ -2135,8 +2179,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=4811,
- serialized_end=4851,
+ serialized_start=6038,
+ serialized_end=6127,
)
@@ -2162,7 +2206,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A-\n+cloudresourcemanager.googleapis.com/Project"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -2180,7 +2226,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -2198,7 +2244,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -2216,7 +2262,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
],
@@ -2228,8 +2274,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=4853,
- serialized_end=4949,
+ serialized_start=6130,
+ serialized_end=6294,
)
@@ -2285,8 +2331,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=4951,
- serialized_end=5072,
+ serialized_start=6296,
+ serialized_end=6417,
)
@@ -2312,7 +2358,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A(\n&datalabeling.googleapis.com/Evaluation"
+ ),
file=DESCRIPTOR,
)
],
@@ -2324,8 +2372,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=5074,
- serialized_end=5110,
+ serialized_start=6419,
+ serialized_end=6503,
)
@@ -2351,7 +2399,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A(\n&datalabeling.googleapis.com/Evaluation"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -2369,7 +2419,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -2387,7 +2437,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -2405,7 +2455,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
],
@@ -2417,8 +2467,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=5112,
- serialized_end=5209,
+ serialized_start=6506,
+ serialized_end=6666,
)
@@ -2474,8 +2524,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=5211,
- serialized_end=5331,
+ serialized_start=6668,
+ serialized_end=6788,
)
@@ -2501,7 +2551,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A(\n&datalabeling.googleapis.com/Evaluation"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -2519,7 +2571,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -2537,7 +2589,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
],
@@ -2549,8 +2601,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=5333,
- serialized_end=5421,
+ serialized_start=6791,
+ serialized_end=6937,
)
@@ -2606,8 +2658,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=5602,
- serialized_end=5771,
+ serialized_start=7118,
+ serialized_end=7287,
)
_SEARCHEXAMPLECOMPARISONSRESPONSE = _descriptor.Descriptor(
@@ -2662,8 +2714,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=5424,
- serialized_end=5771,
+ serialized_start=6940,
+ serialized_end=7287,
)
@@ -2689,7 +2741,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A-\n+cloudresourcemanager.googleapis.com/Project"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -2707,7 +2761,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
],
@@ -2719,8 +2773,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=5773,
- serialized_end=5880,
+ serialized_start=7290,
+ serialized_end=7455,
)
@@ -2746,7 +2800,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -2764,7 +2818,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
],
@@ -2776,8 +2830,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=5883,
- serialized_end=6034,
+ serialized_start=7458,
+ serialized_end=7619,
)
@@ -2803,7 +2857,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A+\n)datalabeling.googleapis.com/EvaluationJob"
+ ),
file=DESCRIPTOR,
)
],
@@ -2815,8 +2871,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=6036,
- serialized_end=6075,
+ serialized_start=7621,
+ serialized_end=7711,
)
@@ -2842,7 +2898,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A+\n)datalabeling.googleapis.com/EvaluationJob"
+ ),
file=DESCRIPTOR,
)
],
@@ -2854,8 +2912,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=6077,
- serialized_end=6118,
+ serialized_start=7713,
+ serialized_end=7805,
)
@@ -2881,7 +2939,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A+\n)datalabeling.googleapis.com/EvaluationJob"
+ ),
file=DESCRIPTOR,
)
],
@@ -2893,8 +2953,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=6120,
- serialized_end=6162,
+ serialized_start=7807,
+ serialized_end=7900,
)
@@ -2920,7 +2980,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A+\n)datalabeling.googleapis.com/EvaluationJob"
+ ),
file=DESCRIPTOR,
)
],
@@ -2932,8 +2994,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=6164,
- serialized_end=6206,
+ serialized_start=7902,
+ serialized_end=7995,
)
@@ -2959,7 +3021,9 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b(
+ "\340A\002\372A-\n+cloudresourcemanager.googleapis.com/Project"
+ ),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -2977,7 +3041,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -2995,7 +3059,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -3013,7 +3077,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
],
@@ -3025,8 +3089,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=6208,
- serialized_end=6306,
+ serialized_start=7998,
+ serialized_end=8164,
)
@@ -3082,8 +3146,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=6309,
- serialized_end=6437,
+ serialized_start=8167,
+ serialized_end=8295,
)
_CREATEDATASETREQUEST.fields_by_name[
@@ -4148,8 +4212,8 @@
Attributes:
name:
- Required. Name of the evaluation. Format: 'projects/{project\_
- id}/datasets/{dataset\_id}/evaluations/{evaluation\_id}'
+ Required. Name of the evaluation. Format: "projects/{project\
+ _id}/datasets/{dataset\_id}/evaluations/{evaluation\_id}'
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.GetEvaluationRequest)
),
@@ -4167,26 +4231,46 @@
Attributes:
parent:
- Required. Evaluation search parent. Format:
- projects/{project\_id}
+ Required. Evaluation search parent (project ID). Format:
+ "projects/{project\_id}"
filter:
- Optional. Support filtering by model id, job state, start and
- end time. Format: "evaluation\_job.evaluation\_job\_id =
- {evaluation\_job\_id} AND
- evaluation\_job.evaluation\_job\_run\_time\_start =
- {timestamp} AND
- evaluation\_job.evaluation\_job\_run\_time\_end = {timestamp}
- AND annotation\_spec.display\_name = {display\_name}"
+ Optional. To search evaluations, you can filter by the
+ following: - evaluation\_job.evaluation\_job\_id (the last
+ part of [EvaluationJob.name][google.cloud.datalabeling.v1be
+ ta1.EvaluationJob.name]) - evaluation\_job.model\_id (the
+ {model\_name} portion of [EvaluationJob.modelVersion][googl
+ e.cloud.datalabeling.v1beta1.EvaluationJob.model\_version]) -
+ evaluation\_job.evaluation\_job\_run\_time\_start (Minimum
+ threshold for the [evaluationJobRunTime][google.cloud.da
+ talabeling.v1beta1.Evaluation.evaluation\_job\_run\_time]
+ that created the evaluation) -
+ evaluation\_job.evaluation\_job\_run\_time\_end (Maximum
+ threshold for the [evaluationJobRunTime][google.cloud.da
+ talabeling.v1beta1.Evaluation.evaluation\_job\_run\_time]
+ that created the evaluation) - evaluation\_job.job\_state
+ ([EvaluationJob.state][google.cloud.datalabeling.v1beta1.Evalu
+ ationJob.state]) - annotation\_spec.display\_name (the
+ Evaluation contains a metric for the annotation spec with
+ this [displayName][google.cloud.datalabeling.v1beta1.Annota
+ tionSpec.display\_name]) To filter by multiple critiera, use
+ the ``AND`` operator or the ``OR`` operator. The following
+ examples shows a string that filters by several critiera:
+ "evaluation\_job.evaluation\_job\_id = {evaluation\_job\_id}
+ AND evaluation\ *job.model\_id = {model\_name} AND
+ evaluation*\ job.evaluation\_job\_run\_time\_start =
+ {timestamp\_1} AND evaluation\
+ *job.evaluation\_job\_run\_time\_end = {timestamp\_2} AND
+ annotation*\ spec.display\_name = {display\_name}"
page_size:
Optional. Requested page size. Server may return fewer results
than requested. Default value is 100.
page_token:
Optional. A token identifying a page of results for the server
- to return. Typically obtained by [SearchEvaluationsResponse.ne
- xt\_page\_token][google.cloud.datalabeling.v1beta1.SearchEvalu
- ationsResponse.next\_page\_token] of the previous
- [DataLabelingService.SearchEvaluations] call. Return first
- page if empty.
+ to return. Typically obtained by the [nextPageToken][google.cl
+ oud.datalabeling.v1beta1.SearchEvaluationsResponse.next\_page\
+ _token] of the response to a previous search request. If you
+ don't specify this field, the API call requests the first page
+ of the search.
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.SearchEvaluationsRequest)
),
@@ -4204,7 +4288,7 @@
Attributes:
evaluations:
- The list of evaluations to return.
+ The list of evaluations matching the search.
next_page_token:
A token to retrieve next page of results.
""",
@@ -4224,18 +4308,21 @@
Attributes:
parent:
- Required. Name of the Evaluation resource to search example
- comparison from. Format: projects/{project\_id}/datasets/{data
- set\_id}/evaluations/{evaluation\_id}
+ Required. Name of the
+ [Evaluation][google.cloud.datalabeling.v1beta1.Evaluation]
+ resource to search for example comparisons from. Format: "pro
+ jects/{project\_id}/datasets/{dataset\_id}/evaluations/{evalua
+ tion\_id}"
page_size:
Optional. Requested page size. Server may return fewer results
than requested. Default value is 100.
page_token:
Optional. A token identifying a page of results for the server
- to return. Typically obtained by
- [SearchExampleComparisons.next\_page\_token][] of the previous
- [DataLabelingService.SearchExampleComparisons] call. Return
- first page if empty.
+ to return. Typically obtained by the
+ [nextPageToken][SearchExampleComparisons.next\_page\_token] of
+ the response to a previous search rquest. If you don't
+ specify this field, the API call requests the first page of
+ the search.
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.SearchExampleComparisonsRequest)
),
@@ -4252,8 +4339,15 @@
dict(
DESCRIPTOR=_SEARCHEXAMPLECOMPARISONSRESPONSE_EXAMPLECOMPARISON,
__module__="google.cloud.datalabeling_v1beta1.proto.data_labeling_service_pb2",
- __doc__="""Example comparisons containing annotation comparison between groundtruth
- and predictions.
+ __doc__="""Example comparisons comparing ground truth output and
+ predictions for a specific input.
+
+
+ Attributes:
+ ground_truth_example:
+ The ground truth output for the input.
+ model_created_examples:
+ Predictions by the model for the input.
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.SearchExampleComparisonsResponse.ExampleComparison)
),
@@ -4264,6 +4358,8 @@
Attributes:
+ example_comparisons:
+ A list of example comparisons matching the search criteria.
next_page_token:
A token to retrieve next page of results.
""",
@@ -4284,8 +4380,8 @@
Attributes:
parent:
- Required. Evaluation job resource parent, format:
- projects/{project\_id}.
+ Required. Evaluation job resource parent. Format:
+ "projects/{project\_id}"
job:
Required. The evaluation job to create.
""",
@@ -4307,8 +4403,13 @@
evaluation_job:
Required. Evaluation job that is going to be updated.
update_mask:
- Optional. Mask for which field in evaluation\_job should be
- updated.
+ Optional. Mask for which fields to update. You can only
+ provide the following fields: -
+ ``evaluationJobConfig.humanAnnotationConfig.instruction`` -
+ ``evaluationJobConfig.exampleCount`` -
+ ``evaluationJobConfig.exampleSamplePercentage`` You can
+ provide more than one of these fields by separating them with
+ commas.
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.UpdateEvaluationJobRequest)
),
@@ -4327,7 +4428,7 @@
Attributes:
name:
Required. Name of the evaluation job. Format:
- 'projects/{project\_id}/evaluationJobs/{evaluation\_job\_id}'
+ "projects/{project\_id}/evaluationJobs/{evaluation\_job\_id}"
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.GetEvaluationJobRequest)
),
@@ -4347,7 +4448,7 @@
name:
Required. Name of the evaluation job that is going to be
paused. Format:
- 'projects/{project\_id}/evaluationJobs/{evaluation\_job\_id}'
+ "projects/{project\_id}/evaluationJobs/{evaluation\_job\_id}"
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.PauseEvaluationJobRequest)
),
@@ -4367,7 +4468,7 @@
name:
Required. Name of the evaluation job that is going to be
resumed. Format:
- 'projects/{project\_id}/evaluationJobs/{evaluation\_job\_id}'
+ "projects/{project\_id}/evaluationJobs/{evaluation\_job\_id}"
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.ResumeEvaluationJobRequest)
),
@@ -4387,7 +4488,7 @@
name:
Required. Name of the evaluation job that is going to be
deleted. Format:
- 'projects/{project\_id}/evaluationJobs/{evaluation\_job\_id}'
+ "projects/{project\_id}/evaluationJobs/{evaluation\_job\_id}"
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.DeleteEvaluationJobRequest)
),
@@ -4405,21 +4506,28 @@
Attributes:
parent:
- Required. Evaluation resource parent. Format:
+ Required. Evaluation job resource parent. Format:
"projects/{project\_id}"
filter:
- Optional. Only support filter by model id and job state.
- Format: "evaluation\_job.model\_id = {model\_id} AND
- evaluation\_job.state = {EvaluationJob::State}"
+ Optional. You can filter the jobs to list by model\_id (also
+ known as model\_name, as described in [EvaluationJob.modelVers
+ ion][google.cloud.datalabeling.v1beta1.EvaluationJob.model\_ve
+ rsion]) or by evaluation job state (as described in [Evaluatio
+ nJob.state][google.cloud.datalabeling.v1beta1.EvaluationJob.st
+ ate]). To filter by both criteria, use the ``AND`` operator or
+ the ``OR`` operator. For example, you can use the following
+ string for your filter: "evaluation*job.model\_id =
+ {model\_name} AND evaluation*\ job.state =
+ {evaluation\_job\_state}"
page_size:
Optional. Requested page size. Server may return fewer results
than requested. Default value is 100.
page_token:
Optional. A token identifying a page of results for the server
- to return. Typically obtained by
- [ListEvaluationJobs.next\_page\_token][] of the previous
- [DataLabelingService.ListEvaluationJobs] call. Return first
- page if empty.
+ to return. Typically obtained by the [nextPageToken][google.cl
+ oud.datalabeling.v1beta1.ListEvaluationJobsResponse.next\_page
+ \_token] in the response to the previous request. The request
+ returns the first page if this is empty.
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.ListEvaluationJobsRequest)
),
@@ -4448,6 +4556,82 @@
DESCRIPTOR._options = None
+_CREATEDATASETREQUEST.fields_by_name["parent"]._options = None
+_CREATEDATASETREQUEST.fields_by_name["dataset"]._options = None
+_GETDATASETREQUEST.fields_by_name["name"]._options = None
+_LISTDATASETSREQUEST.fields_by_name["parent"]._options = None
+_LISTDATASETSREQUEST.fields_by_name["filter"]._options = None
+_LISTDATASETSREQUEST.fields_by_name["page_size"]._options = None
+_LISTDATASETSREQUEST.fields_by_name["page_token"]._options = None
+_DELETEDATASETREQUEST.fields_by_name["name"]._options = None
+_IMPORTDATAREQUEST.fields_by_name["name"]._options = None
+_IMPORTDATAREQUEST.fields_by_name["input_config"]._options = None
+_EXPORTDATAREQUEST.fields_by_name["name"]._options = None
+_EXPORTDATAREQUEST.fields_by_name["annotated_dataset"]._options = None
+_EXPORTDATAREQUEST.fields_by_name["filter"]._options = None
+_EXPORTDATAREQUEST.fields_by_name["output_config"]._options = None
+_GETDATAITEMREQUEST.fields_by_name["name"]._options = None
+_LISTDATAITEMSREQUEST.fields_by_name["parent"]._options = None
+_LISTDATAITEMSREQUEST.fields_by_name["filter"]._options = None
+_LISTDATAITEMSREQUEST.fields_by_name["page_size"]._options = None
+_LISTDATAITEMSREQUEST.fields_by_name["page_token"]._options = None
+_GETANNOTATEDDATASETREQUEST.fields_by_name["name"]._options = None
+_LISTANNOTATEDDATASETSREQUEST.fields_by_name["parent"]._options = None
+_LISTANNOTATEDDATASETSREQUEST.fields_by_name["filter"]._options = None
+_LISTANNOTATEDDATASETSREQUEST.fields_by_name["page_size"]._options = None
+_LISTANNOTATEDDATASETSREQUEST.fields_by_name["page_token"]._options = None
+_DELETEANNOTATEDDATASETREQUEST.fields_by_name["name"]._options = None
+_LABELIMAGEREQUEST.fields_by_name["parent"]._options = None
+_LABELIMAGEREQUEST.fields_by_name["basic_config"]._options = None
+_LABELIMAGEREQUEST.fields_by_name["feature"]._options = None
+_LABELVIDEOREQUEST.fields_by_name["parent"]._options = None
+_LABELVIDEOREQUEST.fields_by_name["basic_config"]._options = None
+_LABELVIDEOREQUEST.fields_by_name["feature"]._options = None
+_LABELTEXTREQUEST.fields_by_name["parent"]._options = None
+_LABELTEXTREQUEST.fields_by_name["basic_config"]._options = None
+_LABELTEXTREQUEST.fields_by_name["feature"]._options = None
+_GETEXAMPLEREQUEST.fields_by_name["name"]._options = None
+_GETEXAMPLEREQUEST.fields_by_name["filter"]._options = None
+_LISTEXAMPLESREQUEST.fields_by_name["parent"]._options = None
+_LISTEXAMPLESREQUEST.fields_by_name["filter"]._options = None
+_LISTEXAMPLESREQUEST.fields_by_name["page_size"]._options = None
+_LISTEXAMPLESREQUEST.fields_by_name["page_token"]._options = None
+_CREATEANNOTATIONSPECSETREQUEST.fields_by_name["parent"]._options = None
+_CREATEANNOTATIONSPECSETREQUEST.fields_by_name["annotation_spec_set"]._options = None
+_GETANNOTATIONSPECSETREQUEST.fields_by_name["name"]._options = None
+_LISTANNOTATIONSPECSETSREQUEST.fields_by_name["parent"]._options = None
+_LISTANNOTATIONSPECSETSREQUEST.fields_by_name["filter"]._options = None
+_LISTANNOTATIONSPECSETSREQUEST.fields_by_name["page_size"]._options = None
+_LISTANNOTATIONSPECSETSREQUEST.fields_by_name["page_token"]._options = None
+_DELETEANNOTATIONSPECSETREQUEST.fields_by_name["name"]._options = None
+_CREATEINSTRUCTIONREQUEST.fields_by_name["parent"]._options = None
+_CREATEINSTRUCTIONREQUEST.fields_by_name["instruction"]._options = None
+_GETINSTRUCTIONREQUEST.fields_by_name["name"]._options = None
+_DELETEINSTRUCTIONREQUEST.fields_by_name["name"]._options = None
+_LISTINSTRUCTIONSREQUEST.fields_by_name["parent"]._options = None
+_LISTINSTRUCTIONSREQUEST.fields_by_name["filter"]._options = None
+_LISTINSTRUCTIONSREQUEST.fields_by_name["page_size"]._options = None
+_LISTINSTRUCTIONSREQUEST.fields_by_name["page_token"]._options = None
+_GETEVALUATIONREQUEST.fields_by_name["name"]._options = None
+_SEARCHEVALUATIONSREQUEST.fields_by_name["parent"]._options = None
+_SEARCHEVALUATIONSREQUEST.fields_by_name["filter"]._options = None
+_SEARCHEVALUATIONSREQUEST.fields_by_name["page_size"]._options = None
+_SEARCHEVALUATIONSREQUEST.fields_by_name["page_token"]._options = None
+_SEARCHEXAMPLECOMPARISONSREQUEST.fields_by_name["parent"]._options = None
+_SEARCHEXAMPLECOMPARISONSREQUEST.fields_by_name["page_size"]._options = None
+_SEARCHEXAMPLECOMPARISONSREQUEST.fields_by_name["page_token"]._options = None
+_CREATEEVALUATIONJOBREQUEST.fields_by_name["parent"]._options = None
+_CREATEEVALUATIONJOBREQUEST.fields_by_name["job"]._options = None
+_UPDATEEVALUATIONJOBREQUEST.fields_by_name["evaluation_job"]._options = None
+_UPDATEEVALUATIONJOBREQUEST.fields_by_name["update_mask"]._options = None
+_GETEVALUATIONJOBREQUEST.fields_by_name["name"]._options = None
+_PAUSEEVALUATIONJOBREQUEST.fields_by_name["name"]._options = None
+_RESUMEEVALUATIONJOBREQUEST.fields_by_name["name"]._options = None
+_DELETEEVALUATIONJOBREQUEST.fields_by_name["name"]._options = None
+_LISTEVALUATIONJOBSREQUEST.fields_by_name["parent"]._options = None
+_LISTEVALUATIONJOBSREQUEST.fields_by_name["filter"]._options = None
+_LISTEVALUATIONJOBSREQUEST.fields_by_name["page_size"]._options = None
+_LISTEVALUATIONJOBSREQUEST.fields_by_name["page_token"]._options = None
_DATALABELINGSERVICE = _descriptor.ServiceDescriptor(
name="DataLabelingService",
@@ -4457,8 +4641,8 @@
serialized_options=_b(
"\312A\033datalabeling.googleapis.com\322A.https://www.googleapis.com/auth/cloud-platform"
),
- serialized_start=6440,
- serialized_end=12834,
+ serialized_start=8298,
+ serialized_end=15504,
methods=[
_descriptor.MethodDescriptor(
name="CreateDataset",
@@ -4468,7 +4652,7 @@
input_type=_CREATEDATASETREQUEST,
output_type=google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_dataset__pb2._DATASET,
serialized_options=_b(
- '\202\323\344\223\002*"%/v1beta1/{parent=projects/*}/datasets:\001*'
+ '\202\323\344\223\002*"%/v1beta1/{parent=projects/*}/datasets:\001*\332A\016parent,dataset'
),
),
_descriptor.MethodDescriptor(
@@ -4479,7 +4663,7 @@
input_type=_GETDATASETREQUEST,
output_type=google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_dataset__pb2._DATASET,
serialized_options=_b(
- "\202\323\344\223\002'\022%/v1beta1/{name=projects/*/datasets/*}"
+ "\202\323\344\223\002'\022%/v1beta1/{name=projects/*/datasets/*}\332A\004name"
),
),
_descriptor.MethodDescriptor(
@@ -4490,7 +4674,7 @@
input_type=_LISTDATASETSREQUEST,
output_type=_LISTDATASETSRESPONSE,
serialized_options=_b(
- "\202\323\344\223\002'\022%/v1beta1/{parent=projects/*}/datasets"
+ "\202\323\344\223\002'\022%/v1beta1/{parent=projects/*}/datasets\332A\rparent,filter"
),
),
_descriptor.MethodDescriptor(
@@ -4501,7 +4685,7 @@
input_type=_DELETEDATASETREQUEST,
output_type=google_dot_protobuf_dot_empty__pb2._EMPTY,
serialized_options=_b(
- "\202\323\344\223\002'*%/v1beta1/{name=projects/*/datasets/*}"
+ "\202\323\344\223\002'*%/v1beta1/{name=projects/*/datasets/*}\332A\004name"
),
),
_descriptor.MethodDescriptor(
@@ -4512,7 +4696,7 @@
input_type=_IMPORTDATAREQUEST,
output_type=google_dot_longrunning_dot_operations__pb2._OPERATION,
serialized_options=_b(
- '\202\323\344\223\0025"0/v1beta1/{name=projects/*/datasets/*}:importData:\001*'
+ '\202\323\344\223\0025"0/v1beta1/{name=projects/*/datasets/*}:importData:\001*\332A\021name,input_config\312A:\n\033ImportDataOperationResponse\022\033ImportDataOperationMetadata'
),
),
_descriptor.MethodDescriptor(
@@ -4523,7 +4707,7 @@
input_type=_EXPORTDATAREQUEST,
output_type=google_dot_longrunning_dot_operations__pb2._OPERATION,
serialized_options=_b(
- '\202\323\344\223\0025"0/v1beta1/{name=projects/*/datasets/*}:exportData:\001*'
+ '\202\323\344\223\0025"0/v1beta1/{name=projects/*/datasets/*}:exportData:\001*\332A+name,annotated_dataset,filter,output_config\312A:\n\033ExportDataOperationResponse\022\033ExportDataOperationMetadata'
),
),
_descriptor.MethodDescriptor(
@@ -4534,7 +4718,7 @@
input_type=_GETDATAITEMREQUEST,
output_type=google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_dataset__pb2._DATAITEM,
serialized_options=_b(
- "\202\323\344\223\0023\0221/v1beta1/{name=projects/*/datasets/*/dataItems/*}"
+ "\202\323\344\223\0023\0221/v1beta1/{name=projects/*/datasets/*/dataItems/*}\332A\004name"
),
),
_descriptor.MethodDescriptor(
@@ -4545,7 +4729,7 @@
input_type=_LISTDATAITEMSREQUEST,
output_type=_LISTDATAITEMSRESPONSE,
serialized_options=_b(
- "\202\323\344\223\0023\0221/v1beta1/{parent=projects/*/datasets/*}/dataItems"
+ "\202\323\344\223\0023\0221/v1beta1/{parent=projects/*/datasets/*}/dataItems\332A\rparent,filter"
),
),
_descriptor.MethodDescriptor(
@@ -4556,7 +4740,7 @@
input_type=_GETANNOTATEDDATASETREQUEST,
output_type=google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_dataset__pb2._ANNOTATEDDATASET,
serialized_options=_b(
- "\202\323\344\223\002;\0229/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*}"
+ "\202\323\344\223\002;\0229/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*}\332A\004name"
),
),
_descriptor.MethodDescriptor(
@@ -4567,7 +4751,7 @@
input_type=_LISTANNOTATEDDATASETSREQUEST,
output_type=_LISTANNOTATEDDATASETSRESPONSE,
serialized_options=_b(
- "\202\323\344\223\002;\0229/v1beta1/{parent=projects/*/datasets/*}/annotatedDatasets"
+ "\202\323\344\223\002;\0229/v1beta1/{parent=projects/*/datasets/*}/annotatedDatasets\332A\rparent,filter"
),
),
_descriptor.MethodDescriptor(
@@ -4589,7 +4773,7 @@
input_type=_LABELIMAGEREQUEST,
output_type=google_dot_longrunning_dot_operations__pb2._OPERATION,
serialized_options=_b(
- '\202\323\344\223\0028"3/v1beta1/{parent=projects/*/datasets/*}/image:label:\001*'
+ '\202\323\344\223\0028"3/v1beta1/{parent=projects/*/datasets/*}/image:label:\001*\332A\033parent,basic_config,feature\312A*\n\020AnnotatedDataset\022\026LabelOperationMetadata'
),
),
_descriptor.MethodDescriptor(
@@ -4600,7 +4784,7 @@
input_type=_LABELVIDEOREQUEST,
output_type=google_dot_longrunning_dot_operations__pb2._OPERATION,
serialized_options=_b(
- '\202\323\344\223\0028"3/v1beta1/{parent=projects/*/datasets/*}/video:label:\001*'
+ '\202\323\344\223\0028"3/v1beta1/{parent=projects/*/datasets/*}/video:label:\001*\332A\033parent,basic_config,feature\312A*\n\020AnnotatedDataset\022\026LabelOperationMetadata'
),
),
_descriptor.MethodDescriptor(
@@ -4611,7 +4795,7 @@
input_type=_LABELTEXTREQUEST,
output_type=google_dot_longrunning_dot_operations__pb2._OPERATION,
serialized_options=_b(
- '\202\323\344\223\0027"2/v1beta1/{parent=projects/*/datasets/*}/text:label:\001*'
+ '\202\323\344\223\0027"2/v1beta1/{parent=projects/*/datasets/*}/text:label:\001*\332A\033parent,basic_config,feature\312A*\n\020AnnotatedDataset\022\026LabelOperationMetadata'
),
),
_descriptor.MethodDescriptor(
@@ -4622,7 +4806,7 @@
input_type=_GETEXAMPLEREQUEST,
output_type=google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_dataset__pb2._EXAMPLE,
serialized_options=_b(
- "\202\323\344\223\002F\022D/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*/examples/*}"
+ "\202\323\344\223\002F\022D/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*/examples/*}\332A\013name,filter"
),
),
_descriptor.MethodDescriptor(
@@ -4633,7 +4817,7 @@
input_type=_LISTEXAMPLESREQUEST,
output_type=_LISTEXAMPLESRESPONSE,
serialized_options=_b(
- "\202\323\344\223\002F\022D/v1beta1/{parent=projects/*/datasets/*/annotatedDatasets/*}/examples"
+ "\202\323\344\223\002F\022D/v1beta1/{parent=projects/*/datasets/*/annotatedDatasets/*}/examples\332A\rparent,filter"
),
),
_descriptor.MethodDescriptor(
@@ -4644,7 +4828,7 @@
input_type=_CREATEANNOTATIONSPECSETREQUEST,
output_type=google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_annotation__spec__set__pb2._ANNOTATIONSPECSET,
serialized_options=_b(
- '\202\323\344\223\0024"//v1beta1/{parent=projects/*}/annotationSpecSets:\001*'
+ '\202\323\344\223\0024"//v1beta1/{parent=projects/*}/annotationSpecSets:\001*\332A\032parent,annotation_spec_set'
),
),
_descriptor.MethodDescriptor(
@@ -4655,7 +4839,7 @@
input_type=_GETANNOTATIONSPECSETREQUEST,
output_type=google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_annotation__spec__set__pb2._ANNOTATIONSPECSET,
serialized_options=_b(
- "\202\323\344\223\0021\022//v1beta1/{name=projects/*/annotationSpecSets/*}"
+ "\202\323\344\223\0021\022//v1beta1/{name=projects/*/annotationSpecSets/*}\332A\004name"
),
),
_descriptor.MethodDescriptor(
@@ -4666,7 +4850,7 @@
input_type=_LISTANNOTATIONSPECSETSREQUEST,
output_type=_LISTANNOTATIONSPECSETSRESPONSE,
serialized_options=_b(
- "\202\323\344\223\0021\022//v1beta1/{parent=projects/*}/annotationSpecSets"
+ "\202\323\344\223\0021\022//v1beta1/{parent=projects/*}/annotationSpecSets\332A\rparent,filter"
),
),
_descriptor.MethodDescriptor(
@@ -4677,7 +4861,7 @@
input_type=_DELETEANNOTATIONSPECSETREQUEST,
output_type=google_dot_protobuf_dot_empty__pb2._EMPTY,
serialized_options=_b(
- "\202\323\344\223\0021*//v1beta1/{name=projects/*/annotationSpecSets/*}"
+ "\202\323\344\223\0021*//v1beta1/{name=projects/*/annotationSpecSets/*}\332A\004name"
),
),
_descriptor.MethodDescriptor(
@@ -4688,7 +4872,7 @@
input_type=_CREATEINSTRUCTIONREQUEST,
output_type=google_dot_longrunning_dot_operations__pb2._OPERATION,
serialized_options=_b(
- '\202\323\344\223\002.")/v1beta1/{parent=projects/*}/instructions:\001*'
+ '\202\323\344\223\002.")/v1beta1/{parent=projects/*}/instructions:\001*\332A\022parent,instruction\312A(\n\013Instruction\022\031CreateInstructionMetadata'
),
),
_descriptor.MethodDescriptor(
@@ -4699,7 +4883,7 @@
input_type=_GETINSTRUCTIONREQUEST,
output_type=google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_instruction__pb2._INSTRUCTION,
serialized_options=_b(
- "\202\323\344\223\002+\022)/v1beta1/{name=projects/*/instructions/*}"
+ "\202\323\344\223\002+\022)/v1beta1/{name=projects/*/instructions/*}\332A\004name"
),
),
_descriptor.MethodDescriptor(
@@ -4710,7 +4894,7 @@
input_type=_LISTINSTRUCTIONSREQUEST,
output_type=_LISTINSTRUCTIONSRESPONSE,
serialized_options=_b(
- "\202\323\344\223\002+\022)/v1beta1/{parent=projects/*}/instructions"
+ "\202\323\344\223\002+\022)/v1beta1/{parent=projects/*}/instructions\332A\rparent,filter"
),
),
_descriptor.MethodDescriptor(
@@ -4721,7 +4905,7 @@
input_type=_DELETEINSTRUCTIONREQUEST,
output_type=google_dot_protobuf_dot_empty__pb2._EMPTY,
serialized_options=_b(
- "\202\323\344\223\002+*)/v1beta1/{name=projects/*/instructions/*}"
+ "\202\323\344\223\002+*)/v1beta1/{name=projects/*/instructions/*}\332A\004name"
),
),
_descriptor.MethodDescriptor(
@@ -4732,7 +4916,7 @@
input_type=_GETEVALUATIONREQUEST,
output_type=google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_evaluation__pb2._EVALUATION,
serialized_options=_b(
- "\202\323\344\223\0025\0223/v1beta1/{name=projects/*/datasets/*/evaluations/*}"
+ "\202\323\344\223\0025\0223/v1beta1/{name=projects/*/datasets/*/evaluations/*}\332A\004name"
),
),
_descriptor.MethodDescriptor(
@@ -4743,7 +4927,7 @@
input_type=_SEARCHEVALUATIONSREQUEST,
output_type=_SEARCHEVALUATIONSRESPONSE,
serialized_options=_b(
- "\202\323\344\223\0021\022//v1beta1/{parent=projects/*}/evaluations:search"
+ "\202\323\344\223\0021\022//v1beta1/{parent=projects/*}/evaluations:search\332A\rparent,filter"
),
),
_descriptor.MethodDescriptor(
@@ -4754,7 +4938,7 @@
input_type=_SEARCHEXAMPLECOMPARISONSREQUEST,
output_type=_SEARCHEXAMPLECOMPARISONSRESPONSE,
serialized_options=_b(
- '\202\323\344\223\002T"O/v1beta1/{parent=projects/*/datasets/*/evaluations/*}/exampleComparisons:search:\001*'
+ '\202\323\344\223\002T"O/v1beta1/{parent=projects/*/datasets/*/evaluations/*}/exampleComparisons:search:\001*\332A\006parent'
),
),
_descriptor.MethodDescriptor(
@@ -4765,7 +4949,7 @@
input_type=_CREATEEVALUATIONJOBREQUEST,
output_type=google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_evaluation__job__pb2._EVALUATIONJOB,
serialized_options=_b(
- '\202\323\344\223\0020"+/v1beta1/{parent=projects/*}/evaluationJobs:\001*'
+ '\202\323\344\223\0020"+/v1beta1/{parent=projects/*}/evaluationJobs:\001*\332A\nparent,job'
),
),
_descriptor.MethodDescriptor(
@@ -4776,7 +4960,7 @@
input_type=_UPDATEEVALUATIONJOBREQUEST,
output_type=google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_evaluation__job__pb2._EVALUATIONJOB,
serialized_options=_b(
- "\202\323\344\223\002L2:/v1beta1/{evaluation_job.name=projects/*/evaluationJobs/*}:\016evaluation_job"
+ "\202\323\344\223\002L2:/v1beta1/{evaluation_job.name=projects/*/evaluationJobs/*}:\016evaluation_job\332A\032evaluation_job,update_mask"
),
),
_descriptor.MethodDescriptor(
@@ -4787,7 +4971,7 @@
input_type=_GETEVALUATIONJOBREQUEST,
output_type=google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_evaluation__job__pb2._EVALUATIONJOB,
serialized_options=_b(
- "\202\323\344\223\002-\022+/v1beta1/{name=projects/*/evaluationJobs/*}"
+ "\202\323\344\223\002-\022+/v1beta1/{name=projects/*/evaluationJobs/*}\332A\004name"
),
),
_descriptor.MethodDescriptor(
@@ -4798,7 +4982,7 @@
input_type=_PAUSEEVALUATIONJOBREQUEST,
output_type=google_dot_protobuf_dot_empty__pb2._EMPTY,
serialized_options=_b(
- '\202\323\344\223\0026"1/v1beta1/{name=projects/*/evaluationJobs/*}:pause:\001*'
+ '\202\323\344\223\0026"1/v1beta1/{name=projects/*/evaluationJobs/*}:pause:\001*\332A\004name'
),
),
_descriptor.MethodDescriptor(
@@ -4809,7 +4993,7 @@
input_type=_RESUMEEVALUATIONJOBREQUEST,
output_type=google_dot_protobuf_dot_empty__pb2._EMPTY,
serialized_options=_b(
- '\202\323\344\223\0027"2/v1beta1/{name=projects/*/evaluationJobs/*}:resume:\001*'
+ '\202\323\344\223\0027"2/v1beta1/{name=projects/*/evaluationJobs/*}:resume:\001*\332A\004name'
),
),
_descriptor.MethodDescriptor(
@@ -4820,7 +5004,7 @@
input_type=_DELETEEVALUATIONJOBREQUEST,
output_type=google_dot_protobuf_dot_empty__pb2._EMPTY,
serialized_options=_b(
- "\202\323\344\223\002-*+/v1beta1/{name=projects/*/evaluationJobs/*}"
+ "\202\323\344\223\002-*+/v1beta1/{name=projects/*/evaluationJobs/*}\332A\004name"
),
),
_descriptor.MethodDescriptor(
@@ -4831,7 +5015,7 @@
input_type=_LISTEVALUATIONJOBSREQUEST,
output_type=_LISTEVALUATIONJOBSRESPONSE,
serialized_options=_b(
- "\202\323\344\223\002-\022+/v1beta1/{parent=projects/*}/evaluationJobs"
+ "\202\323\344\223\002-\022+/v1beta1/{parent=projects/*}/evaluationJobs\332A\rparent,filter"
),
),
],
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/proto/data_labeling_service_pb2_grpc.py b/datalabeling/google/cloud/datalabeling_v1beta1/proto/data_labeling_service_pb2_grpc.py
index 679841fb13e9..0fd76723ce2f 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/proto/data_labeling_service_pb2_grpc.py
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/proto/data_labeling_service_pb2_grpc.py
@@ -389,24 +389,24 @@ def DeleteInstruction(self, request, context):
raise NotImplementedError("Method not implemented!")
def GetEvaluation(self, request, context):
- """Gets an evaluation by resource name.
+ """Gets an evaluation by resource name (to search, use
+ [projects.evaluations.search][google.cloud.datalabeling.v1beta1.DataLabelingService.SearchEvaluations]).
"""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def SearchEvaluations(self, request, context):
- """Searchs evaluations within a project. Supported filter: evaluation_job,
- evaluation_time.
+ """Searches [evaluations][google.cloud.datalabeling.v1beta1.Evaluation] within a project.
"""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def SearchExampleComparisons(self, request, context):
- """Searchs example comparisons in evaluation, in format of examples
- of both ground truth and prediction(s). It is represented as a search with
- evaluation id.
+ """Searches example comparisons from an evaluation. The return format is a
+ list of example comparisons that show ground truth and prediction(s) for
+ a single input. Search by providing an evaluation ID.
"""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
@@ -420,7 +420,12 @@ def CreateEvaluationJob(self, request, context):
raise NotImplementedError("Method not implemented!")
def UpdateEvaluationJob(self, request, context):
- """Updates an evaluation job.
+ """Updates an evaluation job. You can only update certain fields of the job's
+ [EvaluationJobConfig][google.cloud.datalabeling.v1beta1.EvaluationJobConfig]: `humanAnnotationConfig.instruction`,
+ `exampleCount`, and `exampleSamplePercentage`.
+
+ If you want to change any other aspect of the evaluation job, you must
+ delete the job and create a new one.
"""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
@@ -434,16 +439,16 @@ def GetEvaluationJob(self, request, context):
raise NotImplementedError("Method not implemented!")
def PauseEvaluationJob(self, request, context):
- """Pauses an evaluation job. Pausing a evaluation job that is already in
- PAUSED state will be a no-op.
+ """Pauses an evaluation job. Pausing an evaluation job that is already in a
+ `PAUSED` state is a no-op.
"""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
raise NotImplementedError("Method not implemented!")
def ResumeEvaluationJob(self, request, context):
- """Resumes a paused evaluation job. Deleted evaluation job can't be resumed.
- Resuming a running evaluation job will be a no-op.
+ """Resumes a paused evaluation job. A deleted evaluation job can't be resumed.
+ Resuming a running or scheduled evaluation job is a no-op.
"""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details("Method not implemented!")
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/proto/dataset.proto b/datalabeling/google/cloud/datalabeling_v1beta1/proto/dataset.proto
index 02117c94dde6..a0bc9a433f4c 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/proto/dataset.proto
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/proto/dataset.proto
@@ -18,7 +18,9 @@ syntax = "proto3";
package google.cloud.datalabeling.v1beta1;
import "google/api/annotations.proto";
+import "google/api/resource.proto";
import "google/cloud/datalabeling/v1beta1/annotation.proto";
+import "google/cloud/datalabeling/v1beta1/annotation_spec_set.proto";
import "google/cloud/datalabeling/v1beta1/data_payloads.proto";
import "google/cloud/datalabeling/v1beta1/human_annotation_config.proto";
import "google/protobuf/timestamp.proto";
@@ -30,18 +32,26 @@ option java_package = "com.google.cloud.datalabeling.v1beta1";
enum DataType {
DATA_TYPE_UNSPECIFIED = 0;
+ // Allowed for continuous evaluation.
IMAGE = 1;
VIDEO = 2;
+ // Allowed for continuous evaluation.
TEXT = 4;
+ // Allowed for continuous evaluation.
GENERAL_DATA = 6;
}
// Dataset is the resource to hold your data. You can request multiple labeling
// tasks for a dataset while each one will generate an AnnotatedDataset.
message Dataset {
+ option (google.api.resource) = {
+ type: "datalabeling.googleapis.com/Dataset"
+ pattern: "projects/{project}/datasets/{dataset}"
+ };
+
// Output only. Dataset resource name, format is:
// projects/{project_id}/datasets/{dataset_id}
string name = 1;
@@ -82,20 +92,22 @@ message InputConfig {
// Source located in Cloud Storage.
GcsSource gcs_source = 2;
+ // Source located in BigQuery. You must specify this field if you are using
+ // this InputConfig in an [EvaluationJob][google.cloud.datalabeling.v1beta1.EvaluationJob].
BigQuerySource bigquery_source = 5;
}
// Required. Data type must be specifed when user tries to import data.
DataType data_type = 1;
- // Optional. If input contains annotation, user needs to specify the
- // type and metadata of the annotation when creating it as an annotated
- // dataset.
+ // Optional. The type of annotation to be performed on this data. You must
+ // specify this field if you are using this InputConfig in an
+ // [EvaluationJob][google.cloud.datalabeling.v1beta1.EvaluationJob].
AnnotationType annotation_type = 3;
- // Optional. Metadata about annotations in the input. Each annotation type may
- // have different metadata.
- // Metadata for classification problem.
+ // Optional. Metadata about annotations for the input. You must specify this
+ // field if you are using this InputConfig in an [EvaluationJob][google.cloud.datalabeling.v1beta1.EvaluationJob] for a
+ // model version that performs classification.
ClassificationMetadata classification_metadata = 4;
}
@@ -123,10 +135,24 @@ message GcsSource {
string mime_type = 2;
}
-// The BigQuery location for the input content.
+// The BigQuery location for input data. If used in an [EvaluationJob][google.cloud.datalabeling.v1beta1.EvaluationJob], this
+// is where the service saves the prediction input and output sampled from the
+// model version.
message BigQuerySource {
- // Required. BigQuery URI to a table, up to 2000 characters long.
- // Accepted forms: BigQuery gs path e.g. bq://projectId.bqDatasetId.bqTableId
+ // Required. BigQuery URI to a table, up to 2,000 characters long. If you
+ // specify the URI of a table that does not exist, Data Labeling Service
+ // creates a table at the URI with the correct schema when you create your
+ // [EvaluationJob][google.cloud.datalabeling.v1beta1.EvaluationJob]. If you specify the URI of a table that already exists,
+ // it must have the
+ // [correct
+ // schema](/ml-engine/docs/continuous-evaluation/create-job#table-schema).
+ //
+ // Provide the table URI in the following format:
+ //
+ // "bq://{your_project_id}/{your_dataset_name}/{your_table_name}"
+ //
+ // [Learn
+ // more](/ml-engine/docs/continuous-evaluation/create-job#table-schema).
string input_uri = 1;
}
@@ -164,6 +190,11 @@ message GcsFolderDestination {
// DataItem is a piece of data, without annotation. For example, an image.
message DataItem {
+ option (google.api.resource) = {
+ type: "datalabeling.googleapis.com/DataItem"
+ pattern: "projects/{project}/datasets/{dataset}/dataItems/{data_item}"
+ };
+
// Output only.
oneof payload {
// The image payload, a container of the image bytes/uri.
@@ -185,6 +216,11 @@ message DataItem {
// labeling task will generate an AnnotatedDataset under the Dataset that the
// task is requested for.
message AnnotatedDataset {
+ option (google.api.resource) = {
+ type: "datalabeling.googleapis.com/AnnotatedDataset"
+ pattern: "projects/{project}/datasets/{dataset}/annotatedDatasets/{annotated_dataset}"
+ };
+
// Output only. AnnotatedDataset resource name in format of:
// projects/{project_id}/datasets/{dataset_id}/annotatedDatasets/
// {annotated_dataset_id}
@@ -281,6 +317,11 @@ message AnnotatedDatasetMetadata {
// An Example is a piece of data and its annotation. For example, an image with
// label "house".
message Example {
+ option (google.api.resource) = {
+ type: "datalabeling.googleapis.com/Example"
+ pattern: "projects/{project}/datasets/{dataset}/annotatedDatasets/{annotated_dataset}/examples/{example}"
+ };
+
// Output only. The data part of Example.
oneof payload {
// The image payload, a container of the image bytes/uri.
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/proto/dataset_pb2.py b/datalabeling/google/cloud/datalabeling_v1beta1/proto/dataset_pb2.py
index a983254ed40d..8f798fa61518 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/proto/dataset_pb2.py
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/proto/dataset_pb2.py
@@ -17,9 +17,13 @@
from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
+from google.api import resource_pb2 as google_dot_api_dot_resource__pb2
from google.cloud.datalabeling_v1beta1.proto import (
annotation_pb2 as google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_annotation__pb2,
)
+from google.cloud.datalabeling_v1beta1.proto import (
+ annotation_spec_set_pb2 as google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_annotation__spec__set__pb2,
+)
from google.cloud.datalabeling_v1beta1.proto import (
data_payloads_pb2 as google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_data__payloads__pb2,
)
@@ -37,11 +41,13 @@
"\n%com.google.cloud.datalabeling.v1beta1P\001ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabeling"
),
serialized_pb=_b(
- '\n5google/cloud/datalabeling_v1beta1/proto/dataset.proto\x12!google.cloud.datalabeling.v1beta1\x1a\x1cgoogle/api/annotations.proto\x1a\x38google/cloud/datalabeling_v1beta1/proto/annotation.proto\x1a;google/cloud/datalabeling_v1beta1/proto/data_payloads.proto\x1a\x45google/cloud/datalabeling_v1beta1/proto/human_annotation_config.proto\x1a\x1fgoogle/protobuf/timestamp.proto"\xef\x01\n\x07\x44\x61taset\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12/\n\x0b\x63reate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x45\n\rinput_configs\x18\x05 \x03(\x0b\x32..google.cloud.datalabeling.v1beta1.InputConfig\x12\x1a\n\x12\x62locking_resources\x18\x06 \x03(\t\x12\x17\n\x0f\x64\x61ta_item_count\x18\x07 \x01(\x03"\xf1\x03\n\x0bInputConfig\x12H\n\rtext_metadata\x18\x06 \x01(\x0b\x32/.google.cloud.datalabeling.v1beta1.TextMetadataH\x00\x12\x42\n\ngcs_source\x18\x02 \x01(\x0b\x32,.google.cloud.datalabeling.v1beta1.GcsSourceH\x01\x12L\n\x0f\x62igquery_source\x18\x05 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.BigQuerySourceH\x01\x12>\n\tdata_type\x18\x01 \x01(\x0e\x32+.google.cloud.datalabeling.v1beta1.DataType\x12J\n\x0f\x61nnotation_type\x18\x03 \x01(\x0e\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationType\x12Z\n\x17\x63lassification_metadata\x18\x04 \x01(\x0b\x32\x39.google.cloud.datalabeling.v1beta1.ClassificationMetadataB\x14\n\x12\x64\x61ta_type_metadataB\x08\n\x06source"%\n\x0cTextMetadata\x12\x15\n\rlanguage_code\x18\x01 \x01(\t"0\n\x16\x43lassificationMetadata\x12\x16\n\x0eis_multi_label\x18\x01 \x01(\x08"1\n\tGcsSource\x12\x11\n\tinput_uri\x18\x01 \x01(\t\x12\x11\n\tmime_type\x18\x02 \x01(\t"#\n\x0e\x42igQuerySource\x12\x11\n\tinput_uri\x18\x01 \x01(\t"\xc6\x01\n\x0cOutputConfig\x12L\n\x0fgcs_destination\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.GcsDestinationH\x00\x12Y\n\x16gcs_folder_destination\x18\x02 \x01(\x0b\x32\x37.google.cloud.datalabeling.v1beta1.GcsFolderDestinationH\x00\x42\r\n\x0b\x64\x65stination"7\n\x0eGcsDestination\x12\x12\n\noutput_uri\x18\x01 \x01(\t\x12\x11\n\tmime_type\x18\x02 \x01(\t"1\n\x14GcsFolderDestination\x12\x19\n\x11output_folder_uri\x18\x01 \x01(\t"\xff\x01\n\x08\x44\x61taItem\x12H\n\rimage_payload\x18\x02 \x01(\x0b\x32/.google.cloud.datalabeling.v1beta1.ImagePayloadH\x00\x12\x46\n\x0ctext_payload\x18\x03 \x01(\x0b\x32..google.cloud.datalabeling.v1beta1.TextPayloadH\x00\x12H\n\rvideo_payload\x18\x04 \x01(\x0b\x32/.google.cloud.datalabeling.v1beta1.VideoPayloadH\x00\x12\x0c\n\x04name\x18\x01 \x01(\tB\t\n\x07payload"\xff\x03\n\x10\x41nnotatedDataset\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\t \x01(\t\x12N\n\x11\x61nnotation_source\x18\x03 \x01(\x0e\x32\x33.google.cloud.datalabeling.v1beta1.AnnotationSource\x12J\n\x0f\x61nnotation_type\x18\x08 \x01(\x0e\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationType\x12\x15\n\rexample_count\x18\x04 \x01(\x03\x12\x1f\n\x17\x63ompleted_example_count\x18\x05 \x01(\x03\x12\x42\n\x0blabel_stats\x18\x06 \x01(\x0b\x32-.google.cloud.datalabeling.v1beta1.LabelStats\x12/\n\x0b\x63reate_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12M\n\x08metadata\x18\n \x01(\x0b\x32;.google.cloud.datalabeling.v1beta1.AnnotatedDatasetMetadata\x12\x1a\n\x12\x62locking_resources\x18\x0b \x03(\t"\x99\x01\n\nLabelStats\x12V\n\rexample_count\x18\x01 \x03(\x0b\x32?.google.cloud.datalabeling.v1beta1.LabelStats.ExampleCountEntry\x1a\x33\n\x11\x45xampleCountEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x03:\x02\x38\x01"\xa2\x08\n\x18\x41nnotatedDatasetMetadata\x12\x63\n\x1bimage_classification_config\x18\x02 \x01(\x0b\x32<.google.cloud.datalabeling.v1beta1.ImageClassificationConfigH\x00\x12U\n\x14\x62ounding_poly_config\x18\x03 \x01(\x0b\x32\x35.google.cloud.datalabeling.v1beta1.BoundingPolyConfigH\x00\x12L\n\x0fpolyline_config\x18\x04 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.PolylineConfigH\x00\x12T\n\x13segmentation_config\x18\x05 \x01(\x0b\x32\x35.google.cloud.datalabeling.v1beta1.SegmentationConfigH\x00\x12\x63\n\x1bvideo_classification_config\x18\x06 \x01(\x0b\x32<.google.cloud.datalabeling.v1beta1.VideoClassificationConfigH\x00\x12[\n\x17object_detection_config\x18\x07 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.ObjectDetectionConfigH\x00\x12Y\n\x16object_tracking_config\x18\x08 \x01(\x0b\x32\x37.google.cloud.datalabeling.v1beta1.ObjectTrackingConfigH\x00\x12\x46\n\x0c\x65vent_config\x18\t \x01(\x0b\x32..google.cloud.datalabeling.v1beta1.EventConfigH\x00\x12\x61\n\x1atext_classification_config\x18\n \x01(\x0b\x32;.google.cloud.datalabeling.v1beta1.TextClassificationConfigH\x00\x12\x66\n\x1dtext_entity_extraction_config\x18\x0b \x01(\x0b\x32=.google.cloud.datalabeling.v1beta1.TextEntityExtractionConfigH\x00\x12Y\n\x17human_annotation_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfigB\x1b\n\x19\x61nnotation_request_config"\xc2\x02\n\x07\x45xample\x12H\n\rimage_payload\x18\x02 \x01(\x0b\x32/.google.cloud.datalabeling.v1beta1.ImagePayloadH\x00\x12\x46\n\x0ctext_payload\x18\x06 \x01(\x0b\x32..google.cloud.datalabeling.v1beta1.TextPayloadH\x00\x12H\n\rvideo_payload\x18\x07 \x01(\x0b\x32/.google.cloud.datalabeling.v1beta1.VideoPayloadH\x00\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x42\n\x0b\x61nnotations\x18\x05 \x03(\x0b\x32-.google.cloud.datalabeling.v1beta1.AnnotationB\t\n\x07payload*W\n\x08\x44\x61taType\x12\x19\n\x15\x44\x41TA_TYPE_UNSPECIFIED\x10\x00\x12\t\n\x05IMAGE\x10\x01\x12\t\n\x05VIDEO\x10\x02\x12\x08\n\x04TEXT\x10\x04\x12\x10\n\x0cGENERAL_DATA\x10\x06\x42x\n%com.google.cloud.datalabeling.v1beta1P\x01ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabelingb\x06proto3'
+ '\n5google/cloud/datalabeling_v1beta1/proto/dataset.proto\x12!google.cloud.datalabeling.v1beta1\x1a\x1cgoogle/api/annotations.proto\x1a\x19google/api/resource.proto\x1a\x38google/cloud/datalabeling_v1beta1/proto/annotation.proto\x1a\x41google/cloud/datalabeling_v1beta1/proto/annotation_spec_set.proto\x1a;google/cloud/datalabeling_v1beta1/proto/data_payloads.proto\x1a\x45google/cloud/datalabeling_v1beta1/proto/human_annotation_config.proto\x1a\x1fgoogle/protobuf/timestamp.proto"\xc0\x02\n\x07\x44\x61taset\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12/\n\x0b\x63reate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x45\n\rinput_configs\x18\x05 \x03(\x0b\x32..google.cloud.datalabeling.v1beta1.InputConfig\x12\x1a\n\x12\x62locking_resources\x18\x06 \x03(\t\x12\x17\n\x0f\x64\x61ta_item_count\x18\x07 \x01(\x03:O\xea\x41L\n#datalabeling.googleapis.com/Dataset\x12%projects/{project}/datasets/{dataset}"\xf1\x03\n\x0bInputConfig\x12H\n\rtext_metadata\x18\x06 \x01(\x0b\x32/.google.cloud.datalabeling.v1beta1.TextMetadataH\x00\x12\x42\n\ngcs_source\x18\x02 \x01(\x0b\x32,.google.cloud.datalabeling.v1beta1.GcsSourceH\x01\x12L\n\x0f\x62igquery_source\x18\x05 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.BigQuerySourceH\x01\x12>\n\tdata_type\x18\x01 \x01(\x0e\x32+.google.cloud.datalabeling.v1beta1.DataType\x12J\n\x0f\x61nnotation_type\x18\x03 \x01(\x0e\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationType\x12Z\n\x17\x63lassification_metadata\x18\x04 \x01(\x0b\x32\x39.google.cloud.datalabeling.v1beta1.ClassificationMetadataB\x14\n\x12\x64\x61ta_type_metadataB\x08\n\x06source"%\n\x0cTextMetadata\x12\x15\n\rlanguage_code\x18\x01 \x01(\t"0\n\x16\x43lassificationMetadata\x12\x16\n\x0eis_multi_label\x18\x01 \x01(\x08"1\n\tGcsSource\x12\x11\n\tinput_uri\x18\x01 \x01(\t\x12\x11\n\tmime_type\x18\x02 \x01(\t"#\n\x0e\x42igQuerySource\x12\x11\n\tinput_uri\x18\x01 \x01(\t"\xc6\x01\n\x0cOutputConfig\x12L\n\x0fgcs_destination\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.GcsDestinationH\x00\x12Y\n\x16gcs_folder_destination\x18\x02 \x01(\x0b\x32\x37.google.cloud.datalabeling.v1beta1.GcsFolderDestinationH\x00\x42\r\n\x0b\x64\x65stination"7\n\x0eGcsDestination\x12\x12\n\noutput_uri\x18\x01 \x01(\t\x12\x11\n\tmime_type\x18\x02 \x01(\t"1\n\x14GcsFolderDestination\x12\x19\n\x11output_folder_uri\x18\x01 \x01(\t"\xe7\x02\n\x08\x44\x61taItem\x12H\n\rimage_payload\x18\x02 \x01(\x0b\x32/.google.cloud.datalabeling.v1beta1.ImagePayloadH\x00\x12\x46\n\x0ctext_payload\x18\x03 \x01(\x0b\x32..google.cloud.datalabeling.v1beta1.TextPayloadH\x00\x12H\n\rvideo_payload\x18\x04 \x01(\x0b\x32/.google.cloud.datalabeling.v1beta1.VideoPayloadH\x00\x12\x0c\n\x04name\x18\x01 \x01(\t:f\xea\x41\x63\n$datalabeling.googleapis.com/DataItem\x12;projects/{project}/datasets/{dataset}/dataItems/{data_item}B\t\n\x07payload"\xff\x04\n\x10\x41nnotatedDataset\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\t \x01(\t\x12N\n\x11\x61nnotation_source\x18\x03 \x01(\x0e\x32\x33.google.cloud.datalabeling.v1beta1.AnnotationSource\x12J\n\x0f\x61nnotation_type\x18\x08 \x01(\x0e\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationType\x12\x15\n\rexample_count\x18\x04 \x01(\x03\x12\x1f\n\x17\x63ompleted_example_count\x18\x05 \x01(\x03\x12\x42\n\x0blabel_stats\x18\x06 \x01(\x0b\x32-.google.cloud.datalabeling.v1beta1.LabelStats\x12/\n\x0b\x63reate_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12M\n\x08metadata\x18\n \x01(\x0b\x32;.google.cloud.datalabeling.v1beta1.AnnotatedDatasetMetadata\x12\x1a\n\x12\x62locking_resources\x18\x0b \x03(\t:~\xea\x41{\n,datalabeling.googleapis.com/AnnotatedDataset\x12Kprojects/{project}/datasets/{dataset}/annotatedDatasets/{annotated_dataset}"\x99\x01\n\nLabelStats\x12V\n\rexample_count\x18\x01 \x03(\x0b\x32?.google.cloud.datalabeling.v1beta1.LabelStats.ExampleCountEntry\x1a\x33\n\x11\x45xampleCountEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x03:\x02\x38\x01"\xa2\x08\n\x18\x41nnotatedDatasetMetadata\x12\x63\n\x1bimage_classification_config\x18\x02 \x01(\x0b\x32<.google.cloud.datalabeling.v1beta1.ImageClassificationConfigH\x00\x12U\n\x14\x62ounding_poly_config\x18\x03 \x01(\x0b\x32\x35.google.cloud.datalabeling.v1beta1.BoundingPolyConfigH\x00\x12L\n\x0fpolyline_config\x18\x04 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.PolylineConfigH\x00\x12T\n\x13segmentation_config\x18\x05 \x01(\x0b\x32\x35.google.cloud.datalabeling.v1beta1.SegmentationConfigH\x00\x12\x63\n\x1bvideo_classification_config\x18\x06 \x01(\x0b\x32<.google.cloud.datalabeling.v1beta1.VideoClassificationConfigH\x00\x12[\n\x17object_detection_config\x18\x07 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.ObjectDetectionConfigH\x00\x12Y\n\x16object_tracking_config\x18\x08 \x01(\x0b\x32\x37.google.cloud.datalabeling.v1beta1.ObjectTrackingConfigH\x00\x12\x46\n\x0c\x65vent_config\x18\t \x01(\x0b\x32..google.cloud.datalabeling.v1beta1.EventConfigH\x00\x12\x61\n\x1atext_classification_config\x18\n \x01(\x0b\x32;.google.cloud.datalabeling.v1beta1.TextClassificationConfigH\x00\x12\x66\n\x1dtext_entity_extraction_config\x18\x0b \x01(\x0b\x32=.google.cloud.datalabeling.v1beta1.TextEntityExtractionConfigH\x00\x12Y\n\x17human_annotation_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfigB\x1b\n\x19\x61nnotation_request_config"\xce\x03\n\x07\x45xample\x12H\n\rimage_payload\x18\x02 \x01(\x0b\x32/.google.cloud.datalabeling.v1beta1.ImagePayloadH\x00\x12\x46\n\x0ctext_payload\x18\x06 \x01(\x0b\x32..google.cloud.datalabeling.v1beta1.TextPayloadH\x00\x12H\n\rvideo_payload\x18\x07 \x01(\x0b\x32/.google.cloud.datalabeling.v1beta1.VideoPayloadH\x00\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x42\n\x0b\x61nnotations\x18\x05 \x03(\x0b\x32-.google.cloud.datalabeling.v1beta1.Annotation:\x89\x01\xea\x41\x85\x01\n#datalabeling.googleapis.com/Example\x12^projects/{project}/datasets/{dataset}/annotatedDatasets/{annotated_dataset}/examples/{example}B\t\n\x07payload*W\n\x08\x44\x61taType\x12\x19\n\x15\x44\x41TA_TYPE_UNSPECIFIED\x10\x00\x12\t\n\x05IMAGE\x10\x01\x12\t\n\x05VIDEO\x10\x02\x12\x08\n\x04TEXT\x10\x04\x12\x10\n\x0cGENERAL_DATA\x10\x06\x42x\n%com.google.cloud.datalabeling.v1beta1P\x01ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabelingb\x06proto3'
),
dependencies=[
google_dot_api_dot_annotations__pb2.DESCRIPTOR,
+ google_dot_api_dot_resource__pb2.DESCRIPTOR,
google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_annotation__pb2.DESCRIPTOR,
+ google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_annotation__spec__set__pb2.DESCRIPTOR,
google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_data__payloads__pb2.DESCRIPTOR,
google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_human__annotation__config__pb2.DESCRIPTOR,
google_dot_protobuf_dot_timestamp__pb2.DESCRIPTOR,
@@ -76,8 +82,8 @@
],
containing_type=None,
serialized_options=None,
- serialized_start=3887,
- serialized_end=3974,
+ serialized_start=4434,
+ serialized_end=4521,
)
_sym_db.RegisterEnumDescriptor(_DATATYPE)
@@ -226,13 +232,15 @@
extensions=[],
nested_types=[],
enum_types=[],
- serialized_options=None,
+ serialized_options=_b(
+ "\352AL\n#datalabeling.googleapis.com/Dataset\022%projects/{project}/datasets/{dataset}"
+ ),
is_extendable=False,
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=346,
- serialized_end=585,
+ serialized_start=440,
+ serialized_end=760,
)
@@ -375,8 +383,8 @@
fields=[],
),
],
- serialized_start=588,
- serialized_end=1085,
+ serialized_start=763,
+ serialized_end=1260,
)
@@ -414,8 +422,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1087,
- serialized_end=1124,
+ serialized_start=1262,
+ serialized_end=1299,
)
@@ -453,8 +461,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1126,
- serialized_end=1174,
+ serialized_start=1301,
+ serialized_end=1349,
)
@@ -510,8 +518,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1176,
- serialized_end=1225,
+ serialized_start=1351,
+ serialized_end=1400,
)
@@ -549,8 +557,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1227,
- serialized_end=1262,
+ serialized_start=1402,
+ serialized_end=1437,
)
@@ -614,8 +622,8 @@
fields=[],
)
],
- serialized_start=1265,
- serialized_end=1463,
+ serialized_start=1440,
+ serialized_end=1638,
)
@@ -671,8 +679,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1465,
- serialized_end=1520,
+ serialized_start=1640,
+ serialized_end=1695,
)
@@ -710,8 +718,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1522,
- serialized_end=1571,
+ serialized_start=1697,
+ serialized_end=1746,
)
@@ -798,7 +806,9 @@
extensions=[],
nested_types=[],
enum_types=[],
- serialized_options=None,
+ serialized_options=_b(
+ "\352Ac\n$datalabeling.googleapis.com/DataItem\022;projects/{project}/datasets/{dataset}/dataItems/{data_item}"
+ ),
is_extendable=False,
syntax="proto3",
extension_ranges=[],
@@ -811,8 +821,8 @@
fields=[],
)
],
- serialized_start=1574,
- serialized_end=1829,
+ serialized_start=1749,
+ serialized_end=2108,
)
@@ -1025,13 +1035,15 @@
extensions=[],
nested_types=[],
enum_types=[],
- serialized_options=None,
+ serialized_options=_b(
+ "\352A{\n,datalabeling.googleapis.com/AnnotatedDataset\022Kprojects/{project}/datasets/{dataset}/annotatedDatasets/{annotated_dataset}"
+ ),
is_extendable=False,
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1832,
- serialized_end=2343,
+ serialized_start=2111,
+ serialized_end=2750,
)
@@ -1087,8 +1099,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=2448,
- serialized_end=2499,
+ serialized_start=2855,
+ serialized_end=2906,
)
_LABELSTATS = _descriptor.Descriptor(
@@ -1125,8 +1137,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=2346,
- serialized_end=2499,
+ serialized_start=2753,
+ serialized_end=2906,
)
@@ -1352,8 +1364,8 @@
fields=[],
)
],
- serialized_start=2502,
- serialized_end=3560,
+ serialized_start=2909,
+ serialized_end=3967,
)
@@ -1458,7 +1470,9 @@
extensions=[],
nested_types=[],
enum_types=[],
- serialized_options=None,
+ serialized_options=_b(
+ "\352A\205\001\n#datalabeling.googleapis.com/Example\022^projects/{project}/datasets/{dataset}/annotatedDatasets/{annotated_dataset}/examples/{example}"
+ ),
is_extendable=False,
syntax="proto3",
extension_ranges=[],
@@ -1471,8 +1485,8 @@
fields=[],
)
],
- serialized_start=3563,
- serialized_end=3885,
+ serialized_start=3970,
+ serialized_end=4432,
)
_DATASET.fields_by_name[
@@ -1771,8 +1785,8 @@
dict(
DESCRIPTOR=_DATASET,
__module__="google.cloud.datalabeling_v1beta1.proto.dataset_pb2",
- __doc__="""Dataset is the resource to hold your data. You can request multiple
- labeling tasks for a dataset while each one will generate an
+ __doc__="""Dataset is the resource to hold your data. You can request
+ multiple labeling tasks for a dataset while each one will generate an
AnnotatedDataset.
@@ -1810,7 +1824,8 @@
dict(
DESCRIPTOR=_INPUTCONFIG,
__module__="google.cloud.datalabeling_v1beta1.proto.dataset_pb2",
- __doc__="""The configuration of input data, including data type, location, etc.
+ __doc__="""The configuration of input data, including data type,
+ location, etc.
Attributes:
@@ -1822,17 +1837,23 @@
Required. Where the data is from.
gcs_source:
Source located in Cloud Storage.
+ bigquery_source:
+ Source located in BigQuery. You must specify this field if you
+ are using this InputConfig in an [EvaluationJob][google.cloud.
+ datalabeling.v1beta1.EvaluationJob].
data_type:
Required. Data type must be specifed when user tries to import
data.
annotation_type:
- Optional. If input contains annotation, user needs to specify
- the type and metadata of the annotation when creating it as an
- annotated dataset.
+ Optional. The type of annotation to be performed on this data.
+ You must specify this field if you are using this InputConfig
+ in an [EvaluationJob][google.cloud.datalabeling.v1beta1.Evalua
+ tionJob].
classification_metadata:
- Optional. Metadata about annotations in the input. Each
- annotation type may have different metadata. Metadata for
- classification problem.
+ Optional. Metadata about annotations for the input. You must
+ specify this field if you are using this InputConfig in an [Ev
+ aluationJob][google.cloud.datalabeling.v1beta1.EvaluationJob]
+ for a model version that performs classification.
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.InputConfig)
),
@@ -1904,14 +1925,25 @@
dict(
DESCRIPTOR=_BIGQUERYSOURCE,
__module__="google.cloud.datalabeling_v1beta1.proto.dataset_pb2",
- __doc__="""The BigQuery location for the input content.
+ __doc__="""The BigQuery location for input data. If used in an
+ [EvaluationJob][google.cloud.datalabeling.v1beta1.EvaluationJob], this
+ is where the service saves the prediction input and output sampled from
+ the model version.
Attributes:
input_uri:
- Required. BigQuery URI to a table, up to 2000 characters long.
- Accepted forms: BigQuery gs path e.g.
- bq://projectId.bqDatasetId.bqTableId
+ Required. BigQuery URI to a table, up to 2,000 characters
+ long. If you specify the URI of a table that does not exist,
+ Data Labeling Service creates a table at the URI with the
+ correct schema when you create your [EvaluationJob][google.clo
+ ud.datalabeling.v1beta1.EvaluationJob]. If you specify the URI
+ of a table that already exists, it must have the `correct
+ schema `__. Provide the table URI in the following
+ format: "bq://{your\_project\_id}/{your\_dataset\_name}/{your
+ \_table\_name}" `Learn more `__.
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.BigQuerySource)
),
@@ -1948,7 +1980,8 @@
dict(
DESCRIPTOR=_GCSDESTINATION,
__module__="google.cloud.datalabeling_v1beta1.proto.dataset_pb2",
- __doc__="""Export destination of the data.Only gcs path is allowed in output\_uri.
+ __doc__="""Export destination of the data.Only gcs path is allowed in
+ output\_uri.
Attributes:
@@ -1987,7 +2020,8 @@
dict(
DESCRIPTOR=_DATAITEM,
__module__="google.cloud.datalabeling_v1beta1.proto.dataset_pb2",
- __doc__="""DataItem is a piece of data, without annotation. For example, an image.
+ __doc__="""DataItem is a piece of data, without annotation. For
+ example, an image.
Attributes:
@@ -2014,9 +2048,9 @@
dict(
DESCRIPTOR=_ANNOTATEDDATASET,
__module__="google.cloud.datalabeling_v1beta1.proto.dataset_pb2",
- __doc__="""AnnotatedDataset is a set holding annotations for data in a Dataset.
- Each labeling task will generate an AnnotatedDataset under the Dataset
- that the task is requested for.
+ __doc__="""AnnotatedDataset is a set holding annotations for data in
+ a Dataset. Each labeling task will generate an AnnotatedDataset under
+ the Dataset that the task is requested for.
Attributes:
@@ -2137,8 +2171,8 @@
dict(
DESCRIPTOR=_EXAMPLE,
__module__="google.cloud.datalabeling_v1beta1.proto.dataset_pb2",
- __doc__="""An Example is a piece of data and its annotation. For example, an image
- with label "house".
+ __doc__="""An Example is a piece of data and its annotation. For
+ example, an image with label "house".
Attributes:
@@ -2165,5 +2199,9 @@
DESCRIPTOR._options = None
+_DATASET._options = None
+_DATAITEM._options = None
+_ANNOTATEDDATASET._options = None
_LABELSTATS_EXAMPLECOUNTENTRY._options = None
+_EXAMPLE._options = None
# @@protoc_insertion_point(module_scope)
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/proto/evaluation.proto b/datalabeling/google/cloud/datalabeling_v1beta1/proto/evaluation.proto
index ad1e975a30b2..fde0366d31dc 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/proto/evaluation.proto
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/proto/evaluation.proto
@@ -18,6 +18,7 @@ syntax = "proto3";
package google.cloud.datalabeling.v1beta1;
import "google/api/annotations.proto";
+import "google/api/resource.proto";
import "google/cloud/datalabeling/v1beta1/annotation.proto";
import "google/cloud/datalabeling/v1beta1/annotation_spec_set.proto";
import "google/protobuf/timestamp.proto";
@@ -26,51 +27,72 @@ option go_package = "google.golang.org/genproto/googleapis/cloud/datalabeling/v1
option java_multiple_files = true;
option java_package = "com.google.cloud.datalabeling.v1beta1";
-// Describes an evaluation between 2 annotated datasets. Created by an
-// evaluation plan.
+// Describes an evaluation between a machine learning model's predictions and
+// ground truth labels. Created when an [EvaluationJob][google.cloud.datalabeling.v1beta1.EvaluationJob] runs successfully.
message Evaluation {
- // Resource name of an evaluation.
- // Format:
- // 'projects/{project_id}/datasets/{dataset_id}/evaluations/{evaluation_id}'
+ option (google.api.resource) = {
+ type: "datalabeling.googleapis.com/Evaluation"
+ pattern: "projects/{project}/datasets/{dataset}/evaluations/{evaluation}"
+ };
+
+ // Output only. Resource name of an evaluation. The name has the following
+ // format:
+ //
+ // "projects/{project_id}/datasets/{dataset_id}/evaluations/{evaluation_id}'
string name = 1;
- // Options used in evaluation plan for creating the evaluation.
+ // Output only. Options used in the evaluation job that created this
+ // evaluation.
EvaluationConfig config = 2;
- // Output only. Timestamp when the evaluation plan triggered this evaluation
- // flow.
+ // Output only. Timestamp for when the evaluation job that created this
+ // evaluation ran.
google.protobuf.Timestamp evaluation_job_run_time = 3;
- // Output only. Timestamp when this model evaluation was created.
+ // Output only. Timestamp for when this evaluation was created.
google.protobuf.Timestamp create_time = 4;
- // Output only. Metrics of the evaluation.
+ // Output only. Metrics comparing predictions to ground truth labels.
EvaluationMetrics evaluation_metrics = 5;
- // Type of the annotation to compute metrics for in the groundtruth and
- // annotation labeled dataset. Required for creation.
+ // Output only. Type of task that the model version being evaluated performs,
+ // as defined in the
+ //
+ // [evaluationJobConfig.inputConfig.annotationType][google.cloud.datalabeling.v1beta1.EvaluationJobConfig.input_config]
+ // field of the evaluation job that created this evaluation.
AnnotationType annotation_type = 6;
- // Output only. Count of items in groundtruth dataset included in this
- // evaluation. Will be unset if annotation type is not applicable.
+ // Output only. The number of items in the ground truth dataset that were used
+ // for this evaluation. Only populated when the evaulation is for certain
+ // AnnotationTypes.
int64 evaluated_item_count = 7;
}
+// Configuration details used for calculating evaluation metrics and creating an
+// [Evaluation][google.cloud.datalabeling.v1beta1.Evaluation].
message EvaluationConfig {
// Vertical specific options for general metrics.
oneof vertical_option {
+ // Only specify this field if the related model performs image object
+ // detection (`IMAGE_BOUNDING_BOX_ANNOTATION`). Describes how to evaluate
+ // bounding boxes.
BoundingBoxEvaluationOptions bounding_box_evaluation_options = 1;
}
}
// Options regarding evaluation between bounding boxes.
message BoundingBoxEvaluationOptions {
- // Minimize IoU required to consider 2 bounding boxes are matched.
+ // Minimum
+ // [intersection-over-union
+ //
+ // (IOU)](/vision/automl/object-detection/docs/evaluate#intersection-over-union)
+ // required for 2 bounding boxes to be considered a match. This must be a
+ // number between 0 and 1.
float iou_threshold = 1;
}
message EvaluationMetrics {
- // Common metrics covering most genernal cases.
+ // Common metrics covering most general cases.
oneof metrics {
ClassificationMetrics classification_metrics = 1;
@@ -78,13 +100,17 @@ message EvaluationMetrics {
}
}
+// Metrics calculated for a classification model.
message ClassificationMetrics {
- // Precision-recall curve.
+ // Precision-recall curve based on ground truth labels, predicted labels, and
+ // scores for the predicted labels.
PrCurve pr_curve = 1;
+ // Confusion matrix of predicted labels vs. ground truth labels.
ConfusionMatrix confusion_matrix = 2;
}
+// Metrics calculated for an image object detection (bounding box) model.
message ObjectDetectionMetrics {
// Precision-recall curve.
PrCurve pr_curve = 1;
@@ -92,8 +118,18 @@ message ObjectDetectionMetrics {
message PrCurve {
message ConfidenceMetricsEntry {
- // Threshold used for this entry, for example, IoU threshold for bounding
- // box problem, or detection threshold for classification.
+ // Threshold used for this entry.
+ //
+ // For classification tasks, this is a classification threshold: a
+ // predicted label is categorized as positive or negative (in the context of
+ // this point on the PR curve) based on whether the label's score meets this
+ // threshold.
+ //
+ // For image object detection (bounding box) tasks, this is the
+ // [intersection-over-union
+ //
+ // (IOU)](/vision/automl/object-detection/docs/evaluate#intersection-over-union)
+ // threshold for the context of this point on the PR curve.
float confidence_threshold = 1;
// Recall value.
@@ -111,10 +147,7 @@ message PrCurve {
// Precision value for entries with label that has highest score.
float precision_at1 = 6;
- // The harmonic mean of
- // [recall_at1][google.cloud.datalabeling.v1beta1.PrCurve.ConfidenceMetricsEntry.recall_at1]
- // and
- // [precision_at1][google.cloud.datalabeling.v1beta1.PrCurve.ConfidenceMetricsEntry.precision_at1].
+ // The harmonic mean of [recall_at1][google.cloud.datalabeling.v1beta1.PrCurve.ConfidenceMetricsEntry.recall_at1] and [precision_at1][google.cloud.datalabeling.v1beta1.PrCurve.ConfidenceMetricsEntry.precision_at1].
float f1_score_at1 = 7;
// Recall value for entries with label that has highest 5 scores.
@@ -123,43 +156,48 @@ message PrCurve {
// Precision value for entries with label that has highest 5 scores.
float precision_at5 = 9;
- // The harmonic mean of
- // [recall_at5][google.cloud.datalabeling.v1beta1.PrCurve.ConfidenceMetricsEntry.recall_at5]
- // and
- // [precision_at5][google.cloud.datalabeling.v1beta1.PrCurve.ConfidenceMetricsEntry.precision_at5].
+ // The harmonic mean of [recall_at5][google.cloud.datalabeling.v1beta1.PrCurve.ConfidenceMetricsEntry.recall_at5] and [precision_at5][google.cloud.datalabeling.v1beta1.PrCurve.ConfidenceMetricsEntry.precision_at5].
float f1_score_at5 = 10;
}
- // PR curve against which annotation spec. Could be empty.
+ // The annotation spec of the label for which the precision-recall curve
+ // calculated. If this field is empty, that means the precision-recall curve
+ // is an aggregate curve for all labels.
AnnotationSpec annotation_spec = 1;
- // Area under precision recall curve.
+ // Area under the precision-recall curve. Not to be confused with area under
+ // a receiver operating characteristic (ROC) curve.
float area_under_curve = 2;
- // entries to draw PR graph.
+ // Entries that make up the precision-recall graph. Each entry is a "point" on
+ // the graph drawn for a different `confidence_threshold`.
repeated ConfidenceMetricsEntry confidence_metrics_entries = 3;
- // mean average prcision of this curve.
+ // Mean average prcision of this curve.
float mean_average_precision = 4;
}
-// Confusion matrix of the model running the classification. Not applicable
-// when label filtering is specified in evaluation option.
+// Confusion matrix of the model running the classification. Only applicable
+// when the metrics entry aggregates multiple labels. Not applicable when the
+// entry is for a single label.
message ConfusionMatrix {
message ConfusionMatrixEntry {
- // The predicted annotation spec.
+ // The annotation spec of a predicted label.
AnnotationSpec annotation_spec = 1;
- // Number of items being predicted as this label.
+ // Number of items predicted to have this label. (The ground truth label for
+ // these items is the `Row.annotationSpec` of this entry's parent.)
int32 item_count = 2;
}
- // A row in the confusion matrix.
+ // A row in the confusion matrix. Each entry in this row has the same
+ // ground truth label.
message Row {
- // the original annotation spec of this row.
+ // The annotation spec of the ground truth label for this row.
AnnotationSpec annotation_spec = 1;
- // Info describing predicted label distribution.
+ // A list of the confusion matrix entries. One entry for each possible
+ // predicted label.
repeated ConfusionMatrixEntry entries = 2;
}
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/proto/evaluation_job.proto b/datalabeling/google/cloud/datalabeling_v1beta1/proto/evaluation_job.proto
index ad642464347d..49270feea45d 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/proto/evaluation_job.proto
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/proto/evaluation_job.proto
@@ -18,6 +18,7 @@ syntax = "proto3";
package google.cloud.datalabeling.v1beta1;
import "google/api/annotations.proto";
+import "google/api/resource.proto";
import "google/cloud/datalabeling/v1beta1/dataset.proto";
import "google/cloud/datalabeling/v1beta1/evaluation.proto";
import "google/cloud/datalabeling/v1beta1/human_annotation_config.proto";
@@ -28,124 +29,244 @@ option go_package = "google.golang.org/genproto/googleapis/cloud/datalabeling/v1
option java_multiple_files = true;
option java_package = "com.google.cloud.datalabeling.v1beta1";
-// Defines an evaluation job that is triggered periodically to generate
-// evaluations.
+// Defines an evaluation job that runs periodically to generate
+// [Evaluations][google.cloud.datalabeling.v1beta1.Evaluation]. [Creating an evaluation
+// job](/ml-engine/docs/continuous-evaluation/create-job) is the starting point
+// for using continuous evaluation.
message EvaluationJob {
+ option (google.api.resource) = {
+ type: "datalabeling.googleapis.com/EvaluationJob"
+ pattern: "projects/{project}/evaluationJobs/{evaluation_job}"
+ };
+
// State of the job.
enum State {
STATE_UNSPECIFIED = 0;
+ // The job is scheduled to run at the [configured interval][google.cloud.datalabeling.v1beta1.EvaluationJob.schedule]. You
+ // can [pause][google.cloud.datalabeling.v1beta1.DataLabelingService.PauseEvaluationJob] or
+ // [delete][google.cloud.datalabeling.v1beta1.DataLabelingService.DeleteEvaluationJob] the job.
+ //
+ // When the job is in this state, it samples prediction input and output
+ // from your model version into your BigQuery table as predictions occur.
SCHEDULED = 1;
+ // The job is currently running. When the job runs, Data Labeling Service
+ // does several things:
+ //
+ // 1. If you have configured your job to use Data Labeling Service for
+ // ground truth labeling, the service creates a
+ // [Dataset][google.cloud.datalabeling.v1beta1.Dataset] and a labeling task for all data sampled
+ // since the last time the job ran. Human labelers provide ground truth
+ // labels for your data. Human labeling may take hours, or even days,
+ // depending on how much data has been sampled. The job remains in the
+ // `RUNNING` state during this time, and it can even be running multiple
+ // times in parallel if it gets triggered again (for example 24 hours
+ // later) before the earlier run has completed. When human labelers have
+ // finished labeling the data, the next step occurs.
+ //
+ // If you have configured your job to provide your own ground truth
+ // labels, Data Labeling Service still creates a [Dataset][google.cloud.datalabeling.v1beta1.Dataset] for newly
+ // sampled data, but it expects that you have already added ground truth
+ // labels to the BigQuery table by this time. The next step occurs
+ // immediately.
+ //
+ // 2. Data Labeling Service creates an [Evaluation][google.cloud.datalabeling.v1beta1.Evaluation] by comparing your
+ // model version's predictions with the ground truth labels.
+ //
+ // If the job remains in this state for a long time, it continues to sample
+ // prediction data into your BigQuery table and will run again at the next
+ // interval, even if it causes the job to run multiple times in parallel.
RUNNING = 2;
+ // The job is not sampling prediction input and output into your BigQuery
+ // table and it will not run according to its schedule. You can
+ // [resume][google.cloud.datalabeling.v1beta1.DataLabelingService.ResumeEvaluationJob] the job.
PAUSED = 3;
+ // The job has this state right before it is deleted.
STOPPED = 4;
}
- // Format: 'projects/{project_id}/evaluationJobs/{evaluation_job_id}'
+ // Output only. After you create a job, Data Labeling Service assigns a name
+ // to the job with the following format:
+ //
+ // "projects/{project_id}/evaluationJobs/{evaluation_job_id}"
string name = 1;
- // Description of the job. The description can be up to
- // 25000 characters long.
+ // Required. Description of the job. The description can be up to 25,000
+ // characters long.
string description = 2;
+ // Output only. Describes the current state of the job.
State state = 3;
- // Describes the schedule on which the job will be executed. Minimum schedule
- // unit is 1 day.
+ // Required. Describes the interval at which the job runs. This interval must
+ // be at least 1 day, and it is rounded to the nearest day. For example, if
+ // you specify a 50-hour interval, the job runs every 2 days.
//
- // The schedule can be either of the following types:
- // * [Crontab](http://en.wikipedia.org/wiki/Cron#Overview)
- // * English-like
+ // You can provide the schedule in
+ // [crontab format](/scheduler/docs/configuring/cron-job-schedules) or in an
+ // [English-like
+ // format](/appengine/docs/standard/python/config/cronref#schedule_format).
//
- // [schedule](https:
- // //cloud.google.com/scheduler/docs/configuring/cron-job-schedules)
+ // Regardless of what you specify, the job will run at 10:00 AM UTC. Only the
+ // interval from this schedule is used, not the specific time of day.
string schedule = 4;
- // The versioned model that is being evaluated here.
- // Only one job is allowed for each model name.
- // Format: 'projects/*/models/*/versions/*'
+ // Required. The [AI Platform Prediction model
+ // version](/ml-engine/docs/prediction-overview) to be evaluated. Prediction
+ // input and output is sampled from this model version. When creating an
+ // evaluation job, specify the model version in the following format:
+ //
+ // "projects/{project_id}/models/{model_name}/versions/{version_name}"
+ //
+ // There can only be one evaluation job per model version.
string model_version = 5;
- // Detailed config for running this eval job.
+ // Required. Configuration details for the evaluation job.
EvaluationJobConfig evaluation_job_config = 6;
- // Name of the AnnotationSpecSet.
+ // Required. Name of the [AnnotationSpecSet][google.cloud.datalabeling.v1beta1.AnnotationSpecSet] describing all the
+ // labels that your machine learning model outputs. You must create this
+ // resource before you create an evaluation job and provide its name in the
+ // following format:
+ //
+ // "projects/{project_id}/annotationSpecSets/{annotation_spec_set_id}"
string annotation_spec_set = 7;
- // If a human annotation should be requested when some data don't have ground
- // truth.
+ // Required. Whether you want Data Labeling Service to provide ground truth
+ // labels for prediction input. If you want the service to assign human
+ // labelers to annotate your data, set this to `true`. If you want to provide
+ // your own ground truth labels in the evaluation job's BigQuery table, set
+ // this to `false`.
bool label_missing_ground_truth = 8;
- // Output only. Any attempts with errors happening in evaluation job runs each
- // time will be recorded here incrementally.
+ // Output only. Every time the evaluation job runs and an error occurs, the
+ // failed attempt is appended to this array.
repeated Attempt attempts = 9;
- // Timestamp when this evaluation job was created.
+ // Output only. Timestamp of when this evaluation job was created.
google.protobuf.Timestamp create_time = 10;
}
+// Configures specific details of how a continuous evaluation job works. Provide
+// this configuration when you create an EvaluationJob.
message EvaluationJobConfig {
- // config specific to different supported human annotation use cases.
+ // Required. Details for how you want human reviewers to provide ground truth
+ // labels.
oneof human_annotation_request_config {
+ // Specify this field if your model version performs image classification or
+ // general classification.
+ //
+ // `annotationSpecSet` in this configuration must match
+ // [EvaluationJob.annotationSpecSet][google.cloud.datalabeling.v1beta1.EvaluationJob.annotation_spec_set].
+ // `allowMultiLabel` in this configuration must match
+ // `classificationMetadata.isMultiLabel` in [input_config][google.cloud.datalabeling.v1beta1.EvaluationJobConfig.input_config].
ImageClassificationConfig image_classification_config = 4;
+ // Specify this field if your model version performs image object detection
+ // (bounding box detection).
+ //
+ // `annotationSpecSet` in this configuration must match
+ // [EvaluationJob.annotationSpecSet][google.cloud.datalabeling.v1beta1.EvaluationJob.annotation_spec_set].
BoundingPolyConfig bounding_poly_config = 5;
- VideoClassificationConfig video_classification_config = 6;
-
- ObjectDetectionConfig object_detection_config = 7;
-
+ // Specify this field if your model version performs text classification.
+ //
+ // `annotationSpecSet` in this configuration must match
+ // [EvaluationJob.annotationSpecSet][google.cloud.datalabeling.v1beta1.EvaluationJob.annotation_spec_set].
+ // `allowMultiLabel` in this configuration must match
+ // `classificationMetadata.isMultiLabel` in [input_config][google.cloud.datalabeling.v1beta1.EvaluationJobConfig.input_config].
TextClassificationConfig text_classification_config = 8;
-
- ObjectTrackingConfig object_tracking_config = 12;
}
- // Input config for data, gcs_source in the config will be the root path for
- // data. Data should be organzied chronically under that path.
+ // Rquired. Details for the sampled prediction input. Within this
+ // configuration, there are requirements for several fields:
+ //
+ // * `dataType` must be one of `IMAGE`, `TEXT`, or `GENERAL_DATA`.
+ // * `annotationType` must be one of `IMAGE_CLASSIFICATION_ANNOTATION`,
+ // `TEXT_CLASSIFICATION_ANNOTATION`, `GENERAL_CLASSIFICATION_ANNOTATION`,
+ // or `IMAGE_BOUNDING_BOX_ANNOTATION` (image object detection).
+ // * If your machine learning model performs classification, you must specify
+ // `classificationMetadata.isMultiLabel`.
+ // * You must specify `bigquerySource` (not `gcsSource`).
InputConfig input_config = 1;
- // Config used to create evaluation.
+ // Required. Details for calculating evaluation metrics and creating
+ // [Evaulations][google.cloud.datalabeling.v1beta1.Evaluation]. If your model version performs image object
+ // detection, you must specify the `boundingBoxEvaluationOptions` field within
+ // this configuration. Otherwise, provide an empty object for this
+ // configuration.
EvaluationConfig evaluation_config = 2;
+ // Optional. Details for human annotation of your data. If you set
+ // [labelMissingGroundTruth][google.cloud.datalabeling.v1beta1.EvaluationJob.label_missing_ground_truth] to
+ // `true` for this evaluation job, then you must specify this field. If you
+ // plan to provide your own ground truth labels, then omit this field.
+ //
+ // Note that you must create an [Instruction][google.cloud.datalabeling.v1beta1.Instruction] resource before you can
+ // specify this field. Provide the name of the instruction resource in the
+ // `instruction` field within this configuration.
HumanAnnotationConfig human_annotation_config = 3;
- // Mappings between reserved keys for bigquery import and customized tensor
- // names. Key is the reserved key, value is tensor name in the bigquery table.
- // Different annotation type has different required key mapping. See user
- // manual for more details:
+ // Required. Prediction keys that tell Data Labeling Service where to find the
+ // data for evaluation in your BigQuery table. When the service samples
+ // prediction input and output from your model version and saves it to
+ // BigQuery, the data gets stored as JSON strings in the BigQuery table. These
+ // keys tell Data Labeling Service how to parse the JSON.
+ //
+ // You can provide the following entries in this field:
+ //
+ // * `data_json_key`: the data key for prediction input. You must provide
+ // either this key or `reference_json_key`.
+ // * `reference_json_key`: the data reference key for prediction input. You
+ // must provide either this key or `data_json_key`.
+ // * `label_json_key`: the label key for prediction output. Required.
+ // * `label_score_json_key`: the score key for prediction output. Required.
+ // * `bounding_box_json_key`: the bounding box key for prediction output.
+ // Required if your model version perform image object detection.
//
- // https:
- // //docs.google.com/document/d/1bg1meMIBGY
- // // 9I5QEoFoHSX6u9LsZQYBSmPt6E9SxqHZc/edit#heading=h.tfyjhxhvsqem
+ // Learn [how to configure prediction
+ // keys](/ml-engine/docs/continuous-evaluation/create-job#prediction-keys).
map bigquery_import_keys = 9;
- // Max number of examples to collect in each period.
+ // Required. The maximum number of predictions to sample and save to BigQuery
+ // during each [evaluation interval][google.cloud.datalabeling.v1beta1.EvaluationJob.schedule]. This limit
+ // overrides `example_sample_percentage`: even if the service has not sampled
+ // enough predictions to fulfill `example_sample_perecentage` during an
+ // interval, it stops sampling predictions when it meets this limit.
int32 example_count = 10;
- // Percentage of examples to collect in each period. 0.1 means 10% of total
- // examples will be collected, and 0.0 means no collection.
+ // Required. Fraction of predictions to sample and save to BigQuery during
+ // each [evaluation interval][google.cloud.datalabeling.v1beta1.EvaluationJob.schedule]. For example, 0.1 means
+ // 10% of predictions served by your model version get saved to BigQuery.
double example_sample_percentage = 11;
- // Alert config for the evaluation job. The alert will be triggered when its
- // criteria is met.
+ // Optional. Configuration details for evaluation job alerts. Specify this
+ // field if you want to receive email alerts if the evaluation job finds that
+ // your predictions have low mean average precision during a run.
EvaluationJobAlertConfig evaluation_job_alert_config = 13;
}
+// Provides details for how an evaluation job sends email alerts based on the
+// results of a run.
message EvaluationJobAlertConfig {
- // Required. Email of the user who will be receiving the alert.
+ // Required. An email address to send alerts to.
string email = 1;
- // If a single evaluation run's aggregate mean average precision is
- // lower than this threshold, the alert will be triggered.
+ // Required. A number between 0 and 1 that describes a minimum mean average
+ // precision threshold. When the evaluation job runs, if it calculates that
+ // your model version's predictions from the recent interval have
+ // [meanAveragePrecision][google.cloud.datalabeling.v1beta1.PrCurve.mean_average_precision] below this
+ // threshold, then it sends an alert to your specified email.
double min_acceptable_mean_average_precision = 2;
}
-// Records a failed attempt.
+// Records a failed evaluation job run.
message Attempt {
google.protobuf.Timestamp attempt_time = 1;
+ // Details of errors that occurred.
repeated google.rpc.Status partial_failures = 2;
}
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/proto/evaluation_job_pb2.py b/datalabeling/google/cloud/datalabeling_v1beta1/proto/evaluation_job_pb2.py
index ac1522440268..b9a42700b433 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/proto/evaluation_job_pb2.py
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/proto/evaluation_job_pb2.py
@@ -16,6 +16,7 @@
from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
+from google.api import resource_pb2 as google_dot_api_dot_resource__pb2
from google.cloud.datalabeling_v1beta1.proto import (
dataset_pb2 as google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_dataset__pb2,
)
@@ -37,10 +38,11 @@
"\n%com.google.cloud.datalabeling.v1beta1P\001ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabeling"
),
serialized_pb=_b(
- '\n`__ is the
+ starting point for using continuous evaluation.
Attributes:
name:
- Format:
- 'projects/{project\_id}/evaluationJobs/{evaluation\_job\_id}'
+ Output only. After you create a job, Data Labeling Service
+ assigns a name to the job with the following format:
+ "projects/{project\_id}/evaluationJobs/{evaluation\_job\_id}"
description:
- Description of the job. The description can be up to 25000
- characters long.
+ Required. Description of the job. The description can be up to
+ 25,000 characters long.
+ state:
+ Output only. Describes the current state of the job.
schedule:
- Describes the schedule on which the job will be executed.
- Minimum schedule unit is 1 day. The schedule can be either of
- the following types: \* `Crontab
- `__ \* English-
- like `schedule
- `__
+ Required. Describes the interval at which the job runs. This
+ interval must be at least 1 day, and it is rounded to the
+ nearest day. For example, if you specify a 50-hour interval,
+ the job runs every 2 days. You can provide the schedule in
+ `crontab format `__ or in an `English-like format `__. Regardless
+ of what you specify, the job will run at 10:00 AM UTC. Only
+ the interval from this schedule is used, not the specific time
+ of day.
model_version:
- The versioned model that is being evaluated here. Only one job
- is allowed for each model name. Format:
- 'projects/*/models/*/versions/\*'
+ Required. The `AI Platform Prediction model version `__ to be evaluated.
+ Prediction input and output is sampled from this model
+ version. When creating an evaluation job, specify the model
+ version in the following format: "projects/{project\_id}/mode
+ ls/{model\_name}/versions/{version\_name}" There can only be
+ one evaluation job per model version.
evaluation_job_config:
- Detailed config for running this eval job.
+ Required. Configuration details for the evaluation job.
annotation_spec_set:
- Name of the AnnotationSpecSet.
+ Required. Name of the [AnnotationSpecSet][google.cloud.datalab
+ eling.v1beta1.AnnotationSpecSet] describing all the labels
+ that your machine learning model outputs. You must create this
+ resource before you create an evaluation job and provide its
+ name in the following format: "projects/{project\_id}/annotat
+ ionSpecSets/{annotation\_spec\_set\_id}"
label_missing_ground_truth:
- If a human annotation should be requested when some data don't
- have ground truth.
+ Required. Whether you want Data Labeling Service to provide
+ ground truth labels for prediction input. If you want the
+ service to assign human labelers to annotate your data, set
+ this to ``true``. If you want to provide your own ground truth
+ labels in the evaluation job's BigQuery table, set this to
+ ``false``.
attempts:
- Output only. Any attempts with errors happening in evaluation
- job runs each time will be recorded here incrementally.
+ Output only. Every time the evaluation job runs and an error
+ occurs, the failed attempt is appended to this array.
create_time:
- Timestamp when this evaluation job was created.
+ Output only. Timestamp of when this evaluation job was
+ created.
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.EvaluationJob)
),
@@ -900,33 +834,108 @@
),
DESCRIPTOR=_EVALUATIONJOBCONFIG,
__module__="google.cloud.datalabeling_v1beta1.proto.evaluation_job_pb2",
- __doc__="""
- Attributes:
+ __doc__="""Configures specific details of how a continuous evaluation
+ job works. Provide this configuration when you create an EvaluationJob.
+
+
+ Attributes:
human_annotation_request_config:
- config specific to different supported human annotation use
- cases.
+ Required. Details for how you want human reviewers to provide
+ ground truth labels.
+ image_classification_config:
+ Specify this field if your model version performs image
+ classification or general classification.
+ ``annotationSpecSet`` in this configuration must match [Evalua
+ tionJob.annotationSpecSet][google.cloud.datalabeling.v1beta1.E
+ valuationJob.annotation\_spec\_set]. ``allowMultiLabel`` in
+ this configuration must match
+ ``classificationMetadata.isMultiLabel`` in [input\_config][goo
+ gle.cloud.datalabeling.v1beta1.EvaluationJobConfig.input\_conf
+ ig].
+ bounding_poly_config:
+ Specify this field if your model version performs image object
+ detection (bounding box detection). ``annotationSpecSet`` in
+ this configuration must match [EvaluationJob.annotationSpecSet
+ ][google.cloud.datalabeling.v1beta1.EvaluationJob.annotation\_
+ spec\_set].
+ text_classification_config:
+ Specify this field if your model version performs text
+ classification. ``annotationSpecSet`` in this configuration
+ must match [EvaluationJob.annotationSpecSet][google.cloud.data
+ labeling.v1beta1.EvaluationJob.annotation\_spec\_set].
+ ``allowMultiLabel`` in this configuration must match
+ ``classificationMetadata.isMultiLabel`` in [input\_config][goo
+ gle.cloud.datalabeling.v1beta1.EvaluationJobConfig.input\_conf
+ ig].
input_config:
- Input config for data, gcs\_source in the config will be the
- root path for data. Data should be organzied chronically under
- that path.
+ Rquired. Details for the sampled prediction input. Within this
+ configuration, there are requirements for several fields: -
+ ``dataType`` must be one of ``IMAGE``, ``TEXT``, or
+ ``GENERAL_DATA``. - ``annotationType`` must be one of
+ ``IMAGE_CLASSIFICATION_ANNOTATION``,
+ ``TEXT_CLASSIFICATION_ANNOTATION``,
+ ``GENERAL_CLASSIFICATION_ANNOTATION``, or
+ ``IMAGE_BOUNDING_BOX_ANNOTATION`` (image object detection). -
+ If your machine learning model performs classification, you
+ must specify ``classificationMetadata.isMultiLabel``. -
+ You must specify ``bigquerySource`` (not ``gcsSource``).
evaluation_config:
- Config used to create evaluation.
+ Required. Details for calculating evaluation metrics and
+ creating
+ [Evaulations][google.cloud.datalabeling.v1beta1.Evaluation].
+ If your model version performs image object detection, you
+ must specify the ``boundingBoxEvaluationOptions`` field within
+ this configuration. Otherwise, provide an empty object for
+ this configuration.
+ human_annotation_config:
+ Optional. Details for human annotation of your data. If you
+ set [labelMissingGroundTruth][google.cloud.datalabeling.v1beta
+ 1.EvaluationJob.label\_missing\_ground\_truth] to ``true`` for
+ this evaluation job, then you must specify this field. If you
+ plan to provide your own ground truth labels, then omit this
+ field. Note that you must create an
+ [Instruction][google.cloud.datalabeling.v1beta1.Instruction]
+ resource before you can specify this field. Provide the name
+ of the instruction resource in the ``instruction`` field
+ within this configuration.
bigquery_import_keys:
- Mappings between reserved keys for bigquery import and
- customized tensor names. Key is the reserved key, value is
- tensor name in the bigquery table. Different annotation type
- has different required key mapping. See user manual for more
- details: https: //docs.google.com/document/d/1bg1meMIBGY //
- 9I5QEoFoHSX6u9LsZQYBSmPt6E9SxqHZc/edit#heading=h.tfyjhxhvsqem
+ Required. Prediction keys that tell Data Labeling Service
+ where to find the data for evaluation in your BigQuery table.
+ When the service samples prediction input and output from your
+ model version and saves it to BigQuery, the data gets stored
+ as JSON strings in the BigQuery table. These keys tell Data
+ Labeling Service how to parse the JSON. You can provide the
+ following entries in this field: - ``data_json_key``: the
+ data key for prediction input. You must provide either this
+ key or ``reference_json_key``. - ``reference_json_key``: the
+ data reference key for prediction input. You must provide
+ either this key or ``data_json_key``. - ``label_json_key``:
+ the label key for prediction output. Required. -
+ ``label_score_json_key``: the score key for prediction output.
+ Required. - ``bounding_box_json_key``: the bounding box key
+ for prediction output. Required if your model version
+ perform image object detection. Learn `how to configure
+ prediction keys `__.
example_count:
- Max number of examples to collect in each period.
+ Required. The maximum number of predictions to sample and save
+ to BigQuery during each [evaluation interval][google.cloud.dat
+ alabeling.v1beta1.EvaluationJob.schedule]. This limit
+ overrides ``example_sample_percentage``: even if the service
+ has not sampled enough predictions to fulfill
+ ``example_sample_perecentage`` during an interval, it stops
+ sampling predictions when it meets this limit.
example_sample_percentage:
- Percentage of examples to collect in each period. 0.1 means
- 10% of total examples will be collected, and 0.0 means no
- collection.
+ Required. Fraction of predictions to sample and save to
+ BigQuery during each [evaluation interval][google.cloud.datala
+ beling.v1beta1.EvaluationJob.schedule]. For example, 0.1 means
+ 10% of predictions served by your model version get saved to
+ BigQuery.
evaluation_job_alert_config:
- Alert config for the evaluation job. The alert will be
- triggered when its criteria is met.
+ Optional. Configuration details for evaluation job alerts.
+ Specify this field if you want to receive email alerts if the
+ evaluation job finds that your predictions have low mean
+ average precision during a run.
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.EvaluationJobConfig)
),
@@ -940,13 +949,21 @@
dict(
DESCRIPTOR=_EVALUATIONJOBALERTCONFIG,
__module__="google.cloud.datalabeling_v1beta1.proto.evaluation_job_pb2",
- __doc__="""
- Attributes:
+ __doc__="""Provides details for how an evaluation job sends email
+ alerts based on the results of a run.
+
+
+ Attributes:
email:
- Required. Email of the user who will be receiving the alert.
+ Required. An email address to send alerts to.
min_acceptable_mean_average_precision:
- If a single evaluation run's aggregate mean average precision
- is lower than this threshold, the alert will be triggered.
+ Required. A number between 0 and 1 that describes a minimum
+ mean average precision threshold. When the evaluation job
+ runs, if it calculates that your model version's predictions
+ from the recent interval have [meanAveragePrecision][google.cl
+ oud.datalabeling.v1beta1.PrCurve.mean\_average\_precision]
+ below this threshold, then it sends an alert to your specified
+ email.
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.EvaluationJobAlertConfig)
),
@@ -959,7 +976,12 @@
dict(
DESCRIPTOR=_ATTEMPT,
__module__="google.cloud.datalabeling_v1beta1.proto.evaluation_job_pb2",
- __doc__="""Records a failed attempt.
+ __doc__="""Records a failed evaluation job run.
+
+
+ Attributes:
+ partial_failures:
+ Details of errors that occurred.
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.Attempt)
),
@@ -968,5 +990,6 @@
DESCRIPTOR._options = None
+_EVALUATIONJOB._options = None
_EVALUATIONJOBCONFIG_BIGQUERYIMPORTKEYSENTRY._options = None
# @@protoc_insertion_point(module_scope)
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/proto/evaluation_pb2.py b/datalabeling/google/cloud/datalabeling_v1beta1/proto/evaluation_pb2.py
index d3f231f6d05c..8fb904186b20 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/proto/evaluation_pb2.py
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/proto/evaluation_pb2.py
@@ -16,6 +16,7 @@
from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
+from google.api import resource_pb2 as google_dot_api_dot_resource__pb2
from google.cloud.datalabeling_v1beta1.proto import (
annotation_pb2 as google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_annotation__pb2,
)
@@ -33,10 +34,11 @@
"\n%com.google.cloud.datalabeling.v1beta1P\001ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabeling"
),
serialized_pb=_b(
- '\n8google/cloud/datalabeling_v1beta1/proto/evaluation.proto\x12!google.cloud.datalabeling.v1beta1\x1a\x1cgoogle/api/annotations.proto\x1a\x38google/cloud/datalabeling_v1beta1/proto/annotation.proto\x1a\x41google/cloud/datalabeling_v1beta1/proto/annotation_spec_set.proto\x1a\x1fgoogle/protobuf/timestamp.proto"\x89\x03\n\nEvaluation\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x43\n\x06\x63onfig\x18\x02 \x01(\x0b\x32\x33.google.cloud.datalabeling.v1beta1.EvaluationConfig\x12;\n\x17\x65valuation_job_run_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0b\x63reate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12P\n\x12\x65valuation_metrics\x18\x05 \x01(\x0b\x32\x34.google.cloud.datalabeling.v1beta1.EvaluationMetrics\x12J\n\x0f\x61nnotation_type\x18\x06 \x01(\x0e\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationType\x12\x1c\n\x14\x65valuated_item_count\x18\x07 \x01(\x03"\x91\x01\n\x10\x45valuationConfig\x12j\n\x1f\x62ounding_box_evaluation_options\x18\x01 \x01(\x0b\x32?.google.cloud.datalabeling.v1beta1.BoundingBoxEvaluationOptionsH\x00\x42\x11\n\x0fvertical_option"5\n\x1c\x42oundingBoxEvaluationOptions\x12\x15\n\riou_threshold\x18\x01 \x01(\x02"\xd9\x01\n\x11\x45valuationMetrics\x12Z\n\x16\x63lassification_metrics\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.ClassificationMetricsH\x00\x12]\n\x18object_detection_metrics\x18\x02 \x01(\x0b\x32\x39.google.cloud.datalabeling.v1beta1.ObjectDetectionMetricsH\x00\x42\t\n\x07metrics"\xa3\x01\n\x15\x43lassificationMetrics\x12<\n\x08pr_curve\x18\x01 \x01(\x0b\x32*.google.cloud.datalabeling.v1beta1.PrCurve\x12L\n\x10\x63onfusion_matrix\x18\x02 \x01(\x0b\x32\x32.google.cloud.datalabeling.v1beta1.ConfusionMatrix"V\n\x16ObjectDetectionMetrics\x12<\n\x08pr_curve\x18\x01 \x01(\x0b\x32*.google.cloud.datalabeling.v1beta1.PrCurve"\xe6\x03\n\x07PrCurve\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec\x12\x18\n\x10\x61rea_under_curve\x18\x02 \x01(\x02\x12\x65\n\x1a\x63onfidence_metrics_entries\x18\x03 \x03(\x0b\x32\x41.google.cloud.datalabeling.v1beta1.PrCurve.ConfidenceMetricsEntry\x12\x1e\n\x16mean_average_precision\x18\x04 \x01(\x02\x1a\xed\x01\n\x16\x43onfidenceMetricsEntry\x12\x1c\n\x14\x63onfidence_threshold\x18\x01 \x01(\x02\x12\x0e\n\x06recall\x18\x02 \x01(\x02\x12\x11\n\tprecision\x18\x03 \x01(\x02\x12\x10\n\x08\x66\x31_score\x18\x04 \x01(\x02\x12\x12\n\nrecall_at1\x18\x05 \x01(\x02\x12\x15\n\rprecision_at1\x18\x06 \x01(\x02\x12\x14\n\x0c\x66\x31_score_at1\x18\x07 \x01(\x02\x12\x12\n\nrecall_at5\x18\x08 \x01(\x02\x12\x15\n\rprecision_at5\x18\t \x01(\x02\x12\x14\n\x0c\x66\x31_score_at5\x18\n \x01(\x02"\xfc\x02\n\x0f\x43onfusionMatrix\x12\x43\n\x03row\x18\x01 \x03(\x0b\x32\x36.google.cloud.datalabeling.v1beta1.ConfusionMatrix.Row\x1av\n\x14\x43onfusionMatrixEntry\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec\x12\x12\n\nitem_count\x18\x02 \x01(\x05\x1a\xab\x01\n\x03Row\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec\x12X\n\x07\x65ntries\x18\x02 \x03(\x0b\x32G.google.cloud.datalabeling.v1beta1.ConfusionMatrix.ConfusionMatrixEntryBx\n%com.google.cloud.datalabeling.v1beta1P\x01ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabelingb\x06proto3'
+ '\n8google/cloud/datalabeling_v1beta1/proto/evaluation.proto\x12!google.cloud.datalabeling.v1beta1\x1a\x1cgoogle/api/annotations.proto\x1a\x19google/api/resource.proto\x1a\x38google/cloud/datalabeling_v1beta1/proto/annotation.proto\x1a\x41google/cloud/datalabeling_v1beta1/proto/annotation_spec_set.proto\x1a\x1fgoogle/protobuf/timestamp.proto"\xf6\x03\n\nEvaluation\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x43\n\x06\x63onfig\x18\x02 \x01(\x0b\x32\x33.google.cloud.datalabeling.v1beta1.EvaluationConfig\x12;\n\x17\x65valuation_job_run_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0b\x63reate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12P\n\x12\x65valuation_metrics\x18\x05 \x01(\x0b\x32\x34.google.cloud.datalabeling.v1beta1.EvaluationMetrics\x12J\n\x0f\x61nnotation_type\x18\x06 \x01(\x0e\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationType\x12\x1c\n\x14\x65valuated_item_count\x18\x07 \x01(\x03:k\xea\x41h\n&datalabeling.googleapis.com/Evaluation\x12>projects/{project}/datasets/{dataset}/evaluations/{evaluation}"\x91\x01\n\x10\x45valuationConfig\x12j\n\x1f\x62ounding_box_evaluation_options\x18\x01 \x01(\x0b\x32?.google.cloud.datalabeling.v1beta1.BoundingBoxEvaluationOptionsH\x00\x42\x11\n\x0fvertical_option"5\n\x1c\x42oundingBoxEvaluationOptions\x12\x15\n\riou_threshold\x18\x01 \x01(\x02"\xd9\x01\n\x11\x45valuationMetrics\x12Z\n\x16\x63lassification_metrics\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.ClassificationMetricsH\x00\x12]\n\x18object_detection_metrics\x18\x02 \x01(\x0b\x32\x39.google.cloud.datalabeling.v1beta1.ObjectDetectionMetricsH\x00\x42\t\n\x07metrics"\xa3\x01\n\x15\x43lassificationMetrics\x12<\n\x08pr_curve\x18\x01 \x01(\x0b\x32*.google.cloud.datalabeling.v1beta1.PrCurve\x12L\n\x10\x63onfusion_matrix\x18\x02 \x01(\x0b\x32\x32.google.cloud.datalabeling.v1beta1.ConfusionMatrix"V\n\x16ObjectDetectionMetrics\x12<\n\x08pr_curve\x18\x01 \x01(\x0b\x32*.google.cloud.datalabeling.v1beta1.PrCurve"\xe6\x03\n\x07PrCurve\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec\x12\x18\n\x10\x61rea_under_curve\x18\x02 \x01(\x02\x12\x65\n\x1a\x63onfidence_metrics_entries\x18\x03 \x03(\x0b\x32\x41.google.cloud.datalabeling.v1beta1.PrCurve.ConfidenceMetricsEntry\x12\x1e\n\x16mean_average_precision\x18\x04 \x01(\x02\x1a\xed\x01\n\x16\x43onfidenceMetricsEntry\x12\x1c\n\x14\x63onfidence_threshold\x18\x01 \x01(\x02\x12\x0e\n\x06recall\x18\x02 \x01(\x02\x12\x11\n\tprecision\x18\x03 \x01(\x02\x12\x10\n\x08\x66\x31_score\x18\x04 \x01(\x02\x12\x12\n\nrecall_at1\x18\x05 \x01(\x02\x12\x15\n\rprecision_at1\x18\x06 \x01(\x02\x12\x14\n\x0c\x66\x31_score_at1\x18\x07 \x01(\x02\x12\x12\n\nrecall_at5\x18\x08 \x01(\x02\x12\x15\n\rprecision_at5\x18\t \x01(\x02\x12\x14\n\x0c\x66\x31_score_at5\x18\n \x01(\x02"\xfc\x02\n\x0f\x43onfusionMatrix\x12\x43\n\x03row\x18\x01 \x03(\x0b\x32\x36.google.cloud.datalabeling.v1beta1.ConfusionMatrix.Row\x1av\n\x14\x43onfusionMatrixEntry\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec\x12\x12\n\nitem_count\x18\x02 \x01(\x05\x1a\xab\x01\n\x03Row\x12J\n\x0f\x61nnotation_spec\x18\x01 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.AnnotationSpec\x12X\n\x07\x65ntries\x18\x02 \x03(\x0b\x32G.google.cloud.datalabeling.v1beta1.ConfusionMatrix.ConfusionMatrixEntryBx\n%com.google.cloud.datalabeling.v1beta1P\x01ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabelingb\x06proto3'
),
dependencies=[
google_dot_api_dot_annotations__pb2.DESCRIPTOR,
+ google_dot_api_dot_resource__pb2.DESCRIPTOR,
google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_annotation__pb2.DESCRIPTOR,
google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_annotation__spec__set__pb2.DESCRIPTOR,
google_dot_protobuf_dot_timestamp__pb2.DESCRIPTOR,
@@ -181,13 +183,15 @@
extensions=[],
nested_types=[],
enum_types=[],
- serialized_options=None,
+ serialized_options=_b(
+ "\352Ah\n&datalabeling.googleapis.com/Evaluation\022>projects/{project}/datasets/{dataset}/evaluations/{evaluation}"
+ ),
is_extendable=False,
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=284,
- serialized_end=677,
+ serialized_start=311,
+ serialized_end=813,
)
@@ -233,8 +237,8 @@
fields=[],
)
],
- serialized_start=680,
- serialized_end=825,
+ serialized_start=816,
+ serialized_end=961,
)
@@ -272,8 +276,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=827,
- serialized_end=880,
+ serialized_start=963,
+ serialized_end=1016,
)
@@ -337,8 +341,8 @@
fields=[],
)
],
- serialized_start=883,
- serialized_end=1100,
+ serialized_start=1019,
+ serialized_end=1236,
)
@@ -394,8 +398,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1103,
- serialized_end=1266,
+ serialized_start=1239,
+ serialized_end=1402,
)
@@ -433,8 +437,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1268,
- serialized_end=1354,
+ serialized_start=1404,
+ serialized_end=1490,
)
@@ -634,8 +638,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1606,
- serialized_end=1843,
+ serialized_start=1742,
+ serialized_end=1979,
)
_PRCURVE = _descriptor.Descriptor(
@@ -726,8 +730,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1357,
- serialized_end=1843,
+ serialized_start=1493,
+ serialized_end=1979,
)
@@ -783,8 +787,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1934,
- serialized_end=2052,
+ serialized_start=2070,
+ serialized_end=2188,
)
_CONFUSIONMATRIX_ROW = _descriptor.Descriptor(
@@ -839,8 +843,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=2055,
- serialized_end=2226,
+ serialized_start=2191,
+ serialized_end=2362,
)
_CONFUSIONMATRIX = _descriptor.Descriptor(
@@ -877,8 +881,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1846,
- serialized_end=2226,
+ serialized_start=1982,
+ serialized_end=2362,
)
_EVALUATION.fields_by_name["config"].message_type = _EVALUATIONCONFIG
@@ -969,31 +973,38 @@
dict(
DESCRIPTOR=_EVALUATION,
__module__="google.cloud.datalabeling_v1beta1.proto.evaluation_pb2",
- __doc__="""Describes an evaluation between 2 annotated datasets. Created by an
- evaluation plan.
+ __doc__="""Describes an evaluation between a machine learning model's
+ predictions and ground truth labels. Created when an
+ [EvaluationJob][google.cloud.datalabeling.v1beta1.EvaluationJob] runs
+ successfully.
Attributes:
name:
- Resource name of an evaluation. Format: 'projects/{project\_id
- }/datasets/{dataset\_id}/evaluations/{evaluation\_id}'
+ Output only. Resource name of an evaluation. The name has the
+ following format: "projects/{project\_id}/datasets/{dataset\_
+ id}/evaluations/{evaluation\_id}'
config:
- Options used in evaluation plan for creating the evaluation.
+ Output only. Options used in the evaluation job that created
+ this evaluation.
evaluation_job_run_time:
- Output only. Timestamp when the evaluation plan triggered this
- evaluation flow.
+ Output only. Timestamp for when the evaluation job that
+ created this evaluation ran.
create_time:
- Output only. Timestamp when this model evaluation was created.
+ Output only. Timestamp for when this evaluation was created.
evaluation_metrics:
- Output only. Metrics of the evaluation.
+ Output only. Metrics comparing predictions to ground truth
+ labels.
annotation_type:
- Type of the annotation to compute metrics for in the
- groundtruth and annotation labeled dataset. Required for
- creation.
+ Output only. Type of task that the model version being
+ evaluated performs, as defined in the [evaluationJobConfig.in
+ putConfig.annotationType][google.cloud.datalabeling.v1beta1.Ev
+ aluationJobConfig.input\_config] field of the evaluation job
+ that created this evaluation.
evaluated_item_count:
- Output only. Count of items in groundtruth dataset included in
- this evaluation. Will be unset if annotation type is not
- applicable.
+ Output only. The number of items in the ground truth dataset
+ that were used for this evaluation. Only populated when the
+ evaulation is for certain AnnotationTypes.
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.Evaluation)
),
@@ -1006,10 +1017,18 @@
dict(
DESCRIPTOR=_EVALUATIONCONFIG,
__module__="google.cloud.datalabeling_v1beta1.proto.evaluation_pb2",
- __doc__="""
- Attributes:
+ __doc__="""Configuration details used for calculating evaluation
+ metrics and creating an
+ [Evaluation][google.cloud.datalabeling.v1beta1.Evaluation].
+
+
+ Attributes:
vertical_option:
Vertical specific options for general metrics.
+ bounding_box_evaluation_options:
+ Only specify this field if the related model performs image
+ object detection (``IMAGE_BOUNDING_BOX_ANNOTATION``).
+ Describes how to evaluate bounding boxes.
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.EvaluationConfig)
),
@@ -1027,8 +1046,11 @@
Attributes:
iou_threshold:
- Minimize IoU required to consider 2 bounding boxes are
- matched.
+ Minimum [intersection-over-union
+ (IOU)](/vision/automl/object-
+ detection/docs/evaluate#intersection-over-union) required for
+ 2 bounding boxes to be considered a match. This must be a
+ number between 0 and 1.
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.BoundingBoxEvaluationOptions)
),
@@ -1044,7 +1066,7 @@
__doc__="""
Attributes:
metrics:
- Common metrics covering most genernal cases.
+ Common metrics covering most general cases.
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.EvaluationMetrics)
),
@@ -1057,10 +1079,15 @@
dict(
DESCRIPTOR=_CLASSIFICATIONMETRICS,
__module__="google.cloud.datalabeling_v1beta1.proto.evaluation_pb2",
- __doc__="""
- Attributes:
+ __doc__="""Metrics calculated for a classification model.
+
+
+ Attributes:
pr_curve:
- Precision-recall curve.
+ Precision-recall curve based on ground truth labels, predicted
+ labels, and scores for the predicted labels.
+ confusion_matrix:
+ Confusion matrix of predicted labels vs. ground truth labels.
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.ClassificationMetrics)
),
@@ -1073,8 +1100,11 @@
dict(
DESCRIPTOR=_OBJECTDETECTIONMETRICS,
__module__="google.cloud.datalabeling_v1beta1.proto.evaluation_pb2",
- __doc__="""
- Attributes:
+ __doc__="""Metrics calculated for an image object detection (bounding
+ box) model.
+
+
+ Attributes:
pr_curve:
Precision-recall curve.
""",
@@ -1096,9 +1126,15 @@
__doc__="""
Attributes:
confidence_threshold:
- Threshold used for this entry, for example, IoU threshold for
- bounding box problem, or detection threshold for
- classification.
+ Threshold used for this entry. For classification tasks, this
+ is a classification threshold: a predicted label is
+ categorized as positive or negative (in the context of this
+ point on the PR curve) based on whether the label's score
+ meets this threshold. For image object detection (bounding
+ box) tasks, this is the [intersection-over-union
+ (IOU)](/vision/automl/object-
+ detection/docs/evaluate#intersection-over-union) threshold for
+ the context of this point on the PR curve.
recall:
Recall value.
precision:
@@ -1133,13 +1169,19 @@
__doc__="""
Attributes:
annotation_spec:
- PR curve against which annotation spec. Could be empty.
+ The annotation spec of the label for which the precision-
+ recall curve calculated. If this field is empty, that means
+ the precision-recall curve is an aggregate curve for all
+ labels.
area_under_curve:
- Area under precision recall curve.
+ Area under the precision-recall curve. Not to be confused with
+ area under a receiver operating characteristic (ROC) curve.
confidence_metrics_entries:
- entries to draw PR graph.
+ Entries that make up the precision-recall graph. Each entry is
+ a "point" on the graph drawn for a different
+ ``confidence_threshold``.
mean_average_precision:
- mean average prcision of this curve.
+ Mean average prcision of this curve.
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.PrCurve)
),
@@ -1160,9 +1202,11 @@
__doc__="""
Attributes:
annotation_spec:
- The predicted annotation spec.
+ The annotation spec of a predicted label.
item_count:
- Number of items being predicted as this label.
+ Number of items predicted to have this label. (The ground
+ truth label for these items is the ``Row.annotationSpec`` of
+ this entry's parent.)
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.ConfusionMatrix.ConfusionMatrixEntry)
),
@@ -1173,22 +1217,26 @@
dict(
DESCRIPTOR=_CONFUSIONMATRIX_ROW,
__module__="google.cloud.datalabeling_v1beta1.proto.evaluation_pb2",
- __doc__="""A row in the confusion matrix.
+ __doc__="""A row in the confusion matrix. Each entry in this row has
+ the same ground truth label.
Attributes:
annotation_spec:
- the original annotation spec of this row.
+ The annotation spec of the ground truth label for this row.
entries:
- Info describing predicted label distribution.
+ A list of the confusion matrix entries. One entry for each
+ possible predicted label.
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.ConfusionMatrix.Row)
),
),
DESCRIPTOR=_CONFUSIONMATRIX,
__module__="google.cloud.datalabeling_v1beta1.proto.evaluation_pb2",
- __doc__="""Confusion matrix of the model running the classification. Not applicable
- when label filtering is specified in evaluation option.
+ __doc__="""Confusion matrix of the model running the classification. Only
+ applicable when the metrics entry aggregates multiple labels. Not
+ applicable when the entry is for a single label.
+
""",
# @@protoc_insertion_point(class_scope:google.cloud.datalabeling.v1beta1.ConfusionMatrix)
),
@@ -1199,4 +1247,5 @@
DESCRIPTOR._options = None
+_EVALUATION._options = None
# @@protoc_insertion_point(module_scope)
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/proto/human_annotation_config.proto b/datalabeling/google/cloud/datalabeling_v1beta1/proto/human_annotation_config.proto
index 67f3c81efd06..5658bb9b80c9 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/proto/human_annotation_config.proto
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/proto/human_annotation_config.proto
@@ -18,6 +18,7 @@ syntax = "proto3";
package google.cloud.datalabeling.v1beta1;
import "google/api/annotations.proto";
+import "google/api/field_behavior.proto";
import "google/protobuf/duration.proto";
option go_package = "google.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabeling";
@@ -40,44 +41,44 @@ enum StringAggregationType {
// Configuration for how human labeling task should be done.
message HumanAnnotationConfig {
// Required. Instruction resource name.
- string instruction = 1;
+ string instruction = 1 [(google.api.field_behavior) = REQUIRED];
// Required. A human-readable name for AnnotatedDataset defined by
// users. Maximum of 64 characters
// .
- string annotated_dataset_display_name = 2;
+ string annotated_dataset_display_name = 2 [(google.api.field_behavior) = REQUIRED];
// Optional. A human-readable description for AnnotatedDataset.
// The description can be up to 10000 characters long.
- string annotated_dataset_description = 3;
+ string annotated_dataset_description = 3 [(google.api.field_behavior) = OPTIONAL];
// Optional. A human-readable label used to logically group labeling tasks.
// This string must match the regular expression `[a-zA-Z\\d_-]{0,128}`.
- string label_group = 4;
+ string label_group = 4 [(google.api.field_behavior) = OPTIONAL];
// Optional. The Language of this question, as a
// [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt).
// Default value is en-US.
// Only need to set this when task is language related. For example, French
// text classification.
- string language_code = 5;
+ string language_code = 5 [(google.api.field_behavior) = OPTIONAL];
// Optional. Replication of questions. Each question will be sent to up to
// this number of contributors to label. Aggregated answers will be returned.
// Default is set to 1.
// For image related labeling, valid values are 1, 3, 5.
- int32 replica_count = 6;
+ int32 replica_count = 6 [(google.api.field_behavior) = OPTIONAL];
- // Optional. Maximum duration for contributors to answer a question. Default
- // is 1800 seconds.
- google.protobuf.Duration question_duration = 7;
+ // Optional. Maximum duration for contributors to answer a question. Maximum
+ // is 3600 seconds. Default is 3600 seconds.
+ google.protobuf.Duration question_duration = 7 [(google.api.field_behavior) = OPTIONAL];
// Optional. If you want your own labeling contributors to manage and work on
// this labeling request, you can set these contributors here. We will give
// them access to the question types in crowdcompute. Note that these
// emails must be registered in crowdcompute worker UI:
// https://crowd-compute.appspot.com/
- repeated string contributor_emails = 9;
+ repeated string contributor_emails = 9 [(google.api.field_behavior) = OPTIONAL];
// Email of the user who started the labeling task and should be notified by
// email. If empty no notification will be sent.
@@ -87,39 +88,39 @@ message HumanAnnotationConfig {
// Config for image classification human labeling task.
message ImageClassificationConfig {
// Required. Annotation spec set resource name.
- string annotation_spec_set = 1;
+ string annotation_spec_set = 1 [(google.api.field_behavior) = REQUIRED];
// Optional. If allow_multi_label is true, contributors are able to choose
// multiple labels for one image.
- bool allow_multi_label = 2;
+ bool allow_multi_label = 2 [(google.api.field_behavior) = OPTIONAL];
// Optional. The type of how to aggregate answers.
- StringAggregationType answer_aggregation_type = 3;
+ StringAggregationType answer_aggregation_type = 3 [(google.api.field_behavior) = OPTIONAL];
}
// Config for image bounding poly (and bounding box) human labeling task.
message BoundingPolyConfig {
// Required. Annotation spec set resource name.
- string annotation_spec_set = 1;
+ string annotation_spec_set = 1 [(google.api.field_behavior) = REQUIRED];
// Optional. Instruction message showed on contributors UI.
- string instruction_message = 2;
+ string instruction_message = 2 [(google.api.field_behavior) = OPTIONAL];
}
// Config for image polyline human labeling task.
message PolylineConfig {
// Required. Annotation spec set resource name.
- string annotation_spec_set = 1;
+ string annotation_spec_set = 1 [(google.api.field_behavior) = REQUIRED];
// Optional. Instruction message showed on contributors UI.
- string instruction_message = 2;
+ string instruction_message = 2 [(google.api.field_behavior) = OPTIONAL];
}
// Config for image segmentation
message SegmentationConfig {
// Required. Annotation spec set resource name. format:
// projects/{project_id}/annotationSpecSets/{annotation_spec_set_id}
- string annotation_spec_set = 1;
+ string annotation_spec_set = 1 [(google.api.field_behavior) = REQUIRED];
// Instruction message showed on labelers UI.
string instruction_message = 2;
@@ -134,11 +135,11 @@ message VideoClassificationConfig {
// Annotation spec set with the setting of allowing multi labels or not.
message AnnotationSpecSetConfig {
// Required. Annotation spec set resource name.
- string annotation_spec_set = 1;
+ string annotation_spec_set = 1 [(google.api.field_behavior) = REQUIRED];
// Optional. If allow_multi_label is true, contributors are able to
// choose multiple labels from one annotation spec set.
- bool allow_multi_label = 2;
+ bool allow_multi_label = 2 [(google.api.field_behavior) = OPTIONAL];
}
// Required. The list of annotation spec set configs.
@@ -147,10 +148,10 @@ message VideoClassificationConfig {
// in each AnnotationSpecSet will be shown in a group to contributors.
// Contributors can select one or more (depending on whether to allow multi
// label) from each group.
- repeated AnnotationSpecSetConfig annotation_spec_set_configs = 1;
+ repeated AnnotationSpecSetConfig annotation_spec_set_configs = 1 [(google.api.field_behavior) = REQUIRED];
// Optional. Option to apply shot detection on the video.
- bool apply_shot_detection = 2;
+ bool apply_shot_detection = 2 [(google.api.field_behavior) = OPTIONAL];
}
// Config for video object detection human labeling task.
@@ -160,16 +161,16 @@ message VideoClassificationConfig {
// extraction frame rate.
message ObjectDetectionConfig {
// Required. Annotation spec set resource name.
- string annotation_spec_set = 1;
+ string annotation_spec_set = 1 [(google.api.field_behavior) = REQUIRED];
// Required. Number of frames per second to be extracted from the video.
- double extraction_frame_rate = 3;
+ double extraction_frame_rate = 3 [(google.api.field_behavior) = REQUIRED];
}
// Config for video object tracking human labeling task.
message ObjectTrackingConfig {
// Required. Annotation spec set resource name.
- string annotation_spec_set = 1;
+ string annotation_spec_set = 1 [(google.api.field_behavior) = REQUIRED];
}
// Config for video event human labeling task.
@@ -177,20 +178,20 @@ message EventConfig {
// Required. The list of annotation spec set resource name. Similar to video
// classification, we support selecting event from multiple AnnotationSpecSet
// at the same time.
- repeated string annotation_spec_sets = 1;
+ repeated string annotation_spec_sets = 1 [(google.api.field_behavior) = REQUIRED];
}
// Config for text classification human labeling task.
message TextClassificationConfig {
// Optional. If allow_multi_label is true, contributors are able to choose
// multiple labels for one text segment.
- bool allow_multi_label = 1;
+ bool allow_multi_label = 1 [(google.api.field_behavior) = OPTIONAL];
// Required. Annotation spec set resource name.
- string annotation_spec_set = 2;
+ string annotation_spec_set = 2 [(google.api.field_behavior) = REQUIRED];
// Optional. Configs for sentiment selection.
- SentimentConfig sentiment_config = 3;
+ SentimentConfig sentiment_config = 3 [(google.api.field_behavior) = OPTIONAL];
}
// Config for setting up sentiments.
@@ -204,5 +205,5 @@ message SentimentConfig {
// Config for text entity extraction human labeling task.
message TextEntityExtractionConfig {
// Required. Annotation spec set resource name.
- string annotation_spec_set = 1;
+ string annotation_spec_set = 1 [(google.api.field_behavior) = REQUIRED];
}
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/proto/human_annotation_config_pb2.py b/datalabeling/google/cloud/datalabeling_v1beta1/proto/human_annotation_config_pb2.py
index 12361dce1684..26b57cca48a8 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/proto/human_annotation_config_pb2.py
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/proto/human_annotation_config_pb2.py
@@ -17,6 +17,7 @@
from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
+from google.api import field_behavior_pb2 as google_dot_api_dot_field__behavior__pb2
from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2
@@ -28,10 +29,11 @@
"\n%com.google.cloud.datalabeling.v1beta1P\001ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabeling"
),
serialized_pb=_b(
- '\nEgoogle/cloud/datalabeling_v1beta1/proto/human_annotation_config.proto\x12!google.cloud.datalabeling.v1beta1\x1a\x1cgoogle/api/annotations.proto\x1a\x1egoogle/protobuf/duration.proto"\xac\x02\n\x15HumanAnnotationConfig\x12\x13\n\x0binstruction\x18\x01 \x01(\t\x12&\n\x1e\x61nnotated_dataset_display_name\x18\x02 \x01(\t\x12%\n\x1d\x61nnotated_dataset_description\x18\x03 \x01(\t\x12\x13\n\x0blabel_group\x18\x04 \x01(\t\x12\x15\n\rlanguage_code\x18\x05 \x01(\t\x12\x15\n\rreplica_count\x18\x06 \x01(\x05\x12\x34\n\x11question_duration\x18\x07 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x1a\n\x12\x63ontributor_emails\x18\t \x03(\t\x12\x1a\n\x12user_email_address\x18\n \x01(\t"\xae\x01\n\x19ImageClassificationConfig\x12\x1b\n\x13\x61nnotation_spec_set\x18\x01 \x01(\t\x12\x19\n\x11\x61llow_multi_label\x18\x02 \x01(\x08\x12Y\n\x17\x61nswer_aggregation_type\x18\x03 \x01(\x0e\x32\x38.google.cloud.datalabeling.v1beta1.StringAggregationType"N\n\x12\x42oundingPolyConfig\x12\x1b\n\x13\x61nnotation_spec_set\x18\x01 \x01(\t\x12\x1b\n\x13instruction_message\x18\x02 \x01(\t"J\n\x0ePolylineConfig\x12\x1b\n\x13\x61nnotation_spec_set\x18\x01 \x01(\t\x12\x1b\n\x13instruction_message\x18\x02 \x01(\t"N\n\x12SegmentationConfig\x12\x1b\n\x13\x61nnotation_spec_set\x18\x01 \x01(\t\x12\x1b\n\x13instruction_message\x18\x02 \x01(\t"\x87\x02\n\x19VideoClassificationConfig\x12y\n\x1b\x61nnotation_spec_set_configs\x18\x01 \x03(\x0b\x32T.google.cloud.datalabeling.v1beta1.VideoClassificationConfig.AnnotationSpecSetConfig\x12\x1c\n\x14\x61pply_shot_detection\x18\x02 \x01(\x08\x1aQ\n\x17\x41nnotationSpecSetConfig\x12\x1b\n\x13\x61nnotation_spec_set\x18\x01 \x01(\t\x12\x19\n\x11\x61llow_multi_label\x18\x02 \x01(\x08"S\n\x15ObjectDetectionConfig\x12\x1b\n\x13\x61nnotation_spec_set\x18\x01 \x01(\t\x12\x1d\n\x15\x65xtraction_frame_rate\x18\x03 \x01(\x01"3\n\x14ObjectTrackingConfig\x12\x1b\n\x13\x61nnotation_spec_set\x18\x01 \x01(\t"+\n\x0b\x45ventConfig\x12\x1c\n\x14\x61nnotation_spec_sets\x18\x01 \x03(\t"\xa0\x01\n\x18TextClassificationConfig\x12\x19\n\x11\x61llow_multi_label\x18\x01 \x01(\x08\x12\x1b\n\x13\x61nnotation_spec_set\x18\x02 \x01(\t\x12L\n\x10sentiment_config\x18\x03 \x01(\x0b\x32\x32.google.cloud.datalabeling.v1beta1.SentimentConfig";\n\x0fSentimentConfig\x12(\n enable_label_sentiment_selection\x18\x01 \x01(\x08"9\n\x1aTextEntityExtractionConfig\x12\x1b\n\x13\x61nnotation_spec_set\x18\x01 \x01(\t*{\n\x15StringAggregationType\x12\'\n#STRING_AGGREGATION_TYPE_UNSPECIFIED\x10\x00\x12\x11\n\rMAJORITY_VOTE\x10\x01\x12\x12\n\x0eUNANIMOUS_VOTE\x10\x02\x12\x12\n\x0eNO_AGGREGATION\x10\x03\x42x\n%com.google.cloud.datalabeling.v1beta1P\x01ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabelingb\x06proto3'
+ '\nEgoogle/cloud/datalabeling_v1beta1/proto/human_annotation_config.proto\x12!google.cloud.datalabeling.v1beta1\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x1egoogle/protobuf/duration.proto"\xd4\x02\n\x15HumanAnnotationConfig\x12\x18\n\x0binstruction\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12+\n\x1e\x61nnotated_dataset_display_name\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12*\n\x1d\x61nnotated_dataset_description\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x18\n\x0blabel_group\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x1a\n\rlanguage_code\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12\x1a\n\rreplica_count\x18\x06 \x01(\x05\x42\x03\xe0\x41\x01\x12\x39\n\x11question_duration\x18\x07 \x01(\x0b\x32\x19.google.protobuf.DurationB\x03\xe0\x41\x01\x12\x1f\n\x12\x63ontributor_emails\x18\t \x03(\tB\x03\xe0\x41\x01\x12\x1a\n\x12user_email_address\x18\n \x01(\t"\xbd\x01\n\x19ImageClassificationConfig\x12 \n\x13\x61nnotation_spec_set\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1e\n\x11\x61llow_multi_label\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\x12^\n\x17\x61nswer_aggregation_type\x18\x03 \x01(\x0e\x32\x38.google.cloud.datalabeling.v1beta1.StringAggregationTypeB\x03\xe0\x41\x01"X\n\x12\x42oundingPolyConfig\x12 \n\x13\x61nnotation_spec_set\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12 \n\x13instruction_message\x18\x02 \x01(\tB\x03\xe0\x41\x01"T\n\x0ePolylineConfig\x12 \n\x13\x61nnotation_spec_set\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12 \n\x13instruction_message\x18\x02 \x01(\tB\x03\xe0\x41\x01"S\n\x12SegmentationConfig\x12 \n\x13\x61nnotation_spec_set\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1b\n\x13instruction_message\x18\x02 \x01(\t"\x9b\x02\n\x19VideoClassificationConfig\x12~\n\x1b\x61nnotation_spec_set_configs\x18\x01 \x03(\x0b\x32T.google.cloud.datalabeling.v1beta1.VideoClassificationConfig.AnnotationSpecSetConfigB\x03\xe0\x41\x02\x12!\n\x14\x61pply_shot_detection\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\x1a[\n\x17\x41nnotationSpecSetConfig\x12 \n\x13\x61nnotation_spec_set\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1e\n\x11\x61llow_multi_label\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01"]\n\x15ObjectDetectionConfig\x12 \n\x13\x61nnotation_spec_set\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12"\n\x15\x65xtraction_frame_rate\x18\x03 \x01(\x01\x42\x03\xe0\x41\x02"8\n\x14ObjectTrackingConfig\x12 \n\x13\x61nnotation_spec_set\x18\x01 \x01(\tB\x03\xe0\x41\x02"0\n\x0b\x45ventConfig\x12!\n\x14\x61nnotation_spec_sets\x18\x01 \x03(\tB\x03\xe0\x41\x02"\xaf\x01\n\x18TextClassificationConfig\x12\x1e\n\x11\x61llow_multi_label\x18\x01 \x01(\x08\x42\x03\xe0\x41\x01\x12 \n\x13\x61nnotation_spec_set\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12Q\n\x10sentiment_config\x18\x03 \x01(\x0b\x32\x32.google.cloud.datalabeling.v1beta1.SentimentConfigB\x03\xe0\x41\x01";\n\x0fSentimentConfig\x12(\n enable_label_sentiment_selection\x18\x01 \x01(\x08">\n\x1aTextEntityExtractionConfig\x12 \n\x13\x61nnotation_spec_set\x18\x01 \x01(\tB\x03\xe0\x41\x02*{\n\x15StringAggregationType\x12\'\n#STRING_AGGREGATION_TYPE_UNSPECIFIED\x10\x00\x12\x11\n\rMAJORITY_VOTE\x10\x01\x12\x12\n\x0eUNANIMOUS_VOTE\x10\x02\x12\x12\n\x0eNO_AGGREGATION\x10\x03\x42x\n%com.google.cloud.datalabeling.v1beta1P\x01ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabelingb\x06proto3'
),
dependencies=[
google_dot_api_dot_annotations__pb2.DESCRIPTOR,
+ google_dot_api_dot_field__behavior__pb2.DESCRIPTOR,
google_dot_protobuf_dot_duration__pb2.DESCRIPTOR,
],
)
@@ -61,8 +63,8 @@
],
containing_type=None,
serialized_options=None,
- serialized_start=1618,
- serialized_end=1741,
+ serialized_start=1791,
+ serialized_end=1914,
)
_sym_db.RegisterEnumDescriptor(_STRINGAGGREGATIONTYPE)
@@ -95,7 +97,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -113,7 +115,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -131,7 +133,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -149,7 +151,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -167,7 +169,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -185,7 +187,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -203,7 +205,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -221,7 +223,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -251,8 +253,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=171,
- serialized_end=471,
+ serialized_start=204,
+ serialized_end=544,
)
@@ -278,7 +280,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -296,7 +298,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -314,7 +316,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
],
@@ -326,8 +328,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=474,
- serialized_end=648,
+ serialized_start=547,
+ serialized_end=736,
)
@@ -353,7 +355,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -371,7 +373,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
],
@@ -383,8 +385,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=650,
- serialized_end=728,
+ serialized_start=738,
+ serialized_end=826,
)
@@ -410,7 +412,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -428,7 +430,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
],
@@ -440,8 +442,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=730,
- serialized_end=804,
+ serialized_start=828,
+ serialized_end=912,
)
@@ -467,7 +469,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -497,8 +499,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=806,
- serialized_end=884,
+ serialized_start=914,
+ serialized_end=997,
)
@@ -524,7 +526,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -542,7 +544,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
],
@@ -554,8 +556,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1069,
- serialized_end=1150,
+ serialized_start=1192,
+ serialized_end=1283,
)
_VIDEOCLASSIFICATIONCONFIG = _descriptor.Descriptor(
@@ -580,7 +582,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -598,7 +600,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
],
@@ -610,8 +612,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=887,
- serialized_end=1150,
+ serialized_start=1000,
+ serialized_end=1283,
)
@@ -637,7 +639,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -655,7 +657,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
],
@@ -667,8 +669,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1152,
- serialized_end=1235,
+ serialized_start=1285,
+ serialized_end=1378,
)
@@ -694,7 +696,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
)
],
@@ -706,8 +708,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1237,
- serialized_end=1288,
+ serialized_start=1380,
+ serialized_end=1436,
)
@@ -733,7 +735,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
)
],
@@ -745,8 +747,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1290,
- serialized_end=1333,
+ serialized_start=1438,
+ serialized_end=1486,
)
@@ -772,7 +774,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -790,7 +792,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -808,7 +810,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\001"),
file=DESCRIPTOR,
),
],
@@ -820,8 +822,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1336,
- serialized_end=1496,
+ serialized_start=1489,
+ serialized_end=1664,
)
@@ -859,8 +861,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1498,
- serialized_end=1557,
+ serialized_start=1666,
+ serialized_end=1725,
)
@@ -886,7 +888,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\340A\002"),
file=DESCRIPTOR,
)
],
@@ -898,8 +900,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=1559,
- serialized_end=1616,
+ serialized_start=1727,
+ serialized_end=1789,
)
_HUMANANNOTATIONCONFIG.fields_by_name[
@@ -972,7 +974,7 @@
related labeling, valid values are 1, 3, 5.
question_duration:
Optional. Maximum duration for contributors to answer a
- question. Default is 1800 seconds.
+ question. Maximum is 3600 seconds. Default is 3600 seconds.
contributor_emails:
Optional. If you want your own labeling contributors to manage
and work on this labeling request, you can set these
@@ -1018,7 +1020,8 @@
dict(
DESCRIPTOR=_BOUNDINGPOLYCONFIG,
__module__="google.cloud.datalabeling_v1beta1.proto.human_annotation_config_pb2",
- __doc__="""Config for image bounding poly (and bounding box) human labeling task.
+ __doc__="""Config for image bounding poly (and bounding box) human
+ labeling task.
Attributes:
@@ -1083,7 +1086,8 @@
dict(
DESCRIPTOR=_VIDEOCLASSIFICATIONCONFIG_ANNOTATIONSPECSETCONFIG,
__module__="google.cloud.datalabeling_v1beta1.proto.human_annotation_config_pb2",
- __doc__="""Annotation spec set with the setting of allowing multi labels or not.
+ __doc__="""Annotation spec set with the setting of allowing multi
+ labels or not.
Attributes:
@@ -1098,10 +1102,10 @@
),
DESCRIPTOR=_VIDEOCLASSIFICATIONCONFIG,
__module__="google.cloud.datalabeling_v1beta1.proto.human_annotation_config_pb2",
- __doc__="""Config for video classification human labeling task. Currently two types
- of video classification are supported: 1. Assign labels on the entire
- video. 2. Split the video into multiple video clips based on camera
- shot, and assign labels on each video clip.
+ __doc__="""Config for video classification human labeling task.
+ Currently two types of video classification are supported: 1. Assign
+ labels on the entire video. 2. Split the video into multiple video clips
+ based on camera shot, and assign labels on each video clip.
Attributes:
@@ -1127,11 +1131,11 @@
dict(
DESCRIPTOR=_OBJECTDETECTIONCONFIG,
__module__="google.cloud.datalabeling_v1beta1.proto.human_annotation_config_pb2",
- __doc__="""Config for video object detection human labeling task. Object detection
- will be conducted on the images extracted from the video, and those
- objects will be labeled with bounding boxes. User need to specify the
- number of images to be extracted per second as the extraction frame
- rate.
+ __doc__="""Config for video object detection human labeling task.
+ Object detection will be conducted on the images extracted from the
+ video, and those objects will be labeled with bounding boxes. User need
+ to specify the number of images to be extracted per second as the
+ extraction frame rate.
Attributes:
@@ -1247,4 +1251,36 @@
DESCRIPTOR._options = None
+_HUMANANNOTATIONCONFIG.fields_by_name["instruction"]._options = None
+_HUMANANNOTATIONCONFIG.fields_by_name["annotated_dataset_display_name"]._options = None
+_HUMANANNOTATIONCONFIG.fields_by_name["annotated_dataset_description"]._options = None
+_HUMANANNOTATIONCONFIG.fields_by_name["label_group"]._options = None
+_HUMANANNOTATIONCONFIG.fields_by_name["language_code"]._options = None
+_HUMANANNOTATIONCONFIG.fields_by_name["replica_count"]._options = None
+_HUMANANNOTATIONCONFIG.fields_by_name["question_duration"]._options = None
+_HUMANANNOTATIONCONFIG.fields_by_name["contributor_emails"]._options = None
+_IMAGECLASSIFICATIONCONFIG.fields_by_name["annotation_spec_set"]._options = None
+_IMAGECLASSIFICATIONCONFIG.fields_by_name["allow_multi_label"]._options = None
+_IMAGECLASSIFICATIONCONFIG.fields_by_name["answer_aggregation_type"]._options = None
+_BOUNDINGPOLYCONFIG.fields_by_name["annotation_spec_set"]._options = None
+_BOUNDINGPOLYCONFIG.fields_by_name["instruction_message"]._options = None
+_POLYLINECONFIG.fields_by_name["annotation_spec_set"]._options = None
+_POLYLINECONFIG.fields_by_name["instruction_message"]._options = None
+_SEGMENTATIONCONFIG.fields_by_name["annotation_spec_set"]._options = None
+_VIDEOCLASSIFICATIONCONFIG_ANNOTATIONSPECSETCONFIG.fields_by_name[
+ "annotation_spec_set"
+]._options = None
+_VIDEOCLASSIFICATIONCONFIG_ANNOTATIONSPECSETCONFIG.fields_by_name[
+ "allow_multi_label"
+]._options = None
+_VIDEOCLASSIFICATIONCONFIG.fields_by_name["annotation_spec_set_configs"]._options = None
+_VIDEOCLASSIFICATIONCONFIG.fields_by_name["apply_shot_detection"]._options = None
+_OBJECTDETECTIONCONFIG.fields_by_name["annotation_spec_set"]._options = None
+_OBJECTDETECTIONCONFIG.fields_by_name["extraction_frame_rate"]._options = None
+_OBJECTTRACKINGCONFIG.fields_by_name["annotation_spec_set"]._options = None
+_EVENTCONFIG.fields_by_name["annotation_spec_sets"]._options = None
+_TEXTCLASSIFICATIONCONFIG.fields_by_name["allow_multi_label"]._options = None
+_TEXTCLASSIFICATIONCONFIG.fields_by_name["annotation_spec_set"]._options = None
+_TEXTCLASSIFICATIONCONFIG.fields_by_name["sentiment_config"]._options = None
+_TEXTENTITYEXTRACTIONCONFIG.fields_by_name["annotation_spec_set"]._options = None
# @@protoc_insertion_point(module_scope)
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/proto/instruction.proto b/datalabeling/google/cloud/datalabeling_v1beta1/proto/instruction.proto
index 6cb7b50f3156..50839614a547 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/proto/instruction.proto
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/proto/instruction.proto
@@ -18,6 +18,7 @@ syntax = "proto3";
package google.cloud.datalabeling.v1beta1;
import "google/api/annotations.proto";
+import "google/api/resource.proto";
import "google/cloud/datalabeling/v1beta1/dataset.proto";
import "google/protobuf/timestamp.proto";
@@ -26,12 +27,13 @@ option java_multiple_files = true;
option java_package = "com.google.cloud.datalabeling.v1beta1";
// Instruction of how to perform the labeling task for human operators.
-// Currently two types of instruction are supported - CSV file and PDF.
-// One of the two types instruction must be provided.
-// CSV file is only supported for image classification task. Instructions for
-// other task should be provided as PDF.
-// For image classification, CSV and PDF can be provided at the same time.
+// Currently only PDF instruction is supported.
message Instruction {
+ option (google.api.resource) = {
+ type: "datalabeling.googleapis.com/Instruction"
+ pattern: "projects/{project}/instructions/{instruction}"
+ };
+
// Output only. Instruction resource name, format:
// projects/{project_id}/instructions/{instruction_id}
string name = 1;
@@ -52,15 +54,14 @@ message Instruction {
// Required. The data type of this instruction.
DataType data_type = 6;
- // One of CSV or PDF instruction is required.
+ // Deprecated: this instruction format is not supported any more.
// Instruction from a CSV file, such as for classification task.
// The CSV file should have exact two columns, in the following format:
//
// * The first column is labeled data, such as an image reference, text.
// * The second column is comma separated labels associated with data.
- CsvInstruction csv_instruction = 7;
+ CsvInstruction csv_instruction = 7 [deprecated = true];
- // One of CSV or PDF instruction is required.
// Instruction from a PDF document. The PDF should be in a Cloud Storage
// bucket.
PdfInstruction pdf_instruction = 9;
@@ -70,6 +71,7 @@ message Instruction {
repeated string blocking_resources = 10;
}
+// Deprecated: this instruction format is not supported any more.
// Instruction from a CSV file.
message CsvInstruction {
// CSV file for the instruction. Only gcs path is allowed.
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/proto/instruction_pb2.py b/datalabeling/google/cloud/datalabeling_v1beta1/proto/instruction_pb2.py
index 7365416f6704..f6d0e0bf4ae8 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/proto/instruction_pb2.py
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/proto/instruction_pb2.py
@@ -16,6 +16,7 @@
from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
+from google.api import resource_pb2 as google_dot_api_dot_resource__pb2
from google.cloud.datalabeling_v1beta1.proto import (
dataset_pb2 as google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_dataset__pb2,
)
@@ -30,10 +31,11 @@
"\n%com.google.cloud.datalabeling.v1beta1P\001ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabeling"
),
serialized_pb=_b(
- '\n9google/cloud/datalabeling_v1beta1/proto/instruction.proto\x12!google.cloud.datalabeling.v1beta1\x1a\x1cgoogle/api/annotations.proto\x1a\x35google/cloud/datalabeling_v1beta1/proto/dataset.proto\x1a\x1fgoogle/protobuf/timestamp.proto"\x9c\x03\n\x0bInstruction\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12/\n\x0b\x63reate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0bupdate_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12>\n\tdata_type\x18\x06 \x01(\x0e\x32+.google.cloud.datalabeling.v1beta1.DataType\x12J\n\x0f\x63sv_instruction\x18\x07 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.CsvInstruction\x12J\n\x0fpdf_instruction\x18\t \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.PdfInstruction\x12\x1a\n\x12\x62locking_resources\x18\n \x03(\t"&\n\x0e\x43svInstruction\x12\x14\n\x0cgcs_file_uri\x18\x01 \x01(\t"&\n\x0ePdfInstruction\x12\x14\n\x0cgcs_file_uri\x18\x01 \x01(\tBx\n%com.google.cloud.datalabeling.v1beta1P\x01ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabelingb\x06proto3'
+ '\n9google/cloud/datalabeling_v1beta1/proto/instruction.proto\x12!google.cloud.datalabeling.v1beta1\x1a\x1cgoogle/api/annotations.proto\x1a\x19google/api/resource.proto\x1a\x35google/cloud/datalabeling_v1beta1/proto/dataset.proto\x1a\x1fgoogle/protobuf/timestamp.proto"\xfd\x03\n\x0bInstruction\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12/\n\x0b\x63reate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0bupdate_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12>\n\tdata_type\x18\x06 \x01(\x0e\x32+.google.cloud.datalabeling.v1beta1.DataType\x12N\n\x0f\x63sv_instruction\x18\x07 \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.CsvInstructionB\x02\x18\x01\x12J\n\x0fpdf_instruction\x18\t \x01(\x0b\x32\x31.google.cloud.datalabeling.v1beta1.PdfInstruction\x12\x1a\n\x12\x62locking_resources\x18\n \x03(\t:[\xea\x41X\n\'datalabeling.googleapis.com/Instruction\x12-projects/{project}/instructions/{instruction}"&\n\x0e\x43svInstruction\x12\x14\n\x0cgcs_file_uri\x18\x01 \x01(\t"&\n\x0ePdfInstruction\x12\x14\n\x0cgcs_file_uri\x18\x01 \x01(\tBx\n%com.google.cloud.datalabeling.v1beta1P\x01ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabelingb\x06proto3'
),
dependencies=[
google_dot_api_dot_annotations__pb2.DESCRIPTOR,
+ google_dot_api_dot_resource__pb2.DESCRIPTOR,
google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_dataset__pb2.DESCRIPTOR,
google_dot_protobuf_dot_timestamp__pb2.DESCRIPTOR,
],
@@ -170,7 +172,7 @@
containing_type=None,
is_extension=False,
extension_scope=None,
- serialized_options=None,
+ serialized_options=_b("\030\001"),
file=DESCRIPTOR,
),
_descriptor.FieldDescriptor(
@@ -213,13 +215,15 @@
extensions=[],
nested_types=[],
enum_types=[],
- serialized_options=None,
+ serialized_options=_b(
+ "\352AX\n'datalabeling.googleapis.com/Instruction\022-projects/{project}/instructions/{instruction}"
+ ),
is_extendable=False,
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=215,
- serialized_end=627,
+ serialized_start=242,
+ serialized_end=751,
)
@@ -257,8 +261,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=629,
- serialized_end=667,
+ serialized_start=753,
+ serialized_end=791,
)
@@ -296,8 +300,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=669,
- serialized_end=707,
+ serialized_start=793,
+ serialized_end=831,
)
_INSTRUCTION.fields_by_name[
@@ -324,12 +328,8 @@
dict(
DESCRIPTOR=_INSTRUCTION,
__module__="google.cloud.datalabeling_v1beta1.proto.instruction_pb2",
- __doc__="""Instruction of how to perform the labeling task for human operators.
- Currently two types of instruction are supported - CSV file and PDF. One
- of the two types instruction must be provided. CSV file is only
- supported for image classification task. Instructions for other task
- should be provided as PDF. For image classification, CSV and PDF can be
- provided at the same time.
+ __doc__="""Instruction of how to perform the labeling task for human
+ operators. Currently only PDF instruction is supported.
Attributes:
@@ -349,15 +349,15 @@
data_type:
Required. The data type of this instruction.
csv_instruction:
- One of CSV or PDF instruction is required. Instruction from a
- CSV file, such as for classification task. The CSV file should
- have exact two columns, in the following format: - The first
- column is labeled data, such as an image reference, text. -
- The second column is comma separated labels associated with
- data.
+ Deprecated: this instruction format is not supported any more.
+ Instruction from a CSV file, such as for classification task.
+ The CSV file should have exact two columns, in the following
+ format: - The first column is labeled data, such as an image
+ reference, text. - The second column is comma separated
+ labels associated with data.
pdf_instruction:
- One of CSV or PDF instruction is required. Instruction from a
- PDF document. The PDF should be in a Cloud Storage bucket.
+ Instruction from a PDF document. The PDF should be in a Cloud
+ Storage bucket.
blocking_resources:
Output only. The names of any related resources that are
blocking changes to the instruction.
@@ -373,7 +373,8 @@
dict(
DESCRIPTOR=_CSVINSTRUCTION,
__module__="google.cloud.datalabeling_v1beta1.proto.instruction_pb2",
- __doc__="""Instruction from a CSV file.
+ __doc__="""Deprecated: this instruction format is not supported any
+ more. Instruction from a CSV file.
Attributes:
@@ -405,4 +406,6 @@
DESCRIPTOR._options = None
+_INSTRUCTION.fields_by_name["csv_instruction"]._options = None
+_INSTRUCTION._options = None
# @@protoc_insertion_point(module_scope)
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/proto/operations.proto b/datalabeling/google/cloud/datalabeling_v1beta1/proto/operations.proto
index 80371d0e2322..7f0692443860 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/proto/operations.proto
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/proto/operations.proto
@@ -18,6 +18,7 @@ syntax = "proto3";
package google.cloud.datalabeling.v1beta1;
import "google/api/annotations.proto";
+import "google/api/resource.proto";
import "google/cloud/datalabeling/v1beta1/dataset.proto";
import "google/cloud/datalabeling/v1beta1/human_annotation_config.proto";
import "google/protobuf/timestamp.proto";
@@ -42,7 +43,7 @@ message ImportDataOperationResponse {
// Response used for ExportDataset longrunning operation.
message ExportDataOperationResponse {
// Ouptut only. The name of dataset.
- // "projects/*/datasets/*/Datasets/*"
+ // "projects/*/datasets/*"
string dataset = 1;
// Output only. Total number of examples requested to export
@@ -60,7 +61,7 @@ message ExportDataOperationResponse {
// Metadata of an ImportData operation.
message ImportDataOperationMetadata {
- // Ouptut only. The name of imported dataset.
+ // Output only. The name of imported dataset.
// "projects/*/datasets/*"
string dataset = 1;
@@ -76,7 +77,7 @@ message ImportDataOperationMetadata {
// Metadata of an ExportData operation.
message ExportDataOperationMetadata {
// Output only. The name of dataset to be exported.
- // "projects/*/datasets/*/Datasets/*"
+ // "projects/*/datasets/*"
string dataset = 1;
// Output only. Partial failures encountered.
@@ -89,7 +90,7 @@ message ExportDataOperationMetadata {
}
// Metadata of a labeling operation, such as LabelImage or LabelVideo.
-// Next tag: 18
+// Next tag: 20
message LabelOperationMetadata {
// Ouptut only. Details of specific label operation.
oneof details {
@@ -103,8 +104,7 @@ message LabelOperationMetadata {
LabelImageBoundingPolyOperationMetadata image_bounding_poly_details = 11;
// Details of label image oriented bounding box operation.
- LabelImageOrientedBoundingBoxOperationMetadata
- image_oriented_bounding_box_details = 14;
+ LabelImageOrientedBoundingBoxOperationMetadata image_oriented_bounding_box_details = 14;
// Details of label image polyline operation.
LabelImagePolylineOperationMetadata image_polyline_details = 12;
@@ -116,8 +116,7 @@ message LabelOperationMetadata {
LabelVideoClassificationOperationMetadata video_classification_details = 5;
// Details of label video object detection operation.
- LabelVideoObjectDetectionOperationMetadata video_object_detection_details =
- 6;
+ LabelVideoObjectDetectionOperationMetadata video_object_detection_details = 6;
// Details of label video object tracking operation.
LabelVideoObjectTrackingOperationMetadata video_object_tracking_details = 7;
@@ -129,8 +128,7 @@ message LabelOperationMetadata {
LabelTextClassificationOperationMetadata text_classification_details = 9;
// Details of label text entity extraction operation.
- LabelTextEntityExtractionOperationMetadata text_entity_extraction_details =
- 13;
+ LabelTextEntityExtractionOperationMetadata text_entity_extraction_details = 13;
}
// Output only. Progress of label operation. Range: [0, 100].
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/proto/operations_pb2.py b/datalabeling/google/cloud/datalabeling_v1beta1/proto/operations_pb2.py
index 78c02a3477c0..9c7f6f6cff98 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/proto/operations_pb2.py
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/proto/operations_pb2.py
@@ -16,6 +16,7 @@
from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
+from google.api import resource_pb2 as google_dot_api_dot_resource__pb2
from google.cloud.datalabeling_v1beta1.proto import (
dataset_pb2 as google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_dataset__pb2,
)
@@ -34,10 +35,11 @@
"\n%com.google.cloud.datalabeling.v1beta1P\001ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabeling"
),
serialized_pb=_b(
- '\n8google/cloud/datalabeling_v1beta1/proto/operations.proto\x12!google.cloud.datalabeling.v1beta1\x1a\x1cgoogle/api/annotations.proto\x1a\x35google/cloud/datalabeling_v1beta1/proto/dataset.proto\x1a\x45google/cloud/datalabeling_v1beta1/proto/human_annotation_config.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/rpc/status.proto"Y\n\x1bImportDataOperationResponse\x12\x0f\n\x07\x64\x61taset\x18\x01 \x01(\t\x12\x13\n\x0btotal_count\x18\x02 \x01(\x05\x12\x14\n\x0cimport_count\x18\x03 \x01(\x05"\xe5\x01\n\x1b\x45xportDataOperationResponse\x12\x0f\n\x07\x64\x61taset\x18\x01 \x01(\t\x12\x13\n\x0btotal_count\x18\x02 \x01(\x05\x12\x14\n\x0c\x65xport_count\x18\x03 \x01(\x05\x12\x42\n\x0blabel_stats\x18\x04 \x01(\x0b\x32-.google.cloud.datalabeling.v1beta1.LabelStats\x12\x46\n\routput_config\x18\x05 \x01(\x0b\x32/.google.cloud.datalabeling.v1beta1.OutputConfig"\x8d\x01\n\x1bImportDataOperationMetadata\x12\x0f\n\x07\x64\x61taset\x18\x01 \x01(\t\x12,\n\x10partial_failures\x18\x02 \x03(\x0b\x32\x12.google.rpc.Status\x12/\n\x0b\x63reate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp"\x8d\x01\n\x1b\x45xportDataOperationMetadata\x12\x0f\n\x07\x64\x61taset\x18\x01 \x01(\t\x12,\n\x10partial_failures\x18\x02 \x03(\x0b\x32\x12.google.rpc.Status\x12/\n\x0b\x63reate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp"\x8c\x0c\n\x16LabelOperationMetadata\x12t\n\x1cimage_classification_details\x18\x03 \x01(\x0b\x32L.google.cloud.datalabeling.v1beta1.LabelImageClassificationOperationMetadataH\x00\x12o\n\x1aimage_bounding_box_details\x18\x04 \x01(\x0b\x32I.google.cloud.datalabeling.v1beta1.LabelImageBoundingBoxOperationMetadataH\x00\x12q\n\x1bimage_bounding_poly_details\x18\x0b \x01(\x0b\x32J.google.cloud.datalabeling.v1beta1.LabelImageBoundingPolyOperationMetadataH\x00\x12\x80\x01\n#image_oriented_bounding_box_details\x18\x0e \x01(\x0b\x32Q.google.cloud.datalabeling.v1beta1.LabelImageOrientedBoundingBoxOperationMetadataH\x00\x12h\n\x16image_polyline_details\x18\x0c \x01(\x0b\x32\x46.google.cloud.datalabeling.v1beta1.LabelImagePolylineOperationMetadataH\x00\x12p\n\x1aimage_segmentation_details\x18\x0f \x01(\x0b\x32J.google.cloud.datalabeling.v1beta1.LabelImageSegmentationOperationMetadataH\x00\x12t\n\x1cvideo_classification_details\x18\x05 \x01(\x0b\x32L.google.cloud.datalabeling.v1beta1.LabelVideoClassificationOperationMetadataH\x00\x12w\n\x1evideo_object_detection_details\x18\x06 \x01(\x0b\x32M.google.cloud.datalabeling.v1beta1.LabelVideoObjectDetectionOperationMetadataH\x00\x12u\n\x1dvideo_object_tracking_details\x18\x07 \x01(\x0b\x32L.google.cloud.datalabeling.v1beta1.LabelVideoObjectTrackingOperationMetadataH\x00\x12\x62\n\x13video_event_details\x18\x08 \x01(\x0b\x32\x43.google.cloud.datalabeling.v1beta1.LabelVideoEventOperationMetadataH\x00\x12r\n\x1btext_classification_details\x18\t \x01(\x0b\x32K.google.cloud.datalabeling.v1beta1.LabelTextClassificationOperationMetadataH\x00\x12w\n\x1etext_entity_extraction_details\x18\r \x01(\x0b\x32M.google.cloud.datalabeling.v1beta1.LabelTextEntityExtractionOperationMetadataH\x00\x12\x18\n\x10progress_percent\x18\x01 \x01(\x05\x12,\n\x10partial_failures\x18\x02 \x03(\x0b\x32\x12.google.rpc.Status\x12/\n\x0b\x63reate_time\x18\x10 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\t\n\x07\x64\x65tails"{\n)LabelImageClassificationOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"x\n&LabelImageBoundingBoxOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"\x80\x01\n.LabelImageOrientedBoundingBoxOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"y\n\'LabelImageBoundingPolyOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"u\n#LabelImagePolylineOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"y\n\'LabelImageSegmentationOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"{\n)LabelVideoClassificationOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"|\n*LabelVideoObjectDetectionOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"{\n)LabelVideoObjectTrackingOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"r\n LabelVideoEventOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"z\n(LabelTextClassificationOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"|\n*LabelTextEntityExtractionOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"\x8f\x01\n\x19\x43reateInstructionMetadata\x12\x13\n\x0binstruction\x18\x01 \x01(\t\x12,\n\x10partial_failures\x18\x02 \x03(\x0b\x32\x12.google.rpc.Status\x12/\n\x0b\x63reate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampBx\n%com.google.cloud.datalabeling.v1beta1P\x01ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabelingb\x06proto3'
+ '\n8google/cloud/datalabeling_v1beta1/proto/operations.proto\x12!google.cloud.datalabeling.v1beta1\x1a\x1cgoogle/api/annotations.proto\x1a\x19google/api/resource.proto\x1a\x35google/cloud/datalabeling_v1beta1/proto/dataset.proto\x1a\x45google/cloud/datalabeling_v1beta1/proto/human_annotation_config.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/rpc/status.proto"Y\n\x1bImportDataOperationResponse\x12\x0f\n\x07\x64\x61taset\x18\x01 \x01(\t\x12\x13\n\x0btotal_count\x18\x02 \x01(\x05\x12\x14\n\x0cimport_count\x18\x03 \x01(\x05"\xe5\x01\n\x1b\x45xportDataOperationResponse\x12\x0f\n\x07\x64\x61taset\x18\x01 \x01(\t\x12\x13\n\x0btotal_count\x18\x02 \x01(\x05\x12\x14\n\x0c\x65xport_count\x18\x03 \x01(\x05\x12\x42\n\x0blabel_stats\x18\x04 \x01(\x0b\x32-.google.cloud.datalabeling.v1beta1.LabelStats\x12\x46\n\routput_config\x18\x05 \x01(\x0b\x32/.google.cloud.datalabeling.v1beta1.OutputConfig"\x8d\x01\n\x1bImportDataOperationMetadata\x12\x0f\n\x07\x64\x61taset\x18\x01 \x01(\t\x12,\n\x10partial_failures\x18\x02 \x03(\x0b\x32\x12.google.rpc.Status\x12/\n\x0b\x63reate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp"\x8d\x01\n\x1b\x45xportDataOperationMetadata\x12\x0f\n\x07\x64\x61taset\x18\x01 \x01(\t\x12,\n\x10partial_failures\x18\x02 \x03(\x0b\x32\x12.google.rpc.Status\x12/\n\x0b\x63reate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp"\x8c\x0c\n\x16LabelOperationMetadata\x12t\n\x1cimage_classification_details\x18\x03 \x01(\x0b\x32L.google.cloud.datalabeling.v1beta1.LabelImageClassificationOperationMetadataH\x00\x12o\n\x1aimage_bounding_box_details\x18\x04 \x01(\x0b\x32I.google.cloud.datalabeling.v1beta1.LabelImageBoundingBoxOperationMetadataH\x00\x12q\n\x1bimage_bounding_poly_details\x18\x0b \x01(\x0b\x32J.google.cloud.datalabeling.v1beta1.LabelImageBoundingPolyOperationMetadataH\x00\x12\x80\x01\n#image_oriented_bounding_box_details\x18\x0e \x01(\x0b\x32Q.google.cloud.datalabeling.v1beta1.LabelImageOrientedBoundingBoxOperationMetadataH\x00\x12h\n\x16image_polyline_details\x18\x0c \x01(\x0b\x32\x46.google.cloud.datalabeling.v1beta1.LabelImagePolylineOperationMetadataH\x00\x12p\n\x1aimage_segmentation_details\x18\x0f \x01(\x0b\x32J.google.cloud.datalabeling.v1beta1.LabelImageSegmentationOperationMetadataH\x00\x12t\n\x1cvideo_classification_details\x18\x05 \x01(\x0b\x32L.google.cloud.datalabeling.v1beta1.LabelVideoClassificationOperationMetadataH\x00\x12w\n\x1evideo_object_detection_details\x18\x06 \x01(\x0b\x32M.google.cloud.datalabeling.v1beta1.LabelVideoObjectDetectionOperationMetadataH\x00\x12u\n\x1dvideo_object_tracking_details\x18\x07 \x01(\x0b\x32L.google.cloud.datalabeling.v1beta1.LabelVideoObjectTrackingOperationMetadataH\x00\x12\x62\n\x13video_event_details\x18\x08 \x01(\x0b\x32\x43.google.cloud.datalabeling.v1beta1.LabelVideoEventOperationMetadataH\x00\x12r\n\x1btext_classification_details\x18\t \x01(\x0b\x32K.google.cloud.datalabeling.v1beta1.LabelTextClassificationOperationMetadataH\x00\x12w\n\x1etext_entity_extraction_details\x18\r \x01(\x0b\x32M.google.cloud.datalabeling.v1beta1.LabelTextEntityExtractionOperationMetadataH\x00\x12\x18\n\x10progress_percent\x18\x01 \x01(\x05\x12,\n\x10partial_failures\x18\x02 \x03(\x0b\x32\x12.google.rpc.Status\x12/\n\x0b\x63reate_time\x18\x10 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\t\n\x07\x64\x65tails"{\n)LabelImageClassificationOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"x\n&LabelImageBoundingBoxOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"\x80\x01\n.LabelImageOrientedBoundingBoxOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"y\n\'LabelImageBoundingPolyOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"u\n#LabelImagePolylineOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"y\n\'LabelImageSegmentationOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"{\n)LabelVideoClassificationOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"|\n*LabelVideoObjectDetectionOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"{\n)LabelVideoObjectTrackingOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"r\n LabelVideoEventOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"z\n(LabelTextClassificationOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"|\n*LabelTextEntityExtractionOperationMetadata\x12N\n\x0c\x62\x61sic_config\x18\x01 \x01(\x0b\x32\x38.google.cloud.datalabeling.v1beta1.HumanAnnotationConfig"\x8f\x01\n\x19\x43reateInstructionMetadata\x12\x13\n\x0binstruction\x18\x01 \x01(\t\x12,\n\x10partial_failures\x18\x02 \x03(\x0b\x32\x12.google.rpc.Status\x12/\n\x0b\x63reate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampBx\n%com.google.cloud.datalabeling.v1beta1P\x01ZMgoogle.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabelingb\x06proto3'
),
dependencies=[
google_dot_api_dot_annotations__pb2.DESCRIPTOR,
+ google_dot_api_dot_resource__pb2.DESCRIPTOR,
google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_dataset__pb2.DESCRIPTOR,
google_dot_cloud_dot_datalabeling__v1beta1_dot_proto_dot_human__annotation__config__pb2.DESCRIPTOR,
google_dot_protobuf_dot_timestamp__pb2.DESCRIPTOR,
@@ -116,8 +118,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=309,
- serialized_end=398,
+ serialized_start=336,
+ serialized_end=425,
)
@@ -227,8 +229,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=401,
- serialized_end=630,
+ serialized_start=428,
+ serialized_end=657,
)
@@ -302,8 +304,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=633,
- serialized_end=774,
+ serialized_start=660,
+ serialized_end=801,
)
@@ -377,8 +379,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=777,
- serialized_end=918,
+ serialized_start=804,
+ serialized_end=945,
)
@@ -676,8 +678,8 @@
fields=[],
)
],
- serialized_start=921,
- serialized_end=2469,
+ serialized_start=948,
+ serialized_end=2496,
)
@@ -715,8 +717,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=2471,
- serialized_end=2594,
+ serialized_start=2498,
+ serialized_end=2621,
)
@@ -754,8 +756,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=2596,
- serialized_end=2716,
+ serialized_start=2623,
+ serialized_end=2743,
)
@@ -793,8 +795,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=2719,
- serialized_end=2847,
+ serialized_start=2746,
+ serialized_end=2874,
)
@@ -832,8 +834,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=2849,
- serialized_end=2970,
+ serialized_start=2876,
+ serialized_end=2997,
)
@@ -871,8 +873,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=2972,
- serialized_end=3089,
+ serialized_start=2999,
+ serialized_end=3116,
)
@@ -910,8 +912,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=3091,
- serialized_end=3212,
+ serialized_start=3118,
+ serialized_end=3239,
)
@@ -949,8 +951,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=3214,
- serialized_end=3337,
+ serialized_start=3241,
+ serialized_end=3364,
)
@@ -988,8 +990,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=3339,
- serialized_end=3463,
+ serialized_start=3366,
+ serialized_end=3490,
)
@@ -1027,8 +1029,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=3465,
- serialized_end=3588,
+ serialized_start=3492,
+ serialized_end=3615,
)
@@ -1066,8 +1068,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=3590,
- serialized_end=3704,
+ serialized_start=3617,
+ serialized_end=3731,
)
@@ -1105,8 +1107,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=3706,
- serialized_end=3828,
+ serialized_start=3733,
+ serialized_end=3855,
)
@@ -1144,8 +1146,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=3830,
- serialized_end=3954,
+ serialized_start=3857,
+ serialized_end=3981,
)
@@ -1219,8 +1221,8 @@
syntax="proto3",
extension_ranges=[],
oneofs=[],
- serialized_start=3957,
- serialized_end=4100,
+ serialized_start=3984,
+ serialized_end=4127,
)
_EXPORTDATAOPERATIONRESPONSE.fields_by_name[
@@ -1512,8 +1514,7 @@
Attributes:
dataset:
- Ouptut only. The name of dataset.
- "projects/*/datasets/*/Datasets/\*"
+ Ouptut only. The name of dataset. "projects/*/datasets/*"
total_count:
Output only. Total number of examples requested to export
export_count:
@@ -1540,7 +1541,7 @@
Attributes:
dataset:
- Ouptut only. The name of imported dataset.
+ Output only. The name of imported dataset.
"projects/*/datasets/*"
partial_failures:
Output only. Partial failures encountered. E.g. single files
@@ -1567,7 +1568,7 @@
Attributes:
dataset:
Output only. The name of dataset to be exported.
- "projects/*/datasets/*/Datasets/\*"
+ "projects/*/datasets/*"
partial_failures:
Output only. Partial failures encountered. E.g. single files
that couldn't be read. Status details field will contain
@@ -1587,8 +1588,8 @@
dict(
DESCRIPTOR=_LABELOPERATIONMETADATA,
__module__="google.cloud.datalabeling_v1beta1.proto.operations_pb2",
- __doc__="""Metadata of a labeling operation, such as LabelImage or LabelVideo. Next
- tag: 18
+ __doc__="""Metadata of a labeling operation, such as LabelImage or
+ LabelVideo. Next tag: 20
Attributes:
@@ -1674,7 +1675,8 @@
dict(
DESCRIPTOR=_LABELIMAGEORIENTEDBOUNDINGBOXOPERATIONMETADATA,
__module__="google.cloud.datalabeling_v1beta1.proto.operations_pb2",
- __doc__="""Details of a LabelImageOrientedBoundingBox operation metadata.
+ __doc__="""Details of a LabelImageOrientedBoundingBox operation
+ metadata.
Attributes:
diff --git a/datalabeling/google/cloud/datalabeling_v1beta1/types.py b/datalabeling/google/cloud/datalabeling_v1beta1/types.py
index 45aef871a7c1..6d9d3134d5ab 100644
--- a/datalabeling/google/cloud/datalabeling_v1beta1/types.py
+++ b/datalabeling/google/cloud/datalabeling_v1beta1/types.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
-# Copyright 2019 Google LLC
+# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
diff --git a/datalabeling/synth.metadata b/datalabeling/synth.metadata
index 95de4906de7c..68b8751eed0d 100644
--- a/datalabeling/synth.metadata
+++ b/datalabeling/synth.metadata
@@ -1,19 +1,20 @@
{
- "updateTime": "2020-01-03T13:16:22.088624Z",
+ "updateTime": "2020-01-29T13:20:15.730609Z",
"sources": [
{
"generator": {
"name": "artman",
- "version": "0.43.0",
- "dockerImage": "googleapis/artman@sha256:264654a37596a44b0668b8ce6ac41082d713f6ee150b3fc6425fa78cc64e4f20"
+ "version": "0.44.4",
+ "dockerImage": "googleapis/artman@sha256:19e945954fc960a4bdfee6cb34695898ab21a8cf0bac063ee39b91f00a1faec8"
}
},
{
"git": {
"name": "googleapis",
"remote": "https://github.com/googleapis/googleapis.git",
- "sha": "4d45a6399e9444fbddaeb1c86aabfde210723714",
- "internalRef": "287908369"
+ "sha": "cf3b61102ed5f36b827bc82ec39be09525f018c8",
+ "internalRef": "292034635",
+ "log": "cf3b61102ed5f36b827bc82ec39be09525f018c8\n Fix to protos for v1p1beta1 release of Cloud Security Command Center\n\nPiperOrigin-RevId: 292034635\n\n4e1cfaa7c0fede9e65d64213ca3da1b1255816c0\nUpdate the public proto to support UTF-8 encoded id for CatalogService API, increase the ListCatalogItems deadline to 300s and some minor documentation change\n\nPiperOrigin-RevId: 292030970\n\n9c483584f8fd5a1b862ae07973f4cc7bb3e46648\nasset: add annotations to v1p1beta1\n\nPiperOrigin-RevId: 292009868\n\ne19209fac29731d0baf6d9ac23da1164f7bdca24\nAdd the google.rpc.context.AttributeContext message to the open source\ndirectories.\n\nPiperOrigin-RevId: 291999930\n\nae5662960573f279502bf98a108a35ba1175e782\noslogin API: move file level option on top of the file to avoid protobuf.js bug.\n\nPiperOrigin-RevId: 291990506\n\neba3897fff7c49ed85d3c47fc96fe96e47f6f684\nAdd cc_proto_library and cc_grpc_library targets for Spanner and IAM protos.\n\nPiperOrigin-RevId: 291988651\n\n8e981acfd9b97ea2f312f11bbaa7b6c16e412dea\nBeta launch for PersonDetection and FaceDetection features.\n\nPiperOrigin-RevId: 291821782\n\n994e067fae3b21e195f7da932b08fff806d70b5d\nasset: add annotations to v1p2beta1\n\nPiperOrigin-RevId: 291815259\n\n244e1d2c89346ca2e0701b39e65552330d68545a\nAdd Playable Locations service\n\nPiperOrigin-RevId: 291806349\n\n909f8f67963daf45dd88d020877fb9029b76788d\nasset: add annotations to v1beta2\n\nPiperOrigin-RevId: 291805301\n\n3c39a1d6e23c1ef63c7fba4019c25e76c40dfe19\nKMS: add file-level message for CryptoKeyPath, it is defined in gapic yaml but not\nin proto files.\n\nPiperOrigin-RevId: 291420695\n\nc6f3f350b8387f8d1b85ed4506f30187ebaaddc3\ncontaineranalysis: update v1beta1 and bazel build with annotations\n\nPiperOrigin-RevId: 291401900\n\n92887d74b44e4e636252b7b8477d0d2570cd82db\nfix: fix the location of grpc config file.\n\nPiperOrigin-RevId: 291396015\n\ne26cab8afd19d396b929039dac5d874cf0b5336c\nexpr: add default_host and method_signature annotations to CelService\n\nPiperOrigin-RevId: 291240093\n\n06093ae3952441c34ec176d1f7431b8765cec0be\nirm: fix v1alpha2 bazel build by adding missing proto imports\n\nPiperOrigin-RevId: 291227940\n\na8a2514af326e4673063f9a3c9d0ef1091c87e6c\nAdd proto annotation for cloud/irm API\n\nPiperOrigin-RevId: 291217859\n\n8d16f76de065f530d395a4c7eabbf766d6a120fd\nGenerate Memcache v1beta2 API protos and gRPC ServiceConfig files\n\nPiperOrigin-RevId: 291008516\n\n3af1dabd93df9a9f17bf3624d3b875c11235360b\ngrafeas: Add containeranalysis default_host to Grafeas service\n\nPiperOrigin-RevId: 290965849\n\nbe2663fa95e31cba67d0cd62611a6674db9f74b7\nfix(google/maps/roads): add missing opening bracket\n\nPiperOrigin-RevId: 290964086\n\nfacc26550a0af0696e0534bc9cae9df14275aa7c\nUpdating v2 protos with the latest inline documentation (in comments) and adding a per-service .yaml file.\n\nPiperOrigin-RevId: 290952261\n\ncda99c1f7dc5e4ca9b1caeae1dc330838cbc1461\nChange api_name to 'asset' for v1p1beta1\n\nPiperOrigin-RevId: 290800639\n\n94e9e90c303a820ce40643d9129e7f0d2054e8a1\nAdds Google Maps Road service\n\nPiperOrigin-RevId: 290795667\n\na3b23dcb2eaecce98c600c7d009451bdec52dbda\nrpc: new message ErrorInfo, other comment updates\n\nPiperOrigin-RevId: 290781668\n\n26420ef4e46c37f193c0fbe53d6ebac481de460e\nAdd proto definition for Org Policy v1.\n\nPiperOrigin-RevId: 290771923\n\n7f0dab8177cf371ae019a082e2512de7ac102888\nPublish Routes Preferred API v1 service definitions.\n\nPiperOrigin-RevId: 290326986\n\nad6e508d0728e1d1bca6e3f328cd562718cb772d\nFix: Qualify resource type references with \"jobs.googleapis.com/\"\n\nPiperOrigin-RevId: 290285762\n\n58e770d568a2b78168ddc19a874178fee8265a9d\ncts client library\n\nPiperOrigin-RevId: 290146169\n\naf9daa4c3b4c4a8b7133b81588dd9ffd37270af2\nAdd more programming language options to public proto\n\nPiperOrigin-RevId: 290144091\n\nd9f2bbf2df301ef84641d4cec7c828736a0bd907\ntalent: add missing resource.proto dep to Bazel build target\n\nPiperOrigin-RevId: 290143164\n\n3b3968237451d027b42471cd28884a5a1faed6c7\nAnnotate Talent API.\nAdd gRPC service config for retry.\nUpdate bazel file with google.api.resource dependency.\n\nPiperOrigin-RevId: 290125172\n\n0735b4b096872960568d1f366bfa75b7b0e1f1a3\nWeekly library update.\n\nPiperOrigin-RevId: 289939042\n\n8760d3d9a4543d7f9c0d1c7870aca08b116e4095\nWeekly library update.\n\nPiperOrigin-RevId: 289939020\n\n8607df842f782a901805187e02fff598145b0b0e\nChange Talent API timeout to 30s.\n\nPiperOrigin-RevId: 289912621\n\n908155991fe32570653bcb72ecfdcfc896642f41\nAdd Recommendations AI V1Beta1\n\nPiperOrigin-RevId: 289901914\n\n5c9a8c2bebd8b71aa66d1cc473edfaac837a2c78\nAdding no-arg method signatures for ListBillingAccounts and ListServices\n\nPiperOrigin-RevId: 289891136\n\n50b0e8286ac988b0593bd890eb31fef6ea2f5767\nlongrunning: add grpc service config and default_host annotation to operations.proto\n\nPiperOrigin-RevId: 289876944\n\n6cac27dabe51c54807b0401698c32d34998948a9\n Updating default deadline for Cloud Security Command Center's v1 APIs.\n\nPiperOrigin-RevId: 289875412\n\nd99df0d67057a233c711187e0689baa4f8e6333d\nFix: Correct spelling in C# namespace option\n\nPiperOrigin-RevId: 289709813\n\n2fa8d48165cc48e35b0c62e6f7bdade12229326c\nfeat: Publish Recommender v1 to GitHub.\n\nCommitter: @lukesneeringer\nPiperOrigin-RevId: 289619243\n\n9118db63d1ab493a2e44a3b4973fde810a835c49\nfirestore: don't retry reads that fail with Aborted\n\nFor transaction reads that fail with ABORTED, we need to rollback and start a new transaction. Our current configuration makes it so that GAPIC retries ABORTED reads multiple times without making any progress. Instead, we should retry at the transaction level.\n\nPiperOrigin-RevId: 289532382\n\n1dbfd3fe4330790b1e99c0bb20beb692f1e20b8a\nFix bazel build\nAdd other langauges (Java was already there) for bigquery/storage/v1alpha2 api.\n\nPiperOrigin-RevId: 289519766\n\nc06599cdd7d11f8d3fd25f8d3249e5bb1a3d5d73\nInitial commit of google.cloud.policytroubleshooter API, The API helps in troubleshooting GCP policies. Refer https://cloud.google.com/iam/docs/troubleshooting-access for more information\n\nPiperOrigin-RevId: 289491444\n\nfce7d80fa16ea241e87f7bc33d68595422e94ecd\nDo not pass samples option for Artman config of recommender v1 API.\n\nPiperOrigin-RevId: 289477403\n\nef179e8c61436297e6bb124352e47e45c8c80cb1\nfix: Address missing Bazel dependency.\n\nBazel builds stopped working in 06ec6d5 because\nthe google/longrunning/operations.proto file took\nan import from google/api/client.proto, but that\nimport was not added to BUILD.bazel.\n\nCommitter: @lukesneeringer\nPiperOrigin-RevId: 289446074\n\n8841655b242c84fd691d77d7bcf21b61044f01ff\nMigrate Data Labeling v1beta1 to GAPIC v2.\n\nCommitter: @lukesneeringer\nPiperOrigin-RevId: 289446026\n\n06ec6d5d053fff299eaa6eaa38afdd36c5e2fc68\nAdd annotations to google.longrunning.v1\n\nCommitter: @lukesneeringer\nPiperOrigin-RevId: 289413169\n\n0480cf40be1d3cc231f4268a2fdb36a8dd60e641\nMigrate IAM Admin v1 to GAPIC v2.\n\nCommitter: @lukesneeringer\nPiperOrigin-RevId: 289411084\n\n1017173e9adeb858587639af61889ad970c728b1\nSpecify a C# namespace for BigQuery Connection v1beta1\n\nPiperOrigin-RevId: 289396763\n\nb08714b378e8e5b0c4ecdde73f92c36d6303b4b6\nfix: Integrate latest proto-docs-plugin fix.\nFixes dialogflow v2\n\nPiperOrigin-RevId: 289189004\n\n51217a67e79255ee1f2e70a6a3919df082513327\nCreate BUILD file for recommender v1\n\nPiperOrigin-RevId: 289183234\n\nacacd87263c0a60e458561b8b8ce9f67c760552a\nGenerate recommender v1 API protos and gRPC ServiceConfig files\n\nPiperOrigin-RevId: 289177510\n\n9d2f7133b97720b1fa3601f6dcd30760ba6d8a1e\nFix kokoro build script\n\nPiperOrigin-RevId: 289166315\n\nc43a67530d2a47a0220cad20ca8de39b3fbaf2c5\ncloudtasks: replace missing RPC timeout config for v2beta2 and v2beta3\n\nPiperOrigin-RevId: 289162391\n\n4cefc229a9197236fc0adf02d69b71c0c5cf59de\nSynchronize new proto/yaml changes.\n\nPiperOrigin-RevId: 289158456\n\n56f263fe959c50786dab42e3c61402d32d1417bd\nCatalog API: Adding config necessary to build client libraries\n\nPiperOrigin-RevId: 289149879\n\n4543762b23a57fc3c53d409efc3a9affd47b6ab3\nFix Bazel build\nbilling/v1 and dialogflow/v2 remain broken (not bazel-related issues).\nBilling has wrong configuration, dialogflow failure is caused by a bug in documentation plugin.\n\nPiperOrigin-RevId: 289140194\n\nc9dce519127b97e866ca133a01157f4ce27dcceb\nUpdate Bigtable docs\n\nPiperOrigin-RevId: 289114419\n\n802c5c5f2bf94c3facb011267d04e71942e0d09f\nMigrate DLP to proto annotations (but not GAPIC v2).\n\nCommitter: @lukesneeringer\nPiperOrigin-RevId: 289102579\n\n6357f30f2ec3cff1d8239d18b707ff9d438ea5da\nRemove gRPC configuration file that was in the wrong place.\n\nPiperOrigin-RevId: 289096111\n\n360a8792ed62f944109d7e22d613a04a010665b4\n Protos for v1p1beta1 release of Cloud Security Command Center\n\nPiperOrigin-RevId: 289011995\n\na79211c20c4f2807eec524d00123bf7c06ad3d6e\nRoll back containeranalysis v1 to GAPIC v1.\n\nCommitter: @lukesneeringer\nPiperOrigin-RevId: 288999068\n\n9e60345ba603e03484a8aaa33ce5ffa19c1c652b\nPublish Routes Preferred API v1 proto definitions.\n\nPiperOrigin-RevId: 288941399\n\nd52885b642ad2aa1f42b132ee62dbf49a73e1e24\nMigrate the service management API to GAPIC v2.\n\nCommitter: @lukesneeringer\nPiperOrigin-RevId: 288909426\n\n6ace586805c08896fef43e28a261337fcf3f022b\ncloudtasks: replace missing RPC timeout config\n\nPiperOrigin-RevId: 288783603\n\n51d906cabee4876b12497054b15b05d4a50ad027\nImport of Grafeas from Github.\n\nUpdate BUILD.bazel accordingly.\n\nPiperOrigin-RevId: 288783426\n\n5ef42bcd363ba0440f0ee65b3c80b499e9067ede\nMigrate Recommender v1beta1 to GAPIC v2.\n\nCommitter: @lukesneeringer\nPiperOrigin-RevId: 288713066\n\n94f986afd365b7d7e132315ddcd43d7af0e652fb\nMigrate Container Analysis v1 to GAPIC v2.\n\nCommitter: @lukesneeringer\nPiperOrigin-RevId: 288708382\n\n7a751a279184970d3b6ba90e4dd4d22a382a0747\nRemove Container Analysis v1alpha1 (nobody publishes it).\n\nCommitter: @lukesneeringer\nPiperOrigin-RevId: 288707473\n\n3c0d9c71242e70474b2b640e15bb0a435fd06ff0\nRemove specious annotation from BigQuery Data Transfer before\nanyone accidentally does anything that uses it.\n\nCommitter: @lukesneeringer\nPiperOrigin-RevId: 288701604\n\n1af307a4764bd415ef942ac5187fa1def043006f\nMigrate BigQuery Connection to GAPIC v2.\n\nCommitter: @lukesneeringer\nPiperOrigin-RevId: 288698681\n\n08b488e0660c59842a7dee0e3e2b65d9e3a514a9\nExposing cloud_catalog.proto (This API is already available through REST)\n\nPiperOrigin-RevId: 288625007\n\na613482977e11ac09fa47687a5d1b5a01efcf794\nUpdate the OS Login v1beta API description to render better in the UI.\n\nPiperOrigin-RevId: 288547940\n\n5e182b8d9943f1b17008d69d4c7e865dc83641a7\nUpdate the OS Login API description to render better in the UI.\n\nPiperOrigin-RevId: 288546443\n\ncb79155f596e0396dd900da93872be7066f6340d\nFix: Add a resource annotation for Agent\nFix: Correct the service name in annotations for Intent and SessionEntityType\n\nPiperOrigin-RevId: 288441307\n\nf7f6e9daec3315fd47cb638789bd8415bf4a27cc\nAdded cloud asset api v1p1beta1\n\nPiperOrigin-RevId: 288427239\n\nf2880f5b342c6345f3dcaad24fcb3c6ca9483654\nBilling account API: Adding config necessary to build client libraries\n\nPiperOrigin-RevId: 288351810\n\ndc250ffe071729f8f8bef9d6fd0fbbeb0254c666\nFix: Remove incorrect resource annotations in requests\n\nPiperOrigin-RevId: 288321208\n\n91ef2d9dd69807b0b79555f22566fb2d81e49ff9\nAdd GAPIC annotations to Cloud KMS (but do not migrate the GAPIC config yet).\n\nCommitter: @lukesneeringer\nPiperOrigin-RevId: 287999179\n\n"
}
},
{
@@ -38,3346 +39,70 @@
],
"newFiles": [
{
- "path": "setup.cfg"
- },
- {
- "path": "synth.py"
- },
- {
- "path": "MANIFEST.in"
- },
- {
- "path": ".repo-metadata.json"
- },
- {
- "path": ".flake8"
- },
- {
- "path": "setup.py"
- },
- {
- "path": ".coveragerc"
- },
- {
- "path": "noxfile.py"
- },
- {
- "path": "LICENSE"
- },
- {
- "path": "synth.metadata"
- },
- {
- "path": ".gitignore"
- },
- {
- "path": "README.rst"
- },
- {
- "path": "CHANGELOG.md"
- },
- {
- "path": ".nox/blacken/lib/python3.6/orig-prefix.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/no-global-site-packages.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/appdirs.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/toml.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/black.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/easy_install.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blackd.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/lib2to3_ex.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/cli-64.exe"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/py34compat.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/cli.exe"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/gui.exe"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/script.tmpl"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/version.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/site-patch.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/dist.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/gui-32.exe"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/script (dev).tmpl"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/namespaces.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/wheel.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/py31compat.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/cli-32.exe"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/build_meta.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/archive_util.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/package_index.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/config.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/depends.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/py33compat.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/extension.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/launch.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/installer.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_imp.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/py27compat.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/monkey.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_deprecation_warning.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/dep_util.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/msvc.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/ssl_support.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/unicode_utils.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/windows_support.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/sandbox.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/errors.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/gui-64.exe"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/glob.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/pyparsing.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/ordered_set.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/six.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/utils.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/specifiers.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/version.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/tags.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/_compat.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/_structures.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/__about__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/requirements.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/markers.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/__pycache__/_structures.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/__pycache__/version.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/__pycache__/utils.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/__pycache__/markers.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/__pycache__/__about__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/__pycache__/tags.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/__pycache__/requirements.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/__pycache__/_compat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/packaging/__pycache__/specifiers.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/__pycache__/pyparsing.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/__pycache__/ordered_set.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/_vendor/__pycache__/six.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/setopt.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/upload_docs.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/bdist_rpm.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/install_scripts.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/launcher manifest.xml"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/dist_info.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/alias.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/develop.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/install.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/bdist_wininst.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/build_clib.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/sdist.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/bdist_egg.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/rotate.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/register.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/install_lib.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/build_ext.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/py36compat.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/install_egg_info.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/egg_info.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/upload.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/test.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/easy_install.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/saveopts.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/build_py.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/easy_install.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/install.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/alias.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/bdist_egg.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/install_lib.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/bdist_wininst.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/upload_docs.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/rotate.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/sdist.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/build_ext.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/develop.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/register.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/test.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/dist_info.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/egg_info.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/install_scripts.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/bdist_rpm.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/setopt.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/saveopts.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/py36compat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/install_egg_info.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/upload.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/build_py.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/command/__pycache__/build_clib.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/py31compat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/py27compat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/package_index.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/dist.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/lib2to3_ex.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/py33compat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/extension.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/version.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/unicode_utils.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/installer.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/msvc.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/site-patch.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/namespaces.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/dep_util.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/glob.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/launch.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/monkey.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/errors.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/depends.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/py34compat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/_imp.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/windows_support.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/archive_util.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/config.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/sandbox.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/build_meta.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/_deprecation_warning.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/ssl_support.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/__pycache__/wheel.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/extern/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools/extern/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/appdirs-1.4.3.dist-info/WHEEL"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/appdirs-1.4.3.dist-info/metadata.json"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/appdirs-1.4.3.dist-info/METADATA"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/appdirs-1.4.3.dist-info/RECORD"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/appdirs-1.4.3.dist-info/top_level.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/appdirs-1.4.3.dist-info/INSTALLER"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/appdirs-1.4.3.dist-info/DESCRIPTION.rst"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/wheelfile.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/__main__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/bdist_wheel.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/pkginfo.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/metadata.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/pep425tags.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/util.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/cli/pack.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/cli/convert.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/cli/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/cli/unpack.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/cli/__pycache__/pack.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/cli/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/cli/__pycache__/convert.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/cli/__pycache__/unpack.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/__pycache__/bdist_wheel.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/__pycache__/metadata.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/__pycache__/pep425tags.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/__pycache__/__main__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/__pycache__/wheelfile.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/__pycache__/util.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel/__pycache__/pkginfo.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/toml-0.10.0.dist-info/WHEEL"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/toml-0.10.0.dist-info/metadata.json"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/toml-0.10.0.dist-info/METADATA"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/toml-0.10.0.dist-info/RECORD"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/toml-0.10.0.dist-info/top_level.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/toml-0.10.0.dist-info/INSTALLER"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/toml-0.10.0.dist-info/DESCRIPTION.rst"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/toml-0.10.0.dist-info/LICENSE.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/PatternGrammar.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/Grammar.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pygram.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pytree.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pgen2/pgen.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pgen2/driver.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pgen2/grammar.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pgen2/tokenize.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pgen2/conv.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pgen2/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pgen2/token.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pgen2/literals.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pgen2/parse.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pgen2/__pycache__/token.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pgen2/__pycache__/driver.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pgen2/__pycache__/tokenize.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pgen2/__pycache__/pgen.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pgen2/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pgen2/__pycache__/grammar.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pgen2/__pycache__/literals.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pgen2/__pycache__/conv.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/pgen2/__pycache__/parse.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/__pycache__/pytree.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/blib2to3/__pycache__/pygram.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools-44.0.0.dist-info/dependency_links.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools-44.0.0.dist-info/WHEEL"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools-44.0.0.dist-info/METADATA"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools-44.0.0.dist-info/RECORD"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools-44.0.0.dist-info/top_level.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools-44.0.0.dist-info/INSTALLER"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools-44.0.0.dist-info/zip-safe"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools-44.0.0.dist-info/LICENSE"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/setuptools-44.0.0.dist-info/entry_points.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/utils.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/formatting.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/parser.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/exceptions.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/_bashcomplete.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/_unicodefun.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/_compat.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/testing.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/core.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/globals.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/termui.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/decorators.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/_winconsole.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/types.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/_termui_impl.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/_textwrap.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/__pycache__/core.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/__pycache__/_textwrap.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/__pycache__/testing.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/__pycache__/_winconsole.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/__pycache__/utils.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/__pycache__/globals.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/__pycache__/parser.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/__pycache__/_termui_impl.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/__pycache__/types.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/__pycache__/formatting.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/__pycache__/_unicodefun.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/__pycache__/termui.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/__pycache__/_compat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/__pycache__/exceptions.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/__pycache__/decorators.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/click/__pycache__/_bashcomplete.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/toml/encoder.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/toml/decoder.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/toml/ordered.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/toml/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/toml/tz.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/toml/__pycache__/tz.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/toml/__pycache__/encoder.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/toml/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/toml/__pycache__/decoder.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/toml/__pycache__/ordered.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip-19.3.1.dist-info/WHEEL"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip-19.3.1.dist-info/METADATA"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip-19.3.1.dist-info/RECORD"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip-19.3.1.dist-info/top_level.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip-19.3.1.dist-info/INSTALLER"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip-19.3.1.dist-info/LICENSE.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip-19.3.1.dist-info/entry_points.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/py31compat.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/pyparsing.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/appdirs.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/six.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/packaging/utils.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/packaging/specifiers.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/packaging/version.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/packaging/_compat.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/packaging/_structures.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/packaging/__about__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/packaging/requirements.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/packaging/markers.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/packaging/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/packaging/__pycache__/_structures.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/packaging/__pycache__/version.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/packaging/__pycache__/utils.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/packaging/__pycache__/markers.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/packaging/__pycache__/__about__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/packaging/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/packaging/__pycache__/requirements.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/packaging/__pycache__/_compat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/packaging/__pycache__/specifiers.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/__pycache__/appdirs.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/__pycache__/pyparsing.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/_vendor/__pycache__/six.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/__pycache__/py31compat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/extern/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pkg_resources/extern/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/black-19.3b0.dist-info/WHEEL"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/black-19.3b0.dist-info/METADATA"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/black-19.3b0.dist-info/RECORD"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/black-19.3b0.dist-info/top_level.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/black-19.3b0.dist-info/INSTALLER"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/black-19.3b0.dist-info/LICENSE"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/black-19.3b0.dist-info/entry_points.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attrs-19.3.0.dist-info/WHEEL"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attrs-19.3.0.dist-info/METADATA"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attrs-19.3.0.dist-info/RECORD"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attrs-19.3.0.dist-info/top_level.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attrs-19.3.0.dist-info/INSTALLER"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attrs-19.3.0.dist-info/LICENSE"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/Click-7.0.dist-info/WHEEL"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/Click-7.0.dist-info/METADATA"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/Click-7.0.dist-info/RECORD"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/Click-7.0.dist-info/top_level.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/Click-7.0.dist-info/INSTALLER"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/Click-7.0.dist-info/LICENSE.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/__pycache__/easy_install.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/__pycache__/black.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/__pycache__/appdirs.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/__pycache__/toml.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/__pycache__/blackd.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/exceptions.pyi"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/validators.pyi"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/filters.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/_make.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/py.typed"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/exceptions.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/_compat.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/converters.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/_config.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/_version_info.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/__init__.pyi"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/filters.pyi"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/_funcs.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/_version_info.pyi"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/validators.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/converters.pyi"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/__pycache__/_make.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/__pycache__/_config.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/__pycache__/_compat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/__pycache__/validators.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/__pycache__/exceptions.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/__pycache__/converters.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/__pycache__/_funcs.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/__pycache__/_version_info.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/attr/__pycache__/filters.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel-0.33.6.dist-info/WHEEL"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel-0.33.6.dist-info/METADATA"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel-0.33.6.dist-info/RECORD"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel-0.33.6.dist-info/top_level.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel-0.33.6.dist-info/INSTALLER"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel-0.33.6.dist-info/LICENSE.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/wheel-0.33.6.dist-info/entry_points.txt"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/__main__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pyparsing.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distro.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/appdirs.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/ipaddress.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/contextlib2.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/six.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/retrying.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/response.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/filepost.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/poolmanager.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/exceptions.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/_collections.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/fields.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/connectionpool.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/request.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/connection.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/packages/six.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/packages/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/packages/backports/makefile.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/packages/backports/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/packages/backports/__pycache__/makefile.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/packages/ssl_match_hostname/_implementation.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/packages/ssl_match_hostname/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/packages/ssl_match_hostname/__pycache__/_implementation.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/packages/ssl_match_hostname/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/packages/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/packages/__pycache__/six.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/securetransport.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/_appengine_environ.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/socks.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/ntlmpool.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/appengine.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/_securetransport/low_level.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/_securetransport/bindings.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__pycache__/bindings.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__pycache__/low_level.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/__pycache__/pyopenssl.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/__pycache__/securetransport.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/__pycache__/_appengine_environ.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/__pycache__/appengine.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/__pycache__/socks.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/contrib/__pycache__/ntlmpool.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/url.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/response.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/queue.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/timeout.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/wait.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/retry.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/ssl_.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/request.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/connection.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/__pycache__/wait.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/__pycache__/url.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/__pycache__/ssl_.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/__pycache__/timeout.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/__pycache__/connection.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/__pycache__/queue.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/__pycache__/response.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/__pycache__/retry.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/util/__pycache__/request.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/__pycache__/_collections.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/__pycache__/poolmanager.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/__pycache__/connection.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/__pycache__/connectionpool.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/__pycache__/exceptions.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/__pycache__/fields.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/__pycache__/response.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/__pycache__/request.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/urllib3/__pycache__/filepost.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/colorama/winterm.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/colorama/ansitowin32.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/colorama/initialise.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/colorama/ansi.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/colorama/win32.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/colorama/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/colorama/__pycache__/initialise.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/colorama/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/colorama/__pycache__/winterm.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/colorama/__pycache__/ansi.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/colorama/__pycache__/ansitowin32.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/colorama/__pycache__/win32.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/msgpack/_version.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/msgpack/exceptions.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/msgpack/fallback.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/msgpack/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/msgpack/__pycache__/_version.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/msgpack/__pycache__/fallback.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/msgpack/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/msgpack/__pycache__/exceptions.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/certifi/cacert.pem"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/certifi/__main__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/certifi/core.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/certifi/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/certifi/__pycache__/core.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/certifi/__pycache__/__main__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/certifi/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/utils.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/specifiers.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/version.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/tags.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/_compat.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/_structures.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/__about__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/requirements.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/markers.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/__pycache__/_structures.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/__pycache__/version.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/__pycache__/utils.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/__pycache__/markers.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/__pycache__/__about__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/__pycache__/tags.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/__pycache__/requirements.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/__pycache__/_compat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/packaging/__pycache__/specifiers.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pytoml/utils.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pytoml/parser.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pytoml/core.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pytoml/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pytoml/test.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pytoml/writer.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pytoml/__pycache__/writer.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pytoml/__pycache__/core.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pytoml/__pycache__/utils.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pytoml/__pycache__/test.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pytoml/__pycache__/parser.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pytoml/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/structures.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/utils.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/help.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/hooks.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/sessions.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/_internal_utils.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/adapters.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/status_codes.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/models.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/exceptions.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/compat.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__version__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/auth.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/certs.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/packages.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/cookies.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/api.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__pycache__/adapters.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__pycache__/help.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__pycache__/packages.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__pycache__/api.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__pycache__/utils.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__pycache__/auth.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__pycache__/certs.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__pycache__/structures.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__pycache__/_internal_utils.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__pycache__/sessions.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__pycache__/status_codes.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__pycache__/__version__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__pycache__/exceptions.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__pycache__/hooks.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__pycache__/models.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__pycache__/cookies.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/requests/__pycache__/compat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/_cmd.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/filewrapper.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/controller.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/compat.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/wrapper.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/cache.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/heuristics.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/serialize.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/adapter.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/caches/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/file_cache.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/redis_cache.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/__pycache__/serialize.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/__pycache__/heuristics.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/__pycache__/adapter.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/__pycache__/_cmd.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/__pycache__/filewrapper.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/__pycache__/cache.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/__pycache__/controller.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/__pycache__/wrapper.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/cachecontrol/__pycache__/compat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/idna/package_data.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/idna/codec.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/idna/compat.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/idna/uts46data.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/idna/core.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/idna/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/idna/intranges.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/idna/idnadata.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/idna/__pycache__/codec.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/idna/__pycache__/core.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/idna/__pycache__/idnadata.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/idna/__pycache__/package_data.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/idna/__pycache__/intranges.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/idna/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/idna/__pycache__/compat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/idna/__pycache__/uts46data.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pkg_resources/py31compat.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pkg_resources/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pkg_resources/__pycache__/py31compat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pkg_resources/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/gb2312prober.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/euctwprober.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/euckrfreq.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/eucjpprober.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/sbcharsetprober.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/version.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/mbcsgroupprober.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/jisfreq.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/big5prober.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/escprober.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/utf8prober.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/chardistribution.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/compat.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/enums.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/langbulgarianmodel.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/cp949prober.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/langthaimodel.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/langgreekmodel.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/charsetgroupprober.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/langcyrillicmodel.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/jpcntx.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/euctwfreq.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/hebrewprober.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/langturkishmodel.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/langhungarianmodel.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/gb2312freq.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/big5freq.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/langhebrewmodel.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/charsetprober.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/sbcsgroupprober.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/latin1prober.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/sjisprober.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/mbcssm.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/escsm.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/euckrprober.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/universaldetector.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/codingstatemachine.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/mbcharsetprober.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/cli/chardetect.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/cli/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/cli/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/cli/__pycache__/chardetect.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/escsm.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/sjisprober.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/langcyrillicmodel.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/euckrfreq.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/big5freq.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/escprober.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/version.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/langbulgarianmodel.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/enums.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/jpcntx.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/langhungarianmodel.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/hebrewprober.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/jisfreq.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/sbcharsetprober.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/gb2312prober.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/mbcssm.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/codingstatemachine.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/euckrprober.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/charsetgroupprober.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/charsetprober.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/langgreekmodel.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/latin1prober.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/langturkishmodel.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/big5prober.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/cp949prober.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/utf8prober.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/sbcsgroupprober.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/langhebrewmodel.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/euctwfreq.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/gb2312freq.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/chardistribution.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/universaldetector.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/compat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/mbcsgroupprober.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/mbcharsetprober.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/eucjpprober.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/euctwprober.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/chardet/__pycache__/langthaimodel.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/database.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/t32.exe"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/manifest.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/w32.exe"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/w64.exe"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/locators.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/version.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/wheel.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/index.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/compat.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/scripts.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/metadata.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/resources.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/markers.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/util.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/t64.exe"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/__pycache__/scripts.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/__pycache__/metadata.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/__pycache__/version.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/__pycache__/markers.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/__pycache__/locators.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/__pycache__/database.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/__pycache__/manifest.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/__pycache__/util.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/__pycache__/index.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/__pycache__/compat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/__pycache__/resources.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/__pycache__/wheel.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/_backport/shutil.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/_backport/tarfile.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/_backport/sysconfig.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/_backport/misc.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/_backport/sysconfig.cfg"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/_backport/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/_backport/__pycache__/tarfile.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/_backport/__pycache__/misc.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/_backport/__pycache__/shutil.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/_backport/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/distlib/_backport/__pycache__/sysconfig.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/envbuild.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/colorlog.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/wrappers.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/dirtools.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/compat.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/_in_process.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/meta.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/build.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/check.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/__pycache__/dirtools.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/__pycache__/_in_process.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/__pycache__/build.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/__pycache__/wrappers.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/__pycache__/envbuild.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/__pycache__/colorlog.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/__pycache__/meta.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/__pycache__/check.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/pep517/__pycache__/compat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/__pycache__/appdirs.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/__pycache__/ipaddress.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/__pycache__/pyparsing.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/__pycache__/retrying.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/__pycache__/distro.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/__pycache__/six.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/__pycache__/contextlib2.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/webencodings/tests.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/webencodings/mklabels.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/webencodings/x_user_defined.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/webencodings/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/webencodings/labels.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/webencodings/__pycache__/tests.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/webencodings/__pycache__/labels.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/webencodings/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/webencodings/__pycache__/x_user_defined.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/webencodings/__pycache__/mklabels.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/serializer.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/_tokenizer.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/html5parser.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/constants.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/_utils.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/_ihatexml.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/_inputstream.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treewalkers/dom.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treewalkers/base.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treewalkers/etree.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treewalkers/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treewalkers/etree_lxml.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treewalkers/genshi.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treewalkers/__pycache__/base.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treewalkers/__pycache__/etree.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treewalkers/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treewalkers/__pycache__/dom.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treewalkers/__pycache__/etree_lxml.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treewalkers/__pycache__/genshi.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treeadapters/sax.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treeadapters/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treeadapters/genshi.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treeadapters/__pycache__/sax.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treeadapters/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treeadapters/__pycache__/genshi.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/_trie/py.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/_trie/datrie.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/_trie/_base.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/_trie/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/_trie/__pycache__/_base.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/_trie/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/_trie/__pycache__/py.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/_trie/__pycache__/datrie.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treebuilders/dom.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treebuilders/base.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treebuilders/etree.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treebuilders/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treebuilders/etree_lxml.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treebuilders/__pycache__/base.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treebuilders/__pycache__/etree.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treebuilders/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treebuilders/__pycache__/dom.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/treebuilders/__pycache__/etree_lxml.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/__pycache__/html5parser.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/__pycache__/constants.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/__pycache__/serializer.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/__pycache__/_ihatexml.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/__pycache__/_inputstream.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/__pycache__/_tokenizer.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/__pycache__/_utils.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/filters/base.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/filters/sanitizer.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/filters/whitespace.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/filters/inject_meta_charset.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/filters/lint.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/filters/optionaltags.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/filters/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/filters/alphabeticalattributes.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/filters/__pycache__/inject_meta_charset.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/filters/__pycache__/alphabeticalattributes.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/filters/__pycache__/optionaltags.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/filters/__pycache__/base.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/filters/__pycache__/lint.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/filters/__pycache__/whitespace.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/filters/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/html5lib/filters/__pycache__/sanitizer.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/progress/spinner.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/progress/bar.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/progress/counter.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/progress/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/progress/__pycache__/spinner.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/progress/__pycache__/bar.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/progress/__pycache__/counter.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_vendor/progress/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/wheel.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/configuration.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/index.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/exceptions.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/main.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/locations.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/cache.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/self_outdated_check.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/collector.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/pyproject.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/legacy_resolve.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/build_env.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/pep425tags.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/download.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/cli/autocompletion.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/cli/main_parser.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/cli/parser.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/cli/cmdoptions.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/cli/status_codes.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/cli/command_context.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/cli/base_command.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/cli/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/cli/req_command.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/cli/__pycache__/base_command.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/cli/__pycache__/command_context.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/cli/__pycache__/parser.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/cli/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/cli/__pycache__/cmdoptions.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/cli/__pycache__/status_codes.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/cli/__pycache__/autocompletion.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/cli/__pycache__/req_command.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/cli/__pycache__/main_parser.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/req/req_tracker.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/req/constructors.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/req/req_uninstall.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/req/req_file.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/req/req_set.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/req/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/req/req_install.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/req/__pycache__/req_set.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/req/__pycache__/req_uninstall.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/req/__pycache__/req_tracker.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/req/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/req/__pycache__/req_file.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/req/__pycache__/req_install.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/req/__pycache__/constructors.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/help.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/wheel.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/install.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/configuration.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/show.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/hash.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/search.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/list.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/completion.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/freeze.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/debug.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/uninstall.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/download.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/check.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/__pycache__/install.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/__pycache__/freeze.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/__pycache__/help.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/__pycache__/list.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/__pycache__/search.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/__pycache__/completion.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/__pycache__/uninstall.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/__pycache__/configuration.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/__pycache__/download.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/__pycache__/check.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/__pycache__/show.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/__pycache__/debug.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/__pycache__/wheel.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/commands/__pycache__/hash.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/vcs/versioncontrol.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/vcs/mercurial.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/vcs/subversion.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/vcs/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/vcs/bazaar.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/vcs/git.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/vcs/__pycache__/mercurial.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/vcs/__pycache__/git.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/vcs/__pycache__/bazaar.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/vcs/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/vcs/__pycache__/versioncontrol.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/vcs/__pycache__/subversion.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/models/link.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/models/selection_prefs.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/models/index.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/models/search_scope.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/models/target_python.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/models/candidate.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/models/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/models/format_control.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/models/__pycache__/link.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/models/__pycache__/candidate.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/models/__pycache__/search_scope.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/models/__pycache__/format_control.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/models/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/models/__pycache__/selection_prefs.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/models/__pycache__/target_python.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/models/__pycache__/index.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/operations/freeze.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/operations/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/operations/prepare.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/operations/generate_metadata.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/operations/check.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/operations/__pycache__/freeze.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/operations/__pycache__/generate_metadata.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/operations/__pycache__/prepare.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/operations/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/operations/__pycache__/check.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/marker_files.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/packaging.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/glibc.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/filetypes.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/misc.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/appdirs.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/deprecation.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/typing.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/encoding.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/models.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/temp_dir.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/compat.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/hashes.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/filesystem.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/unpacking.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/setuptools_build.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/urls.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/inject_securetransport.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/logging.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/ui.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/subprocess.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/virtualenv.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/virtualenv.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/subprocess.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/appdirs.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/hashes.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/filetypes.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/filesystem.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/encoding.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/misc.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/packaging.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/temp_dir.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/typing.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/urls.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/glibc.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/ui.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/setuptools_build.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/deprecation.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/unpacking.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/inject_securetransport.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/logging.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/marker_files.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/models.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/utils/__pycache__/compat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/network/session.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/network/cache.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/network/auth.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/network/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/network/xmlrpc.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/network/__pycache__/xmlrpc.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/network/__pycache__/auth.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/network/__pycache__/cache.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/network/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/network/__pycache__/session.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/__pycache__/legacy_resolve.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/__pycache__/pyproject.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/__pycache__/pep425tags.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/__pycache__/cache.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/__pycache__/locations.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/__pycache__/build_env.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/__pycache__/self_outdated_check.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/__pycache__/configuration.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/__pycache__/download.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/__pycache__/index.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/__pycache__/collector.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/__pycache__/exceptions.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/__pycache__/main.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/__pycache__/wheel.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/distributions/base.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/distributions/wheel.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/distributions/installed.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/distributions/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/distributions/source/legacy.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/distributions/source/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/distributions/source/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/distributions/source/__pycache__/legacy.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/distributions/__pycache__/installed.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/distributions/__pycache__/base.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/distributions/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/_internal/distributions/__pycache__/wheel.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/__pycache__/__main__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/site-packages/pip/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/bisect.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/ntpath.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/tarfile.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/struct.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/token.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/fnmatch.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/locale.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/genericpath.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/__future__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/tokenize.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/stat.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/warnings.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/linecache.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/tempfile.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/codecs.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/_weakrefset.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/sre_parse.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/types.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/sre_constants.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/shutil.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/keyword.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/reprlib.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/abc.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/functools.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/hashlib.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/site.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/re.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/copy.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/_collections_abc.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/operator.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/io.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/heapq.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/weakref.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/os.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/random.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/base64.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/copyreg.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/posixpath.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/_bootlocale.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/sre_compile.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/enum.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/__pycache__/hmac.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/lib/python3.6/distutils/distutils.cfg"
- },
- {
- "path": ".nox/blacken/lib/python3.6/distutils/__init__.py"
- },
- {
- "path": ".nox/blacken/lib/python3.6/distutils/__pycache__/__init__.cpython-36.pyc"
- },
- {
- "path": ".nox/blacken/bin/blackd"
- },
- {
- "path": ".nox/blacken/bin/python3"
- },
- {
- "path": ".nox/blacken/bin/wheel"
+ "path": ".coveragerc"
},
{
- "path": ".nox/blacken/bin/python3.6"
+ "path": ".flake8"
},
{
- "path": ".nox/blacken/bin/activate_this.py"
+ "path": ".gitignore"
},
{
- "path": ".nox/blacken/bin/activate.csh"
+ "path": ".repo-metadata.json"
},
{
- "path": ".nox/blacken/bin/python-config"
+ "path": "CHANGELOG.md"
},
{
- "path": ".nox/blacken/bin/black"
+ "path": "LICENSE"
},
{
- "path": ".nox/blacken/bin/activate.ps1"
+ "path": "MANIFEST.in"
},
{
- "path": ".nox/blacken/bin/pip3.6"
+ "path": "README.rst"
},
{
- "path": ".nox/blacken/bin/activate.xsh"
+ "path": "docs/README.rst"
},
{
- "path": ".nox/blacken/bin/activate.fish"
+ "path": "docs/_static/custom.css"
},
{
- "path": ".nox/blacken/bin/python"
+ "path": "docs/_templates/layout.html"
},
{
- "path": ".nox/blacken/bin/activate"
+ "path": "docs/changelog.md"
},
{
- "path": ".nox/blacken/bin/easy_install-3.6"
+ "path": "docs/conf.py"
},
{
- "path": ".nox/blacken/bin/easy_install"
+ "path": "docs/gapic/v1beta1/api.rst"
},
{
- "path": ".nox/blacken/bin/pip3"
+ "path": "docs/gapic/v1beta1/types.rst"
},
{
- "path": ".nox/blacken/bin/pip"
+ "path": "docs/index.rst"
},
{
- "path": "tests/unit/gapic/v1beta1/test_data_labeling_service_client_v1beta1.py"
+ "path": "google/__init__.py"
},
{
- "path": "google/__init__.py"
+ "path": "google/cloud/__init__.py"
},
{
"path": "google/cloud/datalabeling.py"
},
{
- "path": "google/cloud/__init__.py"
+ "path": "google/cloud/datalabeling_v1beta1/__init__.py"
},
{
- "path": "google/cloud/datalabeling_v1beta1/__init__.py"
+ "path": "google/cloud/datalabeling_v1beta1/gapic/__init__.py"
},
{
- "path": "google/cloud/datalabeling_v1beta1/types.py"
+ "path": "google/cloud/datalabeling_v1beta1/gapic/data_labeling_service_client.py"
},
{
"path": "google/cloud/datalabeling_v1beta1/gapic/data_labeling_service_client_config.py"
@@ -3385,32 +110,23 @@
{
"path": "google/cloud/datalabeling_v1beta1/gapic/enums.py"
},
- {
- "path": "google/cloud/datalabeling_v1beta1/gapic/__init__.py"
- },
- {
- "path": "google/cloud/datalabeling_v1beta1/gapic/data_labeling_service_client.py"
- },
- {
- "path": "google/cloud/datalabeling_v1beta1/gapic/transports/data_labeling_service_grpc_transport.py"
- },
{
"path": "google/cloud/datalabeling_v1beta1/gapic/transports/__init__.py"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/instruction_pb2.py"
+ "path": "google/cloud/datalabeling_v1beta1/gapic/transports/data_labeling_service_grpc_transport.py"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/data_labeling_service.proto"
+ "path": "google/cloud/datalabeling_v1beta1/proto/__init__.py"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/data_payloads.proto"
+ "path": "google/cloud/datalabeling_v1beta1/proto/annotation.proto"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/evaluation_job_pb2_grpc.py"
+ "path": "google/cloud/datalabeling_v1beta1/proto/annotation_pb2.py"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/data_labeling_service_pb2.py"
+ "path": "google/cloud/datalabeling_v1beta1/proto/annotation_pb2_grpc.py"
},
{
"path": "google/cloud/datalabeling_v1beta1/proto/annotation_spec_set.proto"
@@ -3419,40 +135,28 @@
"path": "google/cloud/datalabeling_v1beta1/proto/annotation_spec_set_pb2.py"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/dataset.proto"
- },
- {
- "path": "google/cloud/datalabeling_v1beta1/proto/operations_pb2_grpc.py"
- },
- {
- "path": "google/cloud/datalabeling_v1beta1/proto/evaluation_pb2_grpc.py"
- },
- {
- "path": "google/cloud/datalabeling_v1beta1/proto/operations.proto"
- },
- {
- "path": "google/cloud/datalabeling_v1beta1/proto/operations_pb2.py"
+ "path": "google/cloud/datalabeling_v1beta1/proto/annotation_spec_set_pb2_grpc.py"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/evaluation.proto"
+ "path": "google/cloud/datalabeling_v1beta1/proto/data_labeling_service.proto"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/annotation_spec_set_pb2_grpc.py"
+ "path": "google/cloud/datalabeling_v1beta1/proto/data_labeling_service_pb2.py"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/annotation_pb2.py"
+ "path": "google/cloud/datalabeling_v1beta1/proto/data_labeling_service_pb2_grpc.py"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/annotation.proto"
+ "path": "google/cloud/datalabeling_v1beta1/proto/data_payloads.proto"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/evaluation_pb2.py"
+ "path": "google/cloud/datalabeling_v1beta1/proto/data_payloads_pb2.py"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/evaluation_job_pb2.py"
+ "path": "google/cloud/datalabeling_v1beta1/proto/data_payloads_pb2_grpc.py"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/data_payloads_pb2_grpc.py"
+ "path": "google/cloud/datalabeling_v1beta1/proto/dataset.proto"
},
{
"path": "google/cloud/datalabeling_v1beta1/proto/dataset_pb2.py"
@@ -3461,25 +165,28 @@
"path": "google/cloud/datalabeling_v1beta1/proto/dataset_pb2_grpc.py"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/human_annotation_config_pb2.py"
+ "path": "google/cloud/datalabeling_v1beta1/proto/evaluation.proto"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/data_labeling_service_pb2_grpc.py"
+ "path": "google/cloud/datalabeling_v1beta1/proto/evaluation_job.proto"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/annotation_pb2_grpc.py"
+ "path": "google/cloud/datalabeling_v1beta1/proto/evaluation_job_pb2.py"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/evaluation_job.proto"
+ "path": "google/cloud/datalabeling_v1beta1/proto/evaluation_job_pb2_grpc.py"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/__init__.py"
+ "path": "google/cloud/datalabeling_v1beta1/proto/evaluation_pb2.py"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/data_payloads_pb2.py"
+ "path": "google/cloud/datalabeling_v1beta1/proto/evaluation_pb2_grpc.py"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/instruction_pb2_grpc.py"
+ "path": "google/cloud/datalabeling_v1beta1/proto/human_annotation_config.proto"
+ },
+ {
+ "path": "google/cloud/datalabeling_v1beta1/proto/human_annotation_config_pb2.py"
},
{
"path": "google/cloud/datalabeling_v1beta1/proto/human_annotation_config_pb2_grpc.py"
@@ -3488,61 +195,61 @@
"path": "google/cloud/datalabeling_v1beta1/proto/instruction.proto"
},
{
- "path": "google/cloud/datalabeling_v1beta1/proto/human_annotation_config.proto"
+ "path": "google/cloud/datalabeling_v1beta1/proto/instruction_pb2.py"
},
{
- "path": "google/__pycache__/__init__.cpython-36.pyc"
+ "path": "google/cloud/datalabeling_v1beta1/proto/instruction_pb2_grpc.py"
},
{
- "path": "protos/data_labeling_service.proto"
+ "path": "google/cloud/datalabeling_v1beta1/proto/operations.proto"
},
{
- "path": "protos/annotation_spec_set.proto"
+ "path": "google/cloud/datalabeling_v1beta1/proto/operations_pb2.py"
},
{
- "path": "protos/dataset.proto"
+ "path": "google/cloud/datalabeling_v1beta1/proto/operations_pb2_grpc.py"
},
{
- "path": "protos/operations.proto"
+ "path": "google/cloud/datalabeling_v1beta1/types.py"
},
{
- "path": "protos/annotation.proto"
+ "path": "noxfile.py"
},
{
- "path": "protos/instruction.proto"
+ "path": "protos/annotation.proto"
},
{
- "path": "protos/human_annotation_config.proto"
+ "path": "protos/annotation_spec_set.proto"
},
{
- "path": "__pycache__/synth.cpython-36.pyc"
+ "path": "protos/data_labeling_service.proto"
},
{
- "path": "__pycache__/noxfile.cpython-36.pyc"
+ "path": "protos/dataset.proto"
},
{
- "path": "docs/conf.py"
+ "path": "protos/human_annotation_config.proto"
},
{
- "path": "docs/changelog.md"
+ "path": "protos/instruction.proto"
},
{
- "path": "docs/index.rst"
+ "path": "protos/operations.proto"
},
{
- "path": "docs/README.rst"
+ "path": "setup.cfg"
},
{
- "path": "docs/_static/custom.css"
+ "path": "setup.py"
},
{
- "path": "docs/_templates/layout.html"
+ "path": "synth.metadata"
},
{
- "path": "docs/gapic/v1beta1/types.rst"
+ "path": "synth.py"
},
{
- "path": "docs/gapic/v1beta1/api.rst"
+ "path": "tests/unit/gapic/v1beta1/test_data_labeling_service_client_v1beta1.py"
}
]
}
\ No newline at end of file
diff --git a/datalabeling/tests/unit/gapic/v1beta1/test_data_labeling_service_client_v1beta1.py b/datalabeling/tests/unit/gapic/v1beta1/test_data_labeling_service_client_v1beta1.py
index dbc214ba0f26..48ffdc63c4a6 100644
--- a/datalabeling/tests/unit/gapic/v1beta1/test_data_labeling_service_client_v1beta1.py
+++ b/datalabeling/tests/unit/gapic/v1beta1/test_data_labeling_service_client_v1beta1.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
-# Copyright 2019 Google LLC
+# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -35,7 +35,6 @@
)
from google.longrunning import operations_pb2 as longrunning_operations_pb2
from google.protobuf import empty_pb2
-from google.protobuf import field_mask_pb2
class MultiCallableStub(object):
@@ -337,7 +336,9 @@ def test_export_data(self):
# Setup Request
name = client.dataset_path("[PROJECT]", "[DATASET]")
- annotated_dataset = "annotatedDataset-1407812655"
+ annotated_dataset = client.annotated_dataset_path(
+ "[PROJECT]", "[DATASET]", "[ANNOTATED_DATASET]"
+ )
output_config = {}
response = client.export_data(name, annotated_dataset, output_config)
@@ -368,7 +369,9 @@ def test_export_data_exception(self):
# Setup Request
name = client.dataset_path("[PROJECT]", "[DATASET]")
- annotated_dataset = "annotatedDataset-1407812655"
+ annotated_dataset = client.annotated_dataset_path(
+ "[PROJECT]", "[DATASET]", "[ANNOTATED_DATASET]"
+ )
output_config = {}
response = client.export_data(name, annotated_dataset, output_config)
@@ -565,6 +568,43 @@ def test_list_annotated_datasets_exception(self):
with pytest.raises(CustomException):
list(paged_list_response)
+ def test_delete_annotated_dataset(self):
+ channel = ChannelStub()
+ patch = mock.patch("google.api_core.grpc_helpers.create_channel")
+ with patch as create_channel:
+ create_channel.return_value = channel
+ client = datalabeling_v1beta1.DataLabelingServiceClient()
+
+ # Setup Request
+ name = client.annotated_dataset_path(
+ "[PROJECT]", "[DATASET]", "[ANNOTATED_DATASET]"
+ )
+
+ client.delete_annotated_dataset(name)
+
+ assert len(channel.requests) == 1
+ expected_request = data_labeling_service_pb2.DeleteAnnotatedDatasetRequest(
+ name=name
+ )
+ actual_request = channel.requests[0][1]
+ assert expected_request == actual_request
+
+ def test_delete_annotated_dataset_exception(self):
+ # Mock the API response
+ channel = ChannelStub(responses=[CustomException()])
+ patch = mock.patch("google.api_core.grpc_helpers.create_channel")
+ with patch as create_channel:
+ create_channel.return_value = channel
+ client = datalabeling_v1beta1.DataLabelingServiceClient()
+
+ # Setup request
+ name = client.annotated_dataset_path(
+ "[PROJECT]", "[DATASET]", "[ANNOTATED_DATASET]"
+ )
+
+ with pytest.raises(CustomException):
+ client.delete_annotated_dataset(name)
+
def test_label_image(self):
# Setup Expected Response
name = "name3373707"
@@ -1287,10 +1327,9 @@ def test_search_evaluations(self):
client = datalabeling_v1beta1.DataLabelingServiceClient()
# Setup Request
- parent = client.project_path("[PROJECT]")
- filter_ = "filter-1274492040"
+ parent = client.evaluation_path("[PROJECT]", "[DATASET]", "[EVALUATION]")
- paged_list_response = client.search_evaluations(parent, filter_)
+ paged_list_response = client.search_evaluations(parent)
resources = list(paged_list_response)
assert len(resources) == 1
@@ -1298,7 +1337,7 @@ def test_search_evaluations(self):
assert len(channel.requests) == 1
expected_request = data_labeling_service_pb2.SearchEvaluationsRequest(
- parent=parent, filter=filter_
+ parent=parent
)
actual_request = channel.requests[0][1]
assert expected_request == actual_request
@@ -1311,10 +1350,9 @@ def test_search_evaluations_exception(self):
client = datalabeling_v1beta1.DataLabelingServiceClient()
# Setup request
- parent = client.project_path("[PROJECT]")
- filter_ = "filter-1274492040"
+ parent = client.evaluation_path("[PROJECT]", "[DATASET]", "[EVALUATION]")
- paged_list_response = client.search_evaluations(parent, filter_)
+ paged_list_response = client.search_evaluations(parent)
with pytest.raises(CustomException):
list(paged_list_response)
@@ -1449,14 +1487,13 @@ def test_update_evaluation_job(self):
# Setup Request
evaluation_job = {}
- update_mask = {}
- response = client.update_evaluation_job(evaluation_job, update_mask)
+ response = client.update_evaluation_job(evaluation_job)
assert expected_response == response
assert len(channel.requests) == 1
expected_request = data_labeling_service_pb2.UpdateEvaluationJobRequest(
- evaluation_job=evaluation_job, update_mask=update_mask
+ evaluation_job=evaluation_job
)
actual_request = channel.requests[0][1]
assert expected_request == actual_request
@@ -1471,10 +1508,9 @@ def test_update_evaluation_job_exception(self):
# Setup request
evaluation_job = {}
- update_mask = {}
with pytest.raises(CustomException):
- client.update_evaluation_job(evaluation_job, update_mask)
+ client.update_evaluation_job(evaluation_job)
def test_get_evaluation_job(self):
# Setup Expected Response
@@ -1647,9 +1683,8 @@ def test_list_evaluation_jobs(self):
# Setup Request
parent = client.project_path("[PROJECT]")
- filter_ = "filter-1274492040"
- paged_list_response = client.list_evaluation_jobs(parent, filter_)
+ paged_list_response = client.list_evaluation_jobs(parent)
resources = list(paged_list_response)
assert len(resources) == 1
@@ -1657,7 +1692,7 @@ def test_list_evaluation_jobs(self):
assert len(channel.requests) == 1
expected_request = data_labeling_service_pb2.ListEvaluationJobsRequest(
- parent=parent, filter=filter_
+ parent=parent
)
actual_request = channel.requests[0][1]
assert expected_request == actual_request
@@ -1671,33 +1706,7 @@ def test_list_evaluation_jobs_exception(self):
# Setup request
parent = client.project_path("[PROJECT]")
- filter_ = "filter-1274492040"
- paged_list_response = client.list_evaluation_jobs(parent, filter_)
+ paged_list_response = client.list_evaluation_jobs(parent)
with pytest.raises(CustomException):
list(paged_list_response)
-
- def test_delete_annotated_dataset(self):
- channel = ChannelStub()
- patch = mock.patch("google.api_core.grpc_helpers.create_channel")
- with patch as create_channel:
- create_channel.return_value = channel
- client = datalabeling_v1beta1.DataLabelingServiceClient()
-
- client.delete_annotated_dataset()
-
- assert len(channel.requests) == 1
- expected_request = data_labeling_service_pb2.DeleteAnnotatedDatasetRequest()
- actual_request = channel.requests[0][1]
- assert expected_request == actual_request
-
- def test_delete_annotated_dataset_exception(self):
- # Mock the API response
- channel = ChannelStub(responses=[CustomException()])
- patch = mock.patch("google.api_core.grpc_helpers.create_channel")
- with patch as create_channel:
- create_channel.return_value = channel
- client = datalabeling_v1beta1.DataLabelingServiceClient()
-
- with pytest.raises(CustomException):
- client.delete_annotated_dataset()