Synchronize new proto/yaml changes.
PiperOrigin-RevId: 254297727
This commit is contained in:
parent
277703d53b
commit
f01a88710a
|
|
@ -6,94 +6,69 @@ title: Data Labeling API
|
|||
apis:
|
||||
- name: google.cloud.datalabeling.v1beta1.DataLabelingService
|
||||
|
||||
types:
|
||||
- name: google.cloud.datalabeling.v1beta1.CreateInstructionMetadata
|
||||
- name: google.cloud.datalabeling.v1beta1.ExportDataOperationMetadata
|
||||
- name: google.cloud.datalabeling.v1beta1.ExportDataOperationResponse
|
||||
- name: google.cloud.datalabeling.v1beta1.ImportDataOperationMetadata
|
||||
- name: google.cloud.datalabeling.v1beta1.ImportDataOperationResponse
|
||||
- name: google.cloud.datalabeling.v1beta1.LabelImageBoundingBoxOperationMetadata
|
||||
- name: google.cloud.datalabeling.v1beta1.LabelImageBoundingPolyOperationMetadata
|
||||
- name: google.cloud.datalabeling.v1beta1.LabelImageClassificationOperationMetadata
|
||||
- name: google.cloud.datalabeling.v1beta1.LabelImageOrientedBoundingBoxOperationMetadata
|
||||
- name: google.cloud.datalabeling.v1beta1.LabelImagePolylineOperationMetadata
|
||||
- name: google.cloud.datalabeling.v1beta1.LabelImageSegmentationOperationMetadata
|
||||
- name: google.cloud.datalabeling.v1beta1.LabelOperationMetadata
|
||||
- name: google.cloud.datalabeling.v1beta1.LabelTextClassificationOperationMetadata
|
||||
- name: google.cloud.datalabeling.v1beta1.LabelTextEntityExtractionOperationMetadata
|
||||
- name: google.cloud.datalabeling.v1beta1.LabelVideoClassificationOperationMetadata
|
||||
- name: google.cloud.datalabeling.v1beta1.LabelVideoEventOperationMetadata
|
||||
- name: google.cloud.datalabeling.v1beta1.LabelVideoObjectDetectionOperationMetadata
|
||||
- name: google.cloud.datalabeling.v1beta1.LabelVideoObjectTrackingOperationMetadata
|
||||
|
||||
documentation:
|
||||
summary: Public API for Google Cloud AI Data Labeling Service.
|
||||
rules:
|
||||
- selector: google.iam.v1.IAMPolicy.GetIamPolicy
|
||||
description: |-
|
||||
Gets the access control policy for a resource. Returns an empty policy
|
||||
if the resource exists and does not have a policy set.
|
||||
|
||||
- selector: google.iam.v1.IAMPolicy.SetIamPolicy
|
||||
description: |-
|
||||
Sets the access control policy on the specified resource. Replaces
|
||||
any existing policy.
|
||||
|
||||
- selector: google.iam.v1.IAMPolicy.TestIamPermissions
|
||||
description: |-
|
||||
Returns permissions that a caller has on the specified resource. If the
|
||||
resource does not exist, this will return an empty set of
|
||||
permissions, not a NOT_FOUND error.
|
||||
|
||||
Note: This operation is designed to be used for building
|
||||
permission-aware UIs and command-line tools, not for authorization
|
||||
checking. This operation may "fail open" without warning.
|
||||
|
||||
backend:
|
||||
rules:
|
||||
- selector: google.longrunning.Operations.ListOperations
|
||||
- selector: 'google.cloud.datalabeling.v1beta1.DataLabelingService.*'
|
||||
deadline: 60.0
|
||||
- selector: google.longrunning.Operations.GetOperation
|
||||
- selector: 'google.iam.v1.IAMPolicy.*'
|
||||
deadline: 60.0
|
||||
- selector: google.longrunning.Operations.DeleteOperation
|
||||
- selector: 'google.longrunning.Operations.*'
|
||||
deadline: 60.0
|
||||
- selector: google.longrunning.Operations.CancelOperation
|
||||
deadline: 60.0
|
||||
- selector: google.longrunning.Operations.WaitOperation
|
||||
deadline: 60.0
|
||||
- selector: google.iam.v1.IAMPolicy.SetIamPolicy
|
||||
deadline: 60.0
|
||||
- selector: google.iam.v1.IAMPolicy.GetIamPolicy
|
||||
deadline: 60.0
|
||||
- selector: google.iam.v1.IAMPolicy.TestIamPermissions
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.CreateDataset
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.GetDataset
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.ListDatasets
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.DeleteDataset
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.ImportData
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.ExportData
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.GetDataItem
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.ListDataItems
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.GetAnnotatedDataset
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.ListAnnotatedDatasets
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.LabelImage
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.LabelVideo
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.LabelText
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.LabelAudio
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.GetExample
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.ListExamples
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.CreateAnnotationSpecSet
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.GetAnnotationSpecSet
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.ListAnnotationSpecSets
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.DeleteAnnotationSpecSet
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.CreateInstruction
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.GetInstruction
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.ListInstructions
|
||||
deadline: 60.0
|
||||
- selector: google.cloud.datalabeling.v1beta1.DataLabelingService.DeleteInstruction
|
||||
deadline: 60.0
|
||||
|
||||
http:
|
||||
rules:
|
||||
- selector: google.longrunning.Operations.ListOperations
|
||||
get: '/v1beta1/{name=projects/*}/operations'
|
||||
|
||||
- selector: google.longrunning.Operations.GetOperation
|
||||
get: '/v1beta1/{name=projects/*/operations/*}'
|
||||
|
||||
- selector: google.longrunning.Operations.DeleteOperation
|
||||
delete: '/v1beta1/{name=projects/*/operations/*}'
|
||||
|
||||
- selector: google.longrunning.Operations.CancelOperation
|
||||
post: '/v1beta1/{name=projects/*/operations/*}:cancel'
|
||||
|
||||
|
||||
authentication:
|
||||
rules:
|
||||
- selector: '*'
|
||||
- selector: 'google.cloud.datalabeling.v1beta1.DataLabelingService.*'
|
||||
oauth:
|
||||
canonical_scopes: |-
|
||||
https://www.googleapis.com/auth/cloud-platform
|
||||
- selector: 'google.iam.v1.IAMPolicy.*'
|
||||
oauth:
|
||||
canonical_scopes: |-
|
||||
https://www.googleapis.com/auth/cloud-platform
|
||||
- selector: 'google.longrunning.Operations.*'
|
||||
oauth:
|
||||
canonical_scopes: |-
|
||||
https://www.googleapis.com/auth/cloud-platform
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Copyright 2018 Google LLC.
|
||||
// Copyright 2019 Google LLC.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
|
|
@ -17,17 +17,15 @@ syntax = "proto3";
|
|||
|
||||
package google.cloud.datalabeling.v1beta1;
|
||||
|
||||
import "google/cloud/datalabeling/v1beta1/annotation_spec_set.proto";
|
||||
import "google/protobuf/duration.proto";
|
||||
import "google/protobuf/struct.proto";
|
||||
import "google/protobuf/timestamp.proto";
|
||||
import "google/api/annotations.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.
|
||||
enum AnnotationSource {
|
||||
ANNOTATION_SOURCE_UNSPECIFIED = 0;
|
||||
|
|
@ -36,6 +34,30 @@ enum AnnotationSource {
|
|||
OPERATOR = 3;
|
||||
}
|
||||
|
||||
// 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.
|
||||
message Annotation {
|
||||
// Output only. Unique name of this annotation, format is:
|
||||
//
|
||||
// projects/{project_id}/datasets/{dataset_id}/annotatedDatasets/{annotated_dataset}/examples/{example_id}/annotations/{annotation_id}
|
||||
string name = 1;
|
||||
|
||||
// Output only. The source of the annotation.
|
||||
AnnotationSource annotation_source = 2;
|
||||
|
||||
// Output only. This is the actual annotation value, e.g classification,
|
||||
// bounding box values are stored here.
|
||||
AnnotationValue annotation_value = 3;
|
||||
|
||||
// Output only. Annotation metadata, including information like votes
|
||||
// for labels.
|
||||
AnnotationMetadata annotation_metadata = 4;
|
||||
|
||||
// Output only. Sentiment for this annotation.
|
||||
AnnotationSentiment annotation_sentiment = 6;
|
||||
}
|
||||
|
||||
enum AnnotationSentiment {
|
||||
ANNOTATION_SENTIMENT_UNSPECIFIED = 0;
|
||||
|
||||
|
|
@ -80,38 +102,14 @@ enum AnnotationType {
|
|||
// Video event annotation.
|
||||
VIDEO_EVENT_ANNOTATION = 6;
|
||||
|
||||
// Speech to text annotation.
|
||||
AUDIO_TRANSCRIPTION_ANNOTATION = 7;
|
||||
|
||||
// Classification for text.
|
||||
TEXT_CLASSIFICATION_ANNOTATION = 8;
|
||||
|
||||
// Entity extraction for text.
|
||||
TEXT_ENTITY_EXTRACTION_ANNOTATION = 9;
|
||||
}
|
||||
|
||||
// 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.
|
||||
message Annotation {
|
||||
// Output only. Unique name of this annotation, format is:
|
||||
//
|
||||
// projects/{project_id}/datasets/{dataset_id}/annotatedDatasets/{annotated_dataset}/examples/{example_id}/annotations/{annotation_id}
|
||||
string name = 1;
|
||||
|
||||
// Output only. The source of the annotation.
|
||||
AnnotationSource annotation_source = 2;
|
||||
|
||||
// Output only. This is the actual annotation value, e.g classification,
|
||||
// bounding box values are stored here.
|
||||
AnnotationValue annotation_value = 3;
|
||||
|
||||
// Output only. Annotation metadata, including information like votes
|
||||
// for labels.
|
||||
AnnotationMetadata annotation_metadata = 4;
|
||||
|
||||
// Output only. Sentiment for this annotation.
|
||||
AnnotationSentiment annotation_sentiment = 6;
|
||||
// General classification.
|
||||
GENERAL_CLASSIFICATION_ANNOTATION = 14;
|
||||
}
|
||||
|
||||
// Annotation value for an example.
|
||||
|
|
@ -136,6 +134,9 @@ message AnnotationValue {
|
|||
// Annotation value for text classification case.
|
||||
TextClassificationAnnotation text_classification_annotation = 3;
|
||||
|
||||
// Annotation value for text entity extraction case.
|
||||
TextEntityExtractionAnnotation text_entity_extraction_annotation = 10;
|
||||
|
||||
// Annotation value for video classification case.
|
||||
VideoClassificationAnnotation video_classification_annotation = 4;
|
||||
|
||||
|
|
@ -144,9 +145,6 @@ message AnnotationValue {
|
|||
|
||||
// Annotation value for video event case.
|
||||
VideoEventAnnotation video_event_annotation = 6;
|
||||
|
||||
// Annotation value for speech audio recognition case.
|
||||
AudioRecognitionAnnotation audio_recognition_annotation = 7;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -248,6 +246,24 @@ message TextClassificationAnnotation {
|
|||
AnnotationSpec annotation_spec = 1;
|
||||
}
|
||||
|
||||
// Text entity extraction annotation.
|
||||
message TextEntityExtractionAnnotation {
|
||||
// Label of the text entities.
|
||||
AnnotationSpec annotation_spec = 1;
|
||||
|
||||
// Position of the entity.
|
||||
SequentialSegment sequential_segment = 2;
|
||||
}
|
||||
|
||||
// Start and end position in a sequence (e.g. text segment).
|
||||
message SequentialSegment {
|
||||
// Start position (inclusive).
|
||||
int32 start = 1;
|
||||
|
||||
// End position (exclusive).
|
||||
int32 end = 2;
|
||||
}
|
||||
|
||||
// A time period inside of an example that has a time dimension (e.g. video).
|
||||
message TimeSegment {
|
||||
// Start of the time segment (inclusive), represented as the duration since
|
||||
|
|
@ -302,18 +318,6 @@ message VideoEventAnnotation {
|
|||
TimeSegment time_segment = 2;
|
||||
}
|
||||
|
||||
// Speech audio recognition.
|
||||
message AudioRecognitionAnnotation {
|
||||
// Transcript text representing the words spoken.
|
||||
string transcript = 1;
|
||||
|
||||
// Start position in audio file that the transcription corresponds to.
|
||||
google.protobuf.Duration start_offset = 2;
|
||||
|
||||
// End position in audio file that the transcription corresponds to.
|
||||
google.protobuf.Duration end_offset = 3;
|
||||
}
|
||||
|
||||
// Additional information associated with the annotation.
|
||||
message AnnotationMetadata {
|
||||
// Metadata related to human labeling.
|
||||
|
|
@ -333,5 +337,6 @@ message OperatorMetadata {
|
|||
// The total number of contributors that choose this label.
|
||||
int32 label_votes = 3;
|
||||
|
||||
// Comments from contributors.
|
||||
repeated string comments = 4;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Copyright 2018 Google LLC.
|
||||
// Copyright 2019 Google LLC.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
|
|
@ -23,13 +23,11 @@ option go_package = "google.golang.org/genproto/googleapis/cloud/datalabeling/v1
|
|||
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.
|
||||
message AnnotationSpecSet {
|
||||
// Output only.
|
||||
// AnnotationSpecSet resource name, format:
|
||||
// Output only. AnnotationSpecSet resource name, format:
|
||||
// projects/{project_id}/annotationSpecSets/{annotation_spec_set_id}
|
||||
string name = 1;
|
||||
|
||||
|
|
@ -43,6 +41,10 @@ message AnnotationSpecSet {
|
|||
|
||||
// Required. The actual spec set defined by the users.
|
||||
repeated AnnotationSpec annotation_specs = 4;
|
||||
|
||||
// Output only. The names of any related resources that are blocking changes
|
||||
// to the annotation spec set.
|
||||
repeated string blocking_resources = 5;
|
||||
}
|
||||
|
||||
// Container of information related to one annotation spec.
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Copyright 2018 Google LLC.
|
||||
// Copyright 2019 Google LLC.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
|
|
@ -18,11 +18,14 @@ syntax = "proto3";
|
|||
package google.cloud.datalabeling.v1beta1;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
import "google/api/client.proto";
|
||||
import "google/cloud/datalabeling/v1beta1/annotation.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";
|
||||
|
|
@ -31,8 +34,11 @@ option go_package = "google.golang.org/genproto/googleapis/cloud/datalabeling/v1
|
|||
option java_multiple_files = true;
|
||||
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";
|
||||
|
||||
// Creates dataset. If success return a Dataset resource.
|
||||
rpc CreateDataset(CreateDatasetRequest) returns (Dataset) {
|
||||
option (google.api.http) = {
|
||||
|
|
@ -99,21 +105,24 @@ service DataLabelingService {
|
|||
}
|
||||
|
||||
// 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/*}"
|
||||
};
|
||||
}
|
||||
|
||||
// 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"
|
||||
};
|
||||
}
|
||||
|
||||
// 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/*}"
|
||||
};
|
||||
|
|
@ -146,15 +155,6 @@ service DataLabelingService {
|
|||
};
|
||||
}
|
||||
|
||||
// Starts a labeling task for audio. The type of audio labeling task is
|
||||
// configured by feature in the request.
|
||||
rpc LabelAudio(LabelAudioRequest) returns (google.longrunning.Operation) {
|
||||
option (google.api.http) = {
|
||||
post: "/v1beta1/{parent=projects/*/datasets/*}/audio:label"
|
||||
body: "*"
|
||||
};
|
||||
}
|
||||
|
||||
// Gets an example by resource name, including both data and annotation.
|
||||
rpc GetExample(GetExampleRequest) returns (Example) {
|
||||
option (google.api.http) = {
|
||||
|
|
@ -170,7 +170,8 @@ service DataLabelingService {
|
|||
}
|
||||
|
||||
// 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: "*"
|
||||
|
|
@ -178,28 +179,32 @@ service DataLabelingService {
|
|||
}
|
||||
|
||||
// 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/*}"
|
||||
};
|
||||
}
|
||||
|
||||
// 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"
|
||||
};
|
||||
}
|
||||
|
||||
// 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/*}"
|
||||
};
|
||||
}
|
||||
|
||||
// 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: "*"
|
||||
|
|
@ -214,18 +219,107 @@ service DataLabelingService {
|
|||
}
|
||||
|
||||
// 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"
|
||||
};
|
||||
}
|
||||
|
||||
// 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/*}"
|
||||
};
|
||||
}
|
||||
|
||||
// Gets an evaluation by resource name.
|
||||
rpc GetEvaluation(GetEvaluationRequest) returns (Evaluation) {
|
||||
option (google.api.http) = {
|
||||
get: "/v1beta1/{name=projects/*/datasets/*/evaluations/*}"
|
||||
};
|
||||
}
|
||||
|
||||
// Searchs evaluations within a project. Supported filter: evaluation_job,
|
||||
// evaluation_time.
|
||||
rpc SearchEvaluations(SearchEvaluationsRequest)
|
||||
returns (SearchEvaluationsResponse) {
|
||||
option (google.api.http) = {
|
||||
get: "/v1beta1/{parent=projects/*}/evaluations:search"
|
||||
};
|
||||
}
|
||||
|
||||
// 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) {
|
||||
option (google.api.http) = {
|
||||
post: "/v1beta1/{parent=projects/*/datasets/*/evaluations/*}/exampleComparisons:search"
|
||||
body: "*"
|
||||
};
|
||||
}
|
||||
|
||||
// Creates an evaluation job.
|
||||
rpc CreateEvaluationJob(CreateEvaluationJobRequest) returns (EvaluationJob) {
|
||||
option (google.api.http) = {
|
||||
post: "/v1beta1/{parent=projects/*}/evaluationJobs"
|
||||
body: "*"
|
||||
};
|
||||
}
|
||||
|
||||
// Updates an evaluation job.
|
||||
rpc UpdateEvaluationJob(UpdateEvaluationJobRequest) returns (EvaluationJob) {
|
||||
option (google.api.http) = {
|
||||
patch: "/v1beta1/{evaluation_job.name=projects/*/evaluationJobs/*}"
|
||||
body: "evaluation_job"
|
||||
};
|
||||
}
|
||||
|
||||
// Gets an evaluation job by resource name.
|
||||
rpc GetEvaluationJob(GetEvaluationJobRequest) returns (EvaluationJob) {
|
||||
option (google.api.http) = {
|
||||
get: "/v1beta1/{name=projects/*/evaluationJobs/*}"
|
||||
};
|
||||
}
|
||||
|
||||
// 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) {
|
||||
option (google.api.http) = {
|
||||
post: "/v1beta1/{name=projects/*/evaluationJobs/*}:pause"
|
||||
body: "*"
|
||||
};
|
||||
}
|
||||
|
||||
// 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) {
|
||||
option (google.api.http) = {
|
||||
post: "/v1beta1/{name=projects/*/evaluationJobs/*}:resume"
|
||||
body: "*"
|
||||
};
|
||||
}
|
||||
|
||||
// Stops and deletes an evaluation job.
|
||||
rpc DeleteEvaluationJob(DeleteEvaluationJobRequest)
|
||||
returns (google.protobuf.Empty) {
|
||||
option (google.api.http) = {
|
||||
delete: "/v1beta1/{name=projects/*/evaluationJobs/*}"
|
||||
};
|
||||
}
|
||||
|
||||
// Lists all evaluation jobs within a project with possible filters.
|
||||
// Pagination is supported.
|
||||
rpc ListEvaluationJobs(ListEvaluationJobsRequest)
|
||||
returns (ListEvaluationJobsResponse) {
|
||||
option (google.api.http) = {
|
||||
get: "/v1beta1/{parent=projects/*}/evaluationJobs"
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
// Request message for CreateDataset.
|
||||
|
|
@ -260,9 +354,9 @@ message ListDatasetsRequest {
|
|||
|
||||
// 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.
|
||||
// [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;
|
||||
}
|
||||
|
||||
|
|
@ -290,6 +384,10 @@ message ImportDataRequest {
|
|||
|
||||
// Required. Specify the input source of the data.
|
||||
InputConfig input_config = 2;
|
||||
|
||||
// Email of the user who started the import task and should be notified by
|
||||
// email. If empty no notification will be sent.
|
||||
string user_email_address = 3;
|
||||
}
|
||||
|
||||
// Request message for ExportData API.
|
||||
|
|
@ -310,6 +408,10 @@ message ExportDataRequest {
|
|||
|
||||
// Required. Specify the output destination.
|
||||
OutputConfig output_config = 4;
|
||||
|
||||
// Email of the user who started the export task and should be notified by
|
||||
// email. If empty no notification will be sent.
|
||||
string user_email_address = 5;
|
||||
}
|
||||
|
||||
// Request message for GetDataItem.
|
||||
|
|
@ -334,9 +436,9 @@ message ListDataItemsRequest {
|
|||
|
||||
// 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.
|
||||
// [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;
|
||||
}
|
||||
|
||||
|
|
@ -372,20 +474,12 @@ message ListAnnotatedDatasetsRequest {
|
|||
|
||||
// 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.
|
||||
// [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;
|
||||
}
|
||||
|
||||
// Request message for DeleteAnnotatedDataset.
|
||||
message DeleteAnnotatedDatasetRequest {
|
||||
// Required. Name of the annotated dataset to delete, format:
|
||||
// projects/{project_id}/datasets/{dataset_id}/annotatedDatasets/
|
||||
// {annotated_dataset_id}
|
||||
string name = 1;
|
||||
}
|
||||
|
||||
// Results of listing annotated datasets for a dataset.
|
||||
message ListAnnotatedDatasetsResponse {
|
||||
// The list of annotated datasets to return.
|
||||
|
|
@ -395,6 +489,14 @@ message ListAnnotatedDatasetsResponse {
|
|||
string next_page_token = 2;
|
||||
}
|
||||
|
||||
// Request message for DeleteAnnotatedDataset.
|
||||
message DeleteAnnotatedDatasetRequest {
|
||||
// Required. Name of the annotated dataset to delete, format:
|
||||
// projects/{project_id}/datasets/{dataset_id}/annotatedDatasets/
|
||||
// {annotated_dataset_id}
|
||||
string name = 1;
|
||||
}
|
||||
|
||||
// Request message for starting an image labeling task.
|
||||
message LabelImageRequest {
|
||||
// Image labeling task feature.
|
||||
|
|
@ -429,22 +531,22 @@ message LabelImageRequest {
|
|||
oneof request_config {
|
||||
// Configuration for image classification task.
|
||||
// One of image_classification_config, bounding_poly_config,
|
||||
// polyline_config and segmentation_config is required.
|
||||
// polyline_config and segmentation_config are required.
|
||||
ImageClassificationConfig image_classification_config = 4;
|
||||
|
||||
// Configuration for bounding box and bounding poly task.
|
||||
// One of image_classification_config, bounding_poly_config,
|
||||
// polyline_config and segmentation_config is required.
|
||||
// polyline_config and segmentation_config are required.
|
||||
BoundingPolyConfig bounding_poly_config = 5;
|
||||
|
||||
// Configuration for polyline task.
|
||||
// One of image_classification_config, bounding_poly_config,
|
||||
// polyline_config and segmentation_config is required.
|
||||
// polyline_config and segmentation_config are required.
|
||||
PolylineConfig polyline_config = 6;
|
||||
|
||||
// Configuration for segmentation task.
|
||||
// One of image_classification_config, bounding_poly_config,
|
||||
// polyline_config and segmentation_config is required.
|
||||
// polyline_config and segmentation_config are required.
|
||||
SegmentationConfig segmentation_config = 7;
|
||||
}
|
||||
|
||||
|
|
@ -551,27 +653,6 @@ message LabelTextRequest {
|
|||
Feature feature = 6;
|
||||
}
|
||||
|
||||
// Request message for LabelAudio.
|
||||
message LabelAudioRequest {
|
||||
// Audio labeling task feature.
|
||||
enum Feature {
|
||||
FEATURE_UNSPECIFIED = 0;
|
||||
|
||||
// Transcribe the audios into text.
|
||||
AUDIO_TRANSCRIPTION = 1;
|
||||
}
|
||||
|
||||
// Required. Name of the dataset to request labeling task, format:
|
||||
// projects/{project_id}/datasets/{dataset_id}
|
||||
string parent = 1;
|
||||
|
||||
// Required. Basic human annotation config.
|
||||
HumanAnnotationConfig basic_config = 2;
|
||||
|
||||
// Required. The type of audio labeling task.
|
||||
Feature feature = 3;
|
||||
}
|
||||
|
||||
// Request message for GetExample
|
||||
message GetExampleRequest {
|
||||
// Required. Name of example, format:
|
||||
|
|
@ -602,9 +683,9 @@ message ListExamplesRequest {
|
|||
|
||||
// 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.
|
||||
// [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;
|
||||
}
|
||||
|
||||
|
|
@ -651,9 +732,9 @@ message ListAnnotationSpecSetsRequest {
|
|||
|
||||
// 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.
|
||||
// [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;
|
||||
}
|
||||
|
||||
|
|
@ -712,9 +793,9 @@ message ListInstructionsRequest {
|
|||
|
||||
// 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.
|
||||
// [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;
|
||||
}
|
||||
|
||||
|
|
@ -726,3 +807,159 @@ message ListInstructionsResponse {
|
|||
// A token to retrieve next page of results.
|
||||
string next_page_token = 2;
|
||||
}
|
||||
|
||||
// Request message for GetEvaluation.
|
||||
message GetEvaluationRequest {
|
||||
// Required. Name of the evaluation. Format:
|
||||
// 'projects/{project_id}/datasets/{dataset_id}/evaluations/{evaluation_id}'
|
||||
string name = 1;
|
||||
}
|
||||
|
||||
// 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;
|
||||
|
||||
// Optional. Requested page size. Server may return fewer results than
|
||||
// requested. Default value is 100.
|
||||
int32 page_size = 3;
|
||||
|
||||
// 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;
|
||||
}
|
||||
|
||||
// Results of searching evaluations.
|
||||
message SearchEvaluationsResponse {
|
||||
// The list of evaluations to return.
|
||||
repeated Evaluation evaluations = 1;
|
||||
|
||||
// A token to retrieve next page of results.
|
||||
string next_page_token = 2;
|
||||
}
|
||||
|
||||
// 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;
|
||||
|
||||
// Optional. Requested page size. Server may return fewer results than
|
||||
// requested. Default value is 100.
|
||||
int32 page_size = 2;
|
||||
|
||||
// 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;
|
||||
}
|
||||
|
||||
// Results of searching example comparisons.
|
||||
message SearchExampleComparisonsResponse {
|
||||
// Example comparisons containing annotation comparison between groundtruth
|
||||
// and predictions.
|
||||
message ExampleComparison {
|
||||
Example ground_truth_example = 1;
|
||||
|
||||
repeated Example model_created_examples = 2;
|
||||
}
|
||||
|
||||
repeated ExampleComparison example_comparisons = 1;
|
||||
|
||||
// A token to retrieve next page of results.
|
||||
string next_page_token = 2;
|
||||
}
|
||||
|
||||
// Request message for CreateEvaluationJob.
|
||||
message CreateEvaluationJobRequest {
|
||||
// Required. Evaluation job resource parent, format:
|
||||
// projects/{project_id}.
|
||||
string parent = 1;
|
||||
|
||||
// Required. The evaluation job to create.
|
||||
EvaluationJob job = 2;
|
||||
}
|
||||
|
||||
// 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;
|
||||
}
|
||||
|
||||
// Request message for GetEvaluationJob.
|
||||
message GetEvaluationJobRequest {
|
||||
// Required. Name of the evaluation job. Format:
|
||||
// 'projects/{project_id}/evaluationJobs/{evaluation_job_id}'
|
||||
string name = 1;
|
||||
}
|
||||
|
||||
// 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;
|
||||
}
|
||||
|
||||
// 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;
|
||||
}
|
||||
|
||||
// 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;
|
||||
}
|
||||
|
||||
// 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;
|
||||
|
||||
// Optional. Requested page size. Server may return fewer results than
|
||||
// requested. Default value is 100.
|
||||
int32 page_size = 3;
|
||||
|
||||
// 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;
|
||||
}
|
||||
|
||||
// Results for listing evaluation jobs.
|
||||
message ListEvaluationJobsResponse {
|
||||
// The list of evaluation jobs to return.
|
||||
repeated EvaluationJob evaluation_jobs = 1;
|
||||
|
||||
// A token to retrieve next page of results.
|
||||
string next_page_token = 2;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,75 @@
|
|||
// Copyright 2019 Google LLC.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
//
|
||||
|
||||
syntax = "proto3";
|
||||
|
||||
package google.cloud.datalabeling.v1beta1;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
import "google/protobuf/duration.proto";
|
||||
import "google/protobuf/timestamp.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";
|
||||
|
||||
// Container of information about an image.
|
||||
message ImagePayload {
|
||||
// Image format.
|
||||
string mime_type = 1;
|
||||
|
||||
// A byte string of a thumbnail image.
|
||||
bytes image_thumbnail = 2;
|
||||
|
||||
// Image uri from the user bucket.
|
||||
string image_uri = 3;
|
||||
|
||||
// Signed uri of the image file in the service bucket.
|
||||
string signed_uri = 4;
|
||||
}
|
||||
|
||||
// Container of information about a piece of text.
|
||||
message TextPayload {
|
||||
// Text content.
|
||||
string text_content = 1;
|
||||
}
|
||||
|
||||
// Container of information of a video thumbnail.
|
||||
message VideoThumbnail {
|
||||
// A byte string of the video frame.
|
||||
bytes thumbnail = 1;
|
||||
|
||||
// Time offset relative to the beginning of the video, corresponding to the
|
||||
// video frame where the thumbnail has been extracted from.
|
||||
google.protobuf.Duration time_offset = 2;
|
||||
}
|
||||
|
||||
// Container of information of a video.
|
||||
message VideoPayload {
|
||||
// Video format.
|
||||
string mime_type = 1;
|
||||
|
||||
// Video uri from the user bucket.
|
||||
string video_uri = 2;
|
||||
|
||||
// The list of video thumbnails.
|
||||
repeated VideoThumbnail video_thumbnails = 3;
|
||||
|
||||
// FPS of the video.
|
||||
float frame_rate = 4;
|
||||
|
||||
// Signed uri of the video file in the service bucket.
|
||||
string signed_uri = 5;
|
||||
}
|
||||
|
|
@ -16,7 +16,6 @@ language_settings:
|
|||
package_name: Google\Cloud\Datalabeling\V1beta1
|
||||
nodejs:
|
||||
package_name: datalabeling.v1beta1
|
||||
domain_layer_location: google-cloud
|
||||
# The configuration for the license header to put on generated files.
|
||||
license_header:
|
||||
# The file containing the raw license header without any copyright line(s).
|
||||
|
|
@ -50,7 +49,10 @@ interfaces:
|
|||
entity_name: data_item
|
||||
- name_pattern: projects/{project}/instructions/{instruction}
|
||||
entity_name: instruction
|
||||
# Definition for retryable codes.
|
||||
- name_pattern: projects/{project}/datasets/{dataset}/evaluations/{evaluation}
|
||||
entity_name: evaluation
|
||||
- name_pattern: projects/{project}/evaluationJobs/{evaluation_job}
|
||||
entity_name: evaluation_job
|
||||
retry_codes_def:
|
||||
- name: idempotent
|
||||
retry_codes:
|
||||
|
|
@ -359,29 +361,6 @@ interfaces:
|
|||
max_poll_delay_millis: 5000
|
||||
total_poll_timeout_millis: 300000
|
||||
timeout_millis: 30000
|
||||
- name: LabelAudio
|
||||
flattening:
|
||||
groups:
|
||||
- parameters:
|
||||
- parent
|
||||
- basic_config
|
||||
- feature
|
||||
required_fields:
|
||||
- parent
|
||||
- basic_config
|
||||
- feature
|
||||
retry_codes_name: non_idempotent
|
||||
retry_params_name: default
|
||||
field_name_patterns:
|
||||
parent: dataset
|
||||
long_running:
|
||||
return_type: google.cloud.datalabeling.v1beta1.AnnotatedDataset
|
||||
metadata_type: google.cloud.datalabeling.v1beta1.LabelOperationMetadata
|
||||
initial_poll_delay_millis: 500
|
||||
poll_delay_multiplier: 1.5
|
||||
max_poll_delay_millis: 5000
|
||||
total_poll_timeout_millis: 300000
|
||||
timeout_millis: 30000
|
||||
- name: GetExample
|
||||
flattening:
|
||||
groups:
|
||||
|
|
@ -538,3 +517,153 @@ interfaces:
|
|||
field_name_patterns:
|
||||
name: instruction
|
||||
timeout_millis: 30000
|
||||
- name: GetEvaluation
|
||||
flattening:
|
||||
groups:
|
||||
- parameters:
|
||||
- name
|
||||
required_fields:
|
||||
- name
|
||||
retry_codes_name: idempotent
|
||||
retry_params_name: default
|
||||
field_name_patterns:
|
||||
name: evaluation
|
||||
timeout_millis: 60000
|
||||
- name: SearchEvaluations
|
||||
flattening:
|
||||
groups:
|
||||
- parameters:
|
||||
- parent
|
||||
- filter
|
||||
required_fields:
|
||||
- parent
|
||||
- filter
|
||||
page_streaming:
|
||||
request:
|
||||
page_size_field: page_size
|
||||
token_field: page_token
|
||||
response:
|
||||
token_field: next_page_token
|
||||
resources_field: evaluations
|
||||
retry_codes_name: idempotent
|
||||
retry_params_name: default
|
||||
field_name_patterns:
|
||||
parent: project
|
||||
timeout_millis: 60000
|
||||
- name: SearchExampleComparisons
|
||||
flattening:
|
||||
groups:
|
||||
- parameters:
|
||||
- parent
|
||||
required_fields:
|
||||
- parent
|
||||
page_streaming:
|
||||
request:
|
||||
page_size_field: page_size
|
||||
token_field: page_token
|
||||
response:
|
||||
token_field: next_page_token
|
||||
resources_field: example_comparisons
|
||||
retry_codes_name: non_idempotent
|
||||
retry_params_name: default
|
||||
field_name_patterns:
|
||||
parent: evaluation
|
||||
timeout_millis: 60000
|
||||
- name: CreateEvaluationJob
|
||||
flattening:
|
||||
groups:
|
||||
- parameters:
|
||||
- parent
|
||||
- job
|
||||
required_fields:
|
||||
- parent
|
||||
- job
|
||||
retry_codes_name: non_idempotent
|
||||
retry_params_name: default
|
||||
field_name_patterns:
|
||||
parent: project
|
||||
timeout_millis: 60000
|
||||
- name: UpdateEvaluationJob
|
||||
flattening:
|
||||
groups:
|
||||
- parameters:
|
||||
- evaluation_job
|
||||
- update_mask
|
||||
required_fields:
|
||||
- evaluation_job
|
||||
- update_mask
|
||||
retry_codes_name: non_idempotent
|
||||
retry_params_name: default
|
||||
field_name_patterns:
|
||||
evaluation_job.name: evaluation_job
|
||||
timeout_millis: 60000
|
||||
- name: GetEvaluationJob
|
||||
flattening:
|
||||
groups:
|
||||
- parameters:
|
||||
- name
|
||||
required_fields:
|
||||
- name
|
||||
retry_codes_name: idempotent
|
||||
retry_params_name: default
|
||||
field_name_patterns:
|
||||
name: evaluation_job
|
||||
timeout_millis: 60000
|
||||
- name: PauseEvaluationJob
|
||||
# params.
|
||||
flattening:
|
||||
groups:
|
||||
- parameters:
|
||||
- name
|
||||
required_fields:
|
||||
- name
|
||||
retry_codes_name: non_idempotent
|
||||
retry_params_name: default
|
||||
field_name_patterns:
|
||||
name: evaluation_job
|
||||
timeout_millis: 60000
|
||||
- name: ResumeEvaluationJob
|
||||
flattening:
|
||||
groups:
|
||||
- parameters:
|
||||
- name
|
||||
required_fields:
|
||||
- name
|
||||
retry_codes_name: non_idempotent
|
||||
retry_params_name: default
|
||||
field_name_patterns:
|
||||
name: evaluation_job
|
||||
timeout_millis: 60000
|
||||
- name: DeleteEvaluationJob
|
||||
flattening:
|
||||
groups:
|
||||
- parameters:
|
||||
- name
|
||||
required_fields:
|
||||
- name
|
||||
retry_codes_name: idempotent
|
||||
retry_params_name: default
|
||||
field_name_patterns:
|
||||
name: evaluation_job
|
||||
timeout_millis: 60000
|
||||
- name: ListEvaluationJobs
|
||||
flattening:
|
||||
groups:
|
||||
- parameters:
|
||||
- parent
|
||||
- filter
|
||||
required_fields:
|
||||
- parent
|
||||
- filter
|
||||
page_streaming:
|
||||
request:
|
||||
page_size_field: page_size
|
||||
token_field: page_token
|
||||
response:
|
||||
token_field: next_page_token
|
||||
resources_field: evaluation_jobs
|
||||
retry_codes_name: idempotent
|
||||
retry_params_name: default
|
||||
field_name_patterns:
|
||||
parent: project
|
||||
timeout_millis: 60000
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Copyright 2018 Google LLC.
|
||||
// Copyright 2019 Google LLC.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
|
|
@ -17,18 +17,16 @@ syntax = "proto3";
|
|||
|
||||
package google.cloud.datalabeling.v1beta1;
|
||||
|
||||
import "google/cloud/datalabeling/v1beta1/annotation.proto";
|
||||
import "google/cloud/datalabeling/v1beta1/human_annotation_config.proto";
|
||||
import "google/protobuf/duration.proto";
|
||||
import "google/protobuf/struct.proto";
|
||||
import "google/protobuf/timestamp.proto";
|
||||
import "google/api/annotations.proto";
|
||||
import "google/cloud/datalabeling/v1beta1/annotation.proto";
|
||||
import "google/cloud/datalabeling/v1beta1/data_payloads.proto";
|
||||
import "google/cloud/datalabeling/v1beta1/human_annotation_config.proto";
|
||||
import "google/protobuf/timestamp.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";
|
||||
|
||||
|
||||
enum DataType {
|
||||
DATA_TYPE_UNSPECIFIED = 0;
|
||||
|
||||
|
|
@ -38,14 +36,13 @@ enum DataType {
|
|||
|
||||
TEXT = 4;
|
||||
|
||||
AUDIO = 5;
|
||||
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 {
|
||||
// Output only.
|
||||
// Dataset resource name, format is:
|
||||
// Output only. Dataset resource name, format is:
|
||||
// projects/{project_id}/datasets/{dataset_id}
|
||||
string name = 1;
|
||||
|
||||
|
|
@ -63,39 +60,86 @@ message Dataset {
|
|||
// where ImportData is called. It is available only after the clients
|
||||
// import data to this dataset.
|
||||
repeated InputConfig input_configs = 5;
|
||||
|
||||
// Output only. The names of any related resources that are blocking changes
|
||||
// to the dataset.
|
||||
repeated string blocking_resources = 6;
|
||||
|
||||
// Output only. The number of data items in the dataset.
|
||||
int64 data_item_count = 7;
|
||||
}
|
||||
|
||||
// The configuration of input data, including data type, location, etc.
|
||||
message InputConfig {
|
||||
// Optional. The metadata associated with each data type.
|
||||
oneof data_type_metadata {
|
||||
// Required for text import, as language code must be specified.
|
||||
TextMetadata text_metadata = 6;
|
||||
}
|
||||
|
||||
// Required. Where the data is from.
|
||||
oneof source {
|
||||
// Source located in Cloud Storage.
|
||||
GcsSource gcs_source = 2;
|
||||
|
||||
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.
|
||||
AnnotationType annotation_type = 3;
|
||||
|
||||
// Optional. Metadata about annotations in the input. Each annotation type may
|
||||
// have different metadata.
|
||||
// Metadata for classification problem.
|
||||
ClassificationMetadata classification_metadata = 4;
|
||||
}
|
||||
|
||||
// Source of the GCS file to be imported. Only gcs path is allowed in
|
||||
// input_uri.
|
||||
// Metadata for the text.
|
||||
message TextMetadata {
|
||||
// The language of this text, as a
|
||||
// [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt).
|
||||
// Default value is en-US.
|
||||
string language_code = 1;
|
||||
}
|
||||
|
||||
// Metadata for classification annotations.
|
||||
message ClassificationMetadata {
|
||||
// Whether the classification task is multi-label or not.
|
||||
bool is_multi_label = 1;
|
||||
}
|
||||
|
||||
// Source of the Cloud Storage file to be imported.
|
||||
message GcsSource {
|
||||
// Required. The input uri of source file.
|
||||
// Required. The input URI of source file. This must be a Cloud Storage path
|
||||
// (`gs://...`).
|
||||
string input_uri = 1;
|
||||
|
||||
// Required. The format of the gcs source. Only "text/csv" is supported.
|
||||
// Required. The format of the source file. Only "text/csv" is supported.
|
||||
string mime_type = 2;
|
||||
}
|
||||
|
||||
// The BigQuery location for the input content.
|
||||
message BigQuerySource {
|
||||
// Required. BigQuery URI to a table, up to 2000 characters long.
|
||||
// Accepted forms: BigQuery gs path e.g. bq://projectId.bqDatasetId.bqTableId
|
||||
string input_uri = 1;
|
||||
}
|
||||
|
||||
// The configuration of output data.
|
||||
message OutputConfig {
|
||||
// Required. Location to output data to.
|
||||
oneof destination {
|
||||
// Output to a GCS file. Should be used for labeling output other than Audio
|
||||
// transcription.
|
||||
// Output to a file in Cloud Storage. Should be used for labeling output
|
||||
// other thanimage segmentation.
|
||||
GcsDestination gcs_destination = 1;
|
||||
|
||||
// Output to a GCS folder. Should be used for Audio transcription
|
||||
// labeling output.
|
||||
// Output to a folder in Cloud Storage. Should be used for image
|
||||
// segmentation labeling output.
|
||||
GcsFolderDestination gcs_folder_destination = 2;
|
||||
}
|
||||
}
|
||||
|
|
@ -114,7 +158,7 @@ message GcsDestination {
|
|||
|
||||
// Export folder destination of the data.
|
||||
message GcsFolderDestination {
|
||||
// Required. GCS folder to export data to.
|
||||
// Required. Cloud Storage directory to export data to.
|
||||
string output_folder_uri = 1;
|
||||
}
|
||||
|
||||
|
|
@ -130,9 +174,6 @@ message DataItem {
|
|||
|
||||
// The video payload, a container of the video uri.
|
||||
VideoPayload video_payload = 4;
|
||||
|
||||
// The audio payload, a container of the audio uri.
|
||||
AudioPayload audio_payload = 5;
|
||||
}
|
||||
|
||||
// Output only. Name of the data item, in format of:
|
||||
|
|
@ -144,8 +185,7 @@ message DataItem {
|
|||
// labeling task will generate an AnnotatedDataset under the Dataset that the
|
||||
// task is requested for.
|
||||
message AnnotatedDataset {
|
||||
// Output only.
|
||||
// AnnotatedDataset resource name in format of:
|
||||
// Output only. AnnotatedDataset resource name in format of:
|
||||
// projects/{project_id}/datasets/{dataset_id}/annotatedDatasets/
|
||||
// {annotated_dataset_id}
|
||||
string name = 1;
|
||||
|
|
@ -182,46 +222,62 @@ message AnnotatedDataset {
|
|||
|
||||
// Output only. Additional information about AnnotatedDataset.
|
||||
AnnotatedDatasetMetadata metadata = 10;
|
||||
}
|
||||
|
||||
// Metadata on AnnotatedDataset.
|
||||
message AnnotatedDatasetMetadata {
|
||||
// HumanAnnotationConfig used when requesting the human labeling task for this
|
||||
// AnnotatedDataset.
|
||||
HumanAnnotationConfig human_annotation_config = 1;
|
||||
|
||||
// Specific request configuration used when requesting the labeling task.
|
||||
oneof annotation_request_config {
|
||||
// Configuration for image classification task.
|
||||
ImageClassificationConfig image_classification_config = 2;
|
||||
// Configuration for image bounding box and bounding poly task.
|
||||
BoundingPolyConfig bounding_poly_config = 3;
|
||||
// Configuration for image polyline task.
|
||||
PolylineConfig polyline_config = 4;
|
||||
// Configuration for image segmentation task.
|
||||
SegmentationConfig segmentation_config = 5;
|
||||
// Configuration for video classification task.
|
||||
VideoClassificationConfig video_classification_config = 6;
|
||||
// Configuration for video object detection task.
|
||||
ObjectDetectionConfig object_detection_config = 7;
|
||||
// Configuration for video object tracking task.
|
||||
ObjectTrackingConfig object_tracking_config = 8;
|
||||
// Configuration for video event labeling task.
|
||||
EventConfig event_config = 9;
|
||||
// Configuration for text classification task.
|
||||
TextClassificationConfig text_classification_config = 10;
|
||||
// Configuration for text entity extraction task.
|
||||
TextEntityExtractionConfig text_entity_extraction_config = 11;
|
||||
}
|
||||
// Output only. The names of any related resources that are blocking changes
|
||||
// to the annotated dataset.
|
||||
repeated string blocking_resources = 11;
|
||||
}
|
||||
|
||||
// Statistics about annotation specs.
|
||||
message LabelStats {
|
||||
// Map of each annotation spec's example count. Key is the annotation spec
|
||||
// name and value is the number of examples for that annotation spec.
|
||||
// If the annotated dataset does not have annotation spec, the map will return
|
||||
// a pair where the key is empty string and value is the total number of
|
||||
// annotations.
|
||||
map<string, int64> example_count = 1;
|
||||
}
|
||||
|
||||
// Metadata on AnnotatedDataset.
|
||||
message AnnotatedDatasetMetadata {
|
||||
// Specific request configuration used when requesting the labeling task.
|
||||
oneof annotation_request_config {
|
||||
// Configuration for image classification task.
|
||||
ImageClassificationConfig image_classification_config = 2;
|
||||
|
||||
// Configuration for image bounding box and bounding poly task.
|
||||
BoundingPolyConfig bounding_poly_config = 3;
|
||||
|
||||
// Configuration for image polyline task.
|
||||
PolylineConfig polyline_config = 4;
|
||||
|
||||
// Configuration for image segmentation task.
|
||||
SegmentationConfig segmentation_config = 5;
|
||||
|
||||
// Configuration for video classification task.
|
||||
VideoClassificationConfig video_classification_config = 6;
|
||||
|
||||
// Configuration for video object detection task.
|
||||
ObjectDetectionConfig object_detection_config = 7;
|
||||
|
||||
// Configuration for video object tracking task.
|
||||
ObjectTrackingConfig object_tracking_config = 8;
|
||||
|
||||
// Configuration for video event labeling task.
|
||||
EventConfig event_config = 9;
|
||||
|
||||
// Configuration for text classification task.
|
||||
TextClassificationConfig text_classification_config = 10;
|
||||
|
||||
// Configuration for text entity extraction task.
|
||||
TextEntityExtractionConfig text_entity_extraction_config = 11;
|
||||
}
|
||||
|
||||
// HumanAnnotationConfig used when requesting the human labeling task for this
|
||||
// AnnotatedDataset.
|
||||
HumanAnnotationConfig human_annotation_config = 1;
|
||||
}
|
||||
|
||||
// An Example is a piece of data and its annotation. For example, an image with
|
||||
// label "house".
|
||||
message Example {
|
||||
|
|
@ -235,9 +291,6 @@ message Example {
|
|||
|
||||
// The video payload, a container of the video uri.
|
||||
VideoPayload video_payload = 7;
|
||||
|
||||
// The audio payload, a container of the audio uri.
|
||||
AudioPayload audio_payload = 8;
|
||||
}
|
||||
|
||||
// Output only. Name of the example, in format of:
|
||||
|
|
@ -249,58 +302,3 @@ message Example {
|
|||
// One piece of data can have multiple annotations.
|
||||
repeated Annotation annotations = 5;
|
||||
}
|
||||
|
||||
// Container of information about an image.
|
||||
message ImagePayload {
|
||||
// Image format.
|
||||
string mime_type = 1;
|
||||
|
||||
// A byte string of a full image.
|
||||
bytes image_thumbnail = 2;
|
||||
|
||||
// Image uri from the user bucket.
|
||||
string image_uri = 3;
|
||||
}
|
||||
|
||||
// Container of information about a piece of text.
|
||||
message TextPayload {
|
||||
// Text content.
|
||||
string text_content = 1;
|
||||
}
|
||||
|
||||
// Container of information of a video thumbnail.
|
||||
message VideoThumbnail {
|
||||
// A byte string of the video frame.
|
||||
bytes thumbnail = 1;
|
||||
|
||||
// Time offset relative to the beginning of the video, corresponding to the
|
||||
// video frame where the thumbnail has been extracted from.
|
||||
google.protobuf.Duration time_offset = 2;
|
||||
}
|
||||
|
||||
// Container of information of a video.
|
||||
message VideoPayload {
|
||||
// Video format.
|
||||
string mime_type = 1;
|
||||
|
||||
// Video uri from the user bucket.
|
||||
string video_uri = 2;
|
||||
|
||||
// The list of video thumbnails.
|
||||
repeated VideoThumbnail video_thumbnails = 3;
|
||||
|
||||
// FPS of the video.
|
||||
float frame_rate = 4;
|
||||
}
|
||||
|
||||
// Container of information of an audio.
|
||||
message AudioPayload {
|
||||
// Audio uri in user bucket.
|
||||
string audio_uri = 1;
|
||||
|
||||
// Sample rate in Hertz of the audio data sent in all
|
||||
// `RecognitionAudio` messages. This field is optional for `FLAC` and `WAV`
|
||||
// audio files and required for all other audio formats. For details,
|
||||
// see [AudioEncoding][google.cloud.datalabeling.v1beta1.AudioPayload.AudioEncoding].
|
||||
int32 sample_rate_hertz = 3;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,167 @@
|
|||
// Copyright 2019 Google LLC.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
//
|
||||
|
||||
syntax = "proto3";
|
||||
|
||||
package google.cloud.datalabeling.v1beta1;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
import "google/cloud/datalabeling/v1beta1/annotation.proto";
|
||||
import "google/cloud/datalabeling/v1beta1/annotation_spec_set.proto";
|
||||
import "google/protobuf/timestamp.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";
|
||||
|
||||
// Describes an evaluation between 2 annotated datasets. Created by an
|
||||
// evaluation plan.
|
||||
message Evaluation {
|
||||
// Resource name of an evaluation.
|
||||
// Format:
|
||||
// 'projects/{project_id}/datasets/{dataset_id}/evaluations/{evaluation_id}'
|
||||
string name = 1;
|
||||
|
||||
// Options used in evaluation plan for creating the evaluation.
|
||||
EvaluationConfig config = 2;
|
||||
|
||||
// Output only. Timestamp when the evaluation plan triggered this evaluation
|
||||
// flow.
|
||||
google.protobuf.Timestamp evaluation_job_run_time = 3;
|
||||
|
||||
// Output only. Timestamp when this model evaluation was created.
|
||||
google.protobuf.Timestamp create_time = 4;
|
||||
|
||||
// Output only. Metrics of the evaluation.
|
||||
EvaluationMetrics evaluation_metrics = 5;
|
||||
|
||||
// Type of the annotation to compute metrics for in the groundtruth and
|
||||
// annotation labeled dataset. Required for creation.
|
||||
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.
|
||||
int64 evaluated_item_count = 7;
|
||||
}
|
||||
|
||||
message EvaluationConfig {
|
||||
// Vertical specific options for general metrics.
|
||||
oneof vertical_option {
|
||||
BoundingBoxEvaluationOptions bounding_box_evaluation_options = 1;
|
||||
}
|
||||
}
|
||||
|
||||
// Options regarding evaluation between bounding boxes.
|
||||
message BoundingBoxEvaluationOptions {
|
||||
// Minimize IoU required to consider 2 bounding boxes are matched.
|
||||
float iou_threshold = 1;
|
||||
}
|
||||
|
||||
message EvaluationMetrics {
|
||||
// Common metrics covering most genernal cases.
|
||||
oneof metrics {
|
||||
ClassificationMetrics classification_metrics = 1;
|
||||
|
||||
ObjectDetectionMetrics object_detection_metrics = 2;
|
||||
}
|
||||
}
|
||||
|
||||
message ClassificationMetrics {
|
||||
// Precision-recall curve.
|
||||
PrCurve pr_curve = 1;
|
||||
|
||||
ConfusionMatrix confusion_matrix = 2;
|
||||
}
|
||||
|
||||
message ObjectDetectionMetrics {
|
||||
// Precision-recall curve.
|
||||
PrCurve pr_curve = 1;
|
||||
}
|
||||
|
||||
message PrCurve {
|
||||
message ConfidenceMetricsEntry {
|
||||
// Threshold used for this entry, for example, IoU threshold for bounding
|
||||
// box problem, or detection threshold for classification.
|
||||
float confidence_threshold = 1;
|
||||
|
||||
// Recall value.
|
||||
float recall = 2;
|
||||
|
||||
// Precision value.
|
||||
float precision = 3;
|
||||
|
||||
// Harmonic mean of recall and precision.
|
||||
float f1_score = 4;
|
||||
|
||||
// Recall value for entries with label that has highest score.
|
||||
float recall_at1 = 5;
|
||||
|
||||
// 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].
|
||||
float f1_score_at1 = 7;
|
||||
|
||||
// Recall value for entries with label that has highest 5 scores.
|
||||
float recall_at5 = 8;
|
||||
|
||||
// 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].
|
||||
float f1_score_at5 = 10;
|
||||
}
|
||||
|
||||
// PR curve against which annotation spec. Could be empty.
|
||||
AnnotationSpec annotation_spec = 1;
|
||||
|
||||
// Area under precision recall curve.
|
||||
float area_under_curve = 2;
|
||||
|
||||
// entries to draw PR graph.
|
||||
repeated ConfidenceMetricsEntry confidence_metrics_entries = 3;
|
||||
|
||||
// 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.
|
||||
message ConfusionMatrix {
|
||||
message ConfusionMatrixEntry {
|
||||
// The predicted annotation spec.
|
||||
AnnotationSpec annotation_spec = 1;
|
||||
|
||||
// Number of items being predicted as this label.
|
||||
int32 item_count = 2;
|
||||
}
|
||||
|
||||
// A row in the confusion matrix.
|
||||
message Row {
|
||||
// the original annotation spec of this row.
|
||||
AnnotationSpec annotation_spec = 1;
|
||||
|
||||
// Info describing predicted label distribution.
|
||||
repeated ConfusionMatrixEntry entries = 2;
|
||||
}
|
||||
|
||||
repeated Row row = 1;
|
||||
}
|
||||
|
|
@ -0,0 +1,151 @@
|
|||
// Copyright 2019 Google LLC.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
//
|
||||
|
||||
syntax = "proto3";
|
||||
|
||||
package google.cloud.datalabeling.v1beta1;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
import "google/cloud/datalabeling/v1beta1/dataset.proto";
|
||||
import "google/cloud/datalabeling/v1beta1/evaluation.proto";
|
||||
import "google/cloud/datalabeling/v1beta1/human_annotation_config.proto";
|
||||
import "google/protobuf/timestamp.proto";
|
||||
import "google/rpc/status.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";
|
||||
|
||||
// Defines an evaluation job that is triggered periodically to generate
|
||||
// evaluations.
|
||||
message EvaluationJob {
|
||||
// State of the job.
|
||||
enum State {
|
||||
STATE_UNSPECIFIED = 0;
|
||||
|
||||
SCHEDULED = 1;
|
||||
|
||||
RUNNING = 2;
|
||||
|
||||
PAUSED = 3;
|
||||
|
||||
STOPPED = 4;
|
||||
}
|
||||
|
||||
// Format: 'projects/{project_id}/evaluationJobs/{evaluation_job_id}'
|
||||
string name = 1;
|
||||
|
||||
// Description of the job. The description can be up to
|
||||
// 25000 characters long.
|
||||
string description = 2;
|
||||
|
||||
State state = 3;
|
||||
|
||||
// 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](http://en.wikipedia.org/wiki/Cron#Overview)
|
||||
// * English-like
|
||||
//
|
||||
// [schedule](https:
|
||||
// //cloud.google.com/scheduler/docs/configuring/cron-job-schedules)
|
||||
string schedule = 4;
|
||||
|
||||
// The versioned model that is being evaluated here.
|
||||
// Only one job is allowed for each model name.
|
||||
// Format: 'projects/*/models/*/versions/*'
|
||||
string model_version = 5;
|
||||
|
||||
// Detailed config for running this eval job.
|
||||
EvaluationJobConfig evaluation_job_config = 6;
|
||||
|
||||
// Name of the AnnotationSpecSet.
|
||||
string annotation_spec_set = 7;
|
||||
|
||||
// If a human annotation should be requested when some data don't have ground
|
||||
// truth.
|
||||
bool label_missing_ground_truth = 8;
|
||||
|
||||
// Output only. Any attempts with errors happening in evaluation job runs each
|
||||
// time will be recorded here incrementally.
|
||||
repeated Attempt attempts = 9;
|
||||
|
||||
// Timestamp when this evaluation job was created.
|
||||
google.protobuf.Timestamp create_time = 10;
|
||||
}
|
||||
|
||||
message EvaluationJobConfig {
|
||||
// config specific to different supported human annotation use cases.
|
||||
oneof human_annotation_request_config {
|
||||
ImageClassificationConfig image_classification_config = 4;
|
||||
|
||||
BoundingPolyConfig bounding_poly_config = 5;
|
||||
|
||||
VideoClassificationConfig video_classification_config = 6;
|
||||
|
||||
ObjectDetectionConfig object_detection_config = 7;
|
||||
|
||||
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.
|
||||
InputConfig input_config = 1;
|
||||
|
||||
// Config used to create evaluation.
|
||||
EvaluationConfig evaluation_config = 2;
|
||||
|
||||
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:
|
||||
//
|
||||
// https:
|
||||
// //docs.google.com/document/d/1bg1meMIBGY
|
||||
// // 9I5QEoFoHSX6u9LsZQYBSmPt6E9SxqHZc/edit#heading=h.tfyjhxhvsqem
|
||||
map<string, string> bigquery_import_keys = 9;
|
||||
|
||||
// Max number of examples to collect in each period.
|
||||
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.
|
||||
double example_sample_percentage = 11;
|
||||
|
||||
// Alert config for the evaluation job. The alert will be triggered when its
|
||||
// criteria is met.
|
||||
EvaluationJobAlertConfig evaluation_job_alert_config = 13;
|
||||
}
|
||||
|
||||
message EvaluationJobAlertConfig {
|
||||
// Required. Email of the user who will be receiving the alert.
|
||||
string email = 1;
|
||||
|
||||
// If a single evaluation run's aggregate mean average precision is
|
||||
// lower than this threshold, the alert will be triggered.
|
||||
double min_acceptable_mean_average_precision = 2;
|
||||
}
|
||||
|
||||
// Records a failed attempt.
|
||||
message Attempt {
|
||||
google.protobuf.Timestamp attempt_time = 1;
|
||||
|
||||
repeated google.rpc.Status partial_failures = 2;
|
||||
}
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
// Copyright 2018 Google LLC.
|
||||
// Copyright 2019 Google LLC.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
|
|
@ -17,14 +17,13 @@ syntax = "proto3";
|
|||
|
||||
package google.cloud.datalabeling.v1beta1;
|
||||
|
||||
import "google/protobuf/duration.proto";
|
||||
import "google/api/annotations.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";
|
||||
|
||||
|
||||
enum StringAggregationType {
|
||||
STRING_AGGREGATION_TYPE_UNSPECIFIED = 0;
|
||||
|
||||
|
|
@ -79,6 +78,10 @@ message HumanAnnotationConfig {
|
|||
// emails must be registered in crowdcompute worker UI:
|
||||
// https://crowd-compute.appspot.com/
|
||||
repeated string contributor_emails = 9;
|
||||
|
||||
// Email of the user who started the labeling task and should be notified by
|
||||
// email. If empty no notification will be sent.
|
||||
string user_email_address = 10;
|
||||
}
|
||||
|
||||
// Config for image classification human labeling task.
|
||||
|
|
@ -159,9 +162,6 @@ message ObjectDetectionConfig {
|
|||
// Required. Annotation spec set resource name.
|
||||
string annotation_spec_set = 1;
|
||||
|
||||
// Optional. Instruction message showed on labelers UI.
|
||||
string instruction_message = 2;
|
||||
|
||||
// Required. Number of frames per second to be extracted from the video.
|
||||
double extraction_frame_rate = 3;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Copyright 2018 Google LLC.
|
||||
// Copyright 2019 Google LLC.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
|
|
@ -17,15 +17,14 @@ syntax = "proto3";
|
|||
|
||||
package google.cloud.datalabeling.v1beta1;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
import "google/cloud/datalabeling/v1beta1/dataset.proto";
|
||||
import "google/protobuf/timestamp.proto";
|
||||
import "google/api/annotations.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";
|
||||
|
||||
|
||||
// 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.
|
||||
|
|
@ -53,16 +52,22 @@ message Instruction {
|
|||
// Required. The data type of this instruction.
|
||||
DataType data_type = 6;
|
||||
|
||||
// One of CSV and PDF instruction is required.
|
||||
// Instruction from a csv file, such as for classification task.
|
||||
// Csv file should have exact two columns, in the format of:
|
||||
// The first column is labeled data, such as image reference, text.
|
||||
// The second column is comma separated labels associated with data.
|
||||
// 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.
|
||||
CsvInstruction csv_instruction = 7;
|
||||
|
||||
// One of CSV and PDF instruction is required.
|
||||
// Instruction from a PDF doc. The PDF doc should be in GCS bucket.
|
||||
// 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;
|
||||
|
||||
// Output only. The names of any related resources that are blocking changes
|
||||
// to the instruction.
|
||||
repeated string blocking_resources = 10;
|
||||
}
|
||||
|
||||
// Instruction from a CSV file.
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
// Copyright 2018 Google LLC.
|
||||
// Copyright 2019 Google LLC.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
|
|
@ -17,12 +17,11 @@ syntax = "proto3";
|
|||
|
||||
package google.cloud.datalabeling.v1beta1;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
import "google/cloud/datalabeling/v1beta1/dataset.proto";
|
||||
import "google/cloud/datalabeling/v1beta1/human_annotation_config.proto";
|
||||
import "google/cloud/datalabeling/v1beta1/instruction.proto";
|
||||
import "google/protobuf/timestamp.proto";
|
||||
import "google/rpc/status.proto";
|
||||
import "google/api/annotations.proto";
|
||||
|
||||
option go_package = "google.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabeling";
|
||||
option java_multiple_files = true;
|
||||
|
|
@ -69,6 +68,9 @@ message ImportDataOperationMetadata {
|
|||
// E.g. single files that couldn't be read.
|
||||
// Status details field will contain standard GCP error details.
|
||||
repeated google.rpc.Status partial_failures = 2;
|
||||
|
||||
// Output only. Timestamp when import dataset request was created.
|
||||
google.protobuf.Timestamp create_time = 3;
|
||||
}
|
||||
|
||||
// Metadata of an ExportData operation.
|
||||
|
|
@ -81,13 +83,57 @@ message ExportDataOperationMetadata {
|
|||
// E.g. single files that couldn't be read.
|
||||
// Status details field will contain standard GCP error details.
|
||||
repeated google.rpc.Status partial_failures = 2;
|
||||
|
||||
// Output only. Timestamp when export dataset request was created.
|
||||
google.protobuf.Timestamp create_time = 3;
|
||||
}
|
||||
|
||||
// Metadata of a labeling operation, such as LabelImage or LabelVideo.
|
||||
// Next tag: 16
|
||||
// Next tag: 18
|
||||
message LabelOperationMetadata {
|
||||
// Ouptut only. Details of specific label operation.
|
||||
oneof details {
|
||||
// Details of label image classification operation.
|
||||
LabelImageClassificationOperationMetadata image_classification_details = 3;
|
||||
|
||||
// Details of label image bounding box operation.
|
||||
LabelImageBoundingBoxOperationMetadata image_bounding_box_details = 4;
|
||||
|
||||
// Details of label image bounding poly operation.
|
||||
LabelImageBoundingPolyOperationMetadata image_bounding_poly_details = 11;
|
||||
|
||||
// Details of label image oriented bounding box operation.
|
||||
LabelImageOrientedBoundingBoxOperationMetadata
|
||||
image_oriented_bounding_box_details = 14;
|
||||
|
||||
// Details of label image polyline operation.
|
||||
LabelImagePolylineOperationMetadata image_polyline_details = 12;
|
||||
|
||||
// Details of label image segmentation operation.
|
||||
LabelImageSegmentationOperationMetadata image_segmentation_details = 15;
|
||||
|
||||
// Details of label video classification operation.
|
||||
LabelVideoClassificationOperationMetadata video_classification_details = 5;
|
||||
|
||||
// Details of label video object detection operation.
|
||||
LabelVideoObjectDetectionOperationMetadata video_object_detection_details =
|
||||
6;
|
||||
|
||||
// Details of label video object tracking operation.
|
||||
LabelVideoObjectTrackingOperationMetadata video_object_tracking_details = 7;
|
||||
|
||||
// Details of label video event operation.
|
||||
LabelVideoEventOperationMetadata video_event_details = 8;
|
||||
|
||||
// Details of label text classification operation.
|
||||
LabelTextClassificationOperationMetadata text_classification_details = 9;
|
||||
|
||||
// Details of label text entity extraction operation.
|
||||
LabelTextEntityExtractionOperationMetadata text_entity_extraction_details =
|
||||
13;
|
||||
}
|
||||
|
||||
// Output only. Progress of label operation. Range: [0, 100].
|
||||
// Currently not supported.
|
||||
int32 progress_percent = 1;
|
||||
|
||||
// Output only. Partial failures encountered.
|
||||
|
|
@ -95,25 +141,8 @@ message LabelOperationMetadata {
|
|||
// Status details field will contain standard GCP error details.
|
||||
repeated google.rpc.Status partial_failures = 2;
|
||||
|
||||
// Ouptut only. Details of specific label operation.
|
||||
oneof details {
|
||||
LabelImageClassificationOperationMetadata image_classification_details = 3;
|
||||
LabelImageBoundingBoxOperationMetadata image_bounding_box_details = 4;
|
||||
LabelImageBoundingPolyOperationMetadata image_bounding_poly_details = 11;
|
||||
LabelImageOrientedBoundingBoxOperationMetadata
|
||||
image_oriented_bounding_box_details = 14;
|
||||
LabelImagePolylineOperationMetadata image_polyline_details = 12;
|
||||
LabelImageSegmentationOperationMetadata image_segmentation_details = 15;
|
||||
LabelVideoClassificationOperationMetadata video_classification_details = 5;
|
||||
LabelVideoObjectDetectionOperationMetadata video_object_detection_details =
|
||||
6;
|
||||
LabelVideoObjectTrackingOperationMetadata video_object_tracking_details = 7;
|
||||
LabelVideoEventOperationMetadata video_event_details = 8;
|
||||
LabelTextClassificationOperationMetadata text_classification_details = 9;
|
||||
LabelAudioTranscriptionOperationMetadata audio_transcription_details = 10;
|
||||
LabelTextEntityExtractionOperationMetadata text_entity_extraction_details =
|
||||
13;
|
||||
}
|
||||
// Output only. Timestamp when labeling request was created.
|
||||
google.protobuf.Timestamp create_time = 16;
|
||||
}
|
||||
|
||||
// Metadata of a LabelImageClassification operation.
|
||||
|
|
@ -182,11 +211,6 @@ message LabelTextClassificationOperationMetadata {
|
|||
HumanAnnotationConfig basic_config = 1;
|
||||
}
|
||||
|
||||
message LabelAudioTranscriptionOperationMetadata {
|
||||
// Basic human annotation config used in labeling request.
|
||||
HumanAnnotationConfig basic_config = 1;
|
||||
}
|
||||
|
||||
// Details of a LabelTextEntityExtraction operation metadata.
|
||||
message LabelTextEntityExtractionOperationMetadata {
|
||||
// Basic human annotation config used in labeling request.
|
||||
|
|
@ -195,12 +219,15 @@ message LabelTextEntityExtractionOperationMetadata {
|
|||
|
||||
// Metadata of a CreateInstruction operation.
|
||||
message CreateInstructionMetadata {
|
||||
// Output only. The name of the created Instruction.
|
||||
// The name of the created Instruction.
|
||||
// projects/{project_id}/instructions/{instruction_id}
|
||||
string instruction = 1;
|
||||
|
||||
// Output only. Partial failures encountered.
|
||||
// Partial failures encountered.
|
||||
// E.g. single files that couldn't be read.
|
||||
// Status details field will contain standard GCP error details.
|
||||
repeated google.rpc.Status partial_failures = 2;
|
||||
|
||||
// Timestamp when create instruction request was created.
|
||||
google.protobuf.Timestamp create_time = 3;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue