google-cloud-data_labeling-v1beta1 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.yardopts +12 -0
- data/AUTHENTICATION.md +169 -0
- data/LICENSE.md +203 -0
- data/README.md +75 -0
- data/lib/google-cloud-data_labeling-v1beta1.rb +21 -0
- data/lib/google/cloud/data_labeling/v1beta1.rb +35 -0
- data/lib/google/cloud/data_labeling/v1beta1/data_labeling_service.rb +50 -0
- data/lib/google/cloud/data_labeling/v1beta1/data_labeling_service/client.rb +3294 -0
- data/lib/google/cloud/data_labeling/v1beta1/data_labeling_service/credentials.rb +51 -0
- data/lib/google/cloud/data_labeling/v1beta1/data_labeling_service/operations.rb +570 -0
- data/lib/google/cloud/data_labeling/v1beta1/data_labeling_service/paths.rb +193 -0
- data/lib/google/cloud/data_labeling/v1beta1/version.rb +28 -0
- data/lib/google/cloud/datalabeling/v1beta1/annotation_pb.rb +178 -0
- data/lib/google/cloud/datalabeling/v1beta1/annotation_spec_set_pb.rb +33 -0
- data/lib/google/cloud/datalabeling/v1beta1/data_labeling_service_pb.rb +301 -0
- data/lib/google/cloud/datalabeling/v1beta1/data_labeling_service_services_pb.rb +132 -0
- data/lib/google/cloud/datalabeling/v1beta1/data_payloads_pb.rb +45 -0
- data/lib/google/cloud/datalabeling/v1beta1/dataset_pb.rb +142 -0
- data/lib/google/cloud/datalabeling/v1beta1/evaluation_job_pb.rb +71 -0
- data/lib/google/cloud/datalabeling/v1beta1/evaluation_pb.rb +93 -0
- data/lib/google/cloud/datalabeling/v1beta1/human_annotation_config_pb.rb +98 -0
- data/lib/google/cloud/datalabeling/v1beta1/instruction_pb.rb +42 -0
- data/lib/google/cloud/datalabeling/v1beta1/operations_pb.rb +124 -0
- data/proto_docs/README.md +4 -0
- data/proto_docs/google/api/field_behavior.rb +59 -0
- data/proto_docs/google/api/resource.rb +283 -0
- data/proto_docs/google/cloud/datalabeling/v1beta1/annotation.rb +407 -0
- data/proto_docs/google/cloud/datalabeling/v1beta1/annotation_spec_set.rb +71 -0
- data/proto_docs/google/cloud/datalabeling/v1beta1/data_labeling_service.rb +839 -0
- data/proto_docs/google/cloud/datalabeling/v1beta1/data_payloads.rb +87 -0
- data/proto_docs/google/cloud/datalabeling/v1beta1/dataset.rb +354 -0
- data/proto_docs/google/cloud/datalabeling/v1beta1/evaluation.rb +225 -0
- data/proto_docs/google/cloud/datalabeling/v1beta1/evaluation_job.rb +280 -0
- data/proto_docs/google/cloud/datalabeling/v1beta1/human_annotation_config.rb +248 -0
- data/proto_docs/google/cloud/datalabeling/v1beta1/instruction.rb +88 -0
- data/proto_docs/google/cloud/datalabeling/v1beta1/operations.rb +279 -0
- data/proto_docs/google/longrunning/operations.rb +150 -0
- data/proto_docs/google/protobuf/any.rb +138 -0
- data/proto_docs/google/protobuf/duration.rb +98 -0
- data/proto_docs/google/protobuf/empty.rb +36 -0
- data/proto_docs/google/protobuf/field_mask.rb +229 -0
- data/proto_docs/google/protobuf/timestamp.rb +120 -0
- data/proto_docs/google/rpc/status.rb +46 -0
- metadata +227 -0
@@ -0,0 +1,280 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2020 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Cloud
|
22
|
+
module DataLabeling
|
23
|
+
module V1beta1
|
24
|
+
# Defines an evaluation job that runs periodically to generate
|
25
|
+
# {::Google::Cloud::DataLabeling::V1beta1::Evaluation Evaluations}. [Creating an evaluation
|
26
|
+
# job](/ml-engine/docs/continuous-evaluation/create-job) is the starting point
|
27
|
+
# for using continuous evaluation.
|
28
|
+
# @!attribute [rw] name
|
29
|
+
# @return [::String]
|
30
|
+
# Output only. After you create a job, Data Labeling Service assigns a name
|
31
|
+
# to the job with the following format:
|
32
|
+
#
|
33
|
+
# "projects/<var>\\{project_id}</var>/evaluationJobs/<var>\\{evaluation_job_id}</var>"
|
34
|
+
# @!attribute [rw] description
|
35
|
+
# @return [::String]
|
36
|
+
# Required. Description of the job. The description can be up to 25,000
|
37
|
+
# characters long.
|
38
|
+
# @!attribute [rw] state
|
39
|
+
# @return [::Google::Cloud::DataLabeling::V1beta1::EvaluationJob::State]
|
40
|
+
# Output only. Describes the current state of the job.
|
41
|
+
# @!attribute [rw] schedule
|
42
|
+
# @return [::String]
|
43
|
+
# Required. Describes the interval at which the job runs. This interval must
|
44
|
+
# be at least 1 day, and it is rounded to the nearest day. For example, if
|
45
|
+
# you specify a 50-hour interval, the job runs every 2 days.
|
46
|
+
#
|
47
|
+
# You can provide the schedule in
|
48
|
+
# [crontab format](/scheduler/docs/configuring/cron-job-schedules) or in an
|
49
|
+
# [English-like
|
50
|
+
# format](/appengine/docs/standard/python/config/cronref#schedule_format).
|
51
|
+
#
|
52
|
+
# Regardless of what you specify, the job will run at 10:00 AM UTC. Only the
|
53
|
+
# interval from this schedule is used, not the specific time of day.
|
54
|
+
# @!attribute [rw] model_version
|
55
|
+
# @return [::String]
|
56
|
+
# Required. The [AI Platform Prediction model
|
57
|
+
# version](/ml-engine/docs/prediction-overview) to be evaluated. Prediction
|
58
|
+
# input and output is sampled from this model version. When creating an
|
59
|
+
# evaluation job, specify the model version in the following format:
|
60
|
+
#
|
61
|
+
# "projects/<var>\\{project_id}</var>/models/<var>\\{model_name}</var>/versions/<var>\\{version_name}</var>"
|
62
|
+
#
|
63
|
+
# There can only be one evaluation job per model version.
|
64
|
+
# @!attribute [rw] evaluation_job_config
|
65
|
+
# @return [::Google::Cloud::DataLabeling::V1beta1::EvaluationJobConfig]
|
66
|
+
# Required. Configuration details for the evaluation job.
|
67
|
+
# @!attribute [rw] annotation_spec_set
|
68
|
+
# @return [::String]
|
69
|
+
# Required. Name of the {::Google::Cloud::DataLabeling::V1beta1::AnnotationSpecSet AnnotationSpecSet} describing all the
|
70
|
+
# labels that your machine learning model outputs. You must create this
|
71
|
+
# resource before you create an evaluation job and provide its name in the
|
72
|
+
# following format:
|
73
|
+
#
|
74
|
+
# "projects/<var>\\{project_id}</var>/annotationSpecSets/<var>\\{annotation_spec_set_id}</var>"
|
75
|
+
# @!attribute [rw] label_missing_ground_truth
|
76
|
+
# @return [::Boolean]
|
77
|
+
# Required. Whether you want Data Labeling Service to provide ground truth
|
78
|
+
# labels for prediction input. If you want the service to assign human
|
79
|
+
# labelers to annotate your data, set this to `true`. If you want to provide
|
80
|
+
# your own ground truth labels in the evaluation job's BigQuery table, set
|
81
|
+
# this to `false`.
|
82
|
+
# @!attribute [rw] attempts
|
83
|
+
# @return [::Array<::Google::Cloud::DataLabeling::V1beta1::Attempt>]
|
84
|
+
# Output only. Every time the evaluation job runs and an error occurs, the
|
85
|
+
# failed attempt is appended to this array.
|
86
|
+
# @!attribute [rw] create_time
|
87
|
+
# @return [::Google::Protobuf::Timestamp]
|
88
|
+
# Output only. Timestamp of when this evaluation job was created.
|
89
|
+
class EvaluationJob
|
90
|
+
include ::Google::Protobuf::MessageExts
|
91
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
92
|
+
|
93
|
+
# State of the job.
|
94
|
+
module State
|
95
|
+
STATE_UNSPECIFIED = 0
|
96
|
+
|
97
|
+
# The job is scheduled to run at the {::Google::Cloud::DataLabeling::V1beta1::EvaluationJob#schedule configured interval}. You
|
98
|
+
# can {::Google::Cloud::DataLabeling::V1beta1::DataLabelingService::Client#pause_evaluation_job pause} or
|
99
|
+
# {::Google::Cloud::DataLabeling::V1beta1::DataLabelingService::Client#delete_evaluation_job delete} the job.
|
100
|
+
#
|
101
|
+
# When the job is in this state, it samples prediction input and output
|
102
|
+
# from your model version into your BigQuery table as predictions occur.
|
103
|
+
SCHEDULED = 1
|
104
|
+
|
105
|
+
# The job is currently running. When the job runs, Data Labeling Service
|
106
|
+
# does several things:
|
107
|
+
#
|
108
|
+
# 1. If you have configured your job to use Data Labeling Service for
|
109
|
+
# ground truth labeling, the service creates a
|
110
|
+
# {::Google::Cloud::DataLabeling::V1beta1::Dataset Dataset} and a labeling task for all data sampled
|
111
|
+
# since the last time the job ran. Human labelers provide ground truth
|
112
|
+
# labels for your data. Human labeling may take hours, or even days,
|
113
|
+
# depending on how much data has been sampled. The job remains in the
|
114
|
+
# `RUNNING` state during this time, and it can even be running multiple
|
115
|
+
# times in parallel if it gets triggered again (for example 24 hours
|
116
|
+
# later) before the earlier run has completed. When human labelers have
|
117
|
+
# finished labeling the data, the next step occurs.
|
118
|
+
# <br><br>
|
119
|
+
# If you have configured your job to provide your own ground truth
|
120
|
+
# labels, Data Labeling Service still creates a {::Google::Cloud::DataLabeling::V1beta1::Dataset Dataset} for newly
|
121
|
+
# sampled data, but it expects that you have already added ground truth
|
122
|
+
# labels to the BigQuery table by this time. The next step occurs
|
123
|
+
# immediately.
|
124
|
+
#
|
125
|
+
# 2. Data Labeling Service creates an {::Google::Cloud::DataLabeling::V1beta1::Evaluation Evaluation} by comparing your
|
126
|
+
# model version's predictions with the ground truth labels.
|
127
|
+
#
|
128
|
+
# If the job remains in this state for a long time, it continues to sample
|
129
|
+
# prediction data into your BigQuery table and will run again at the next
|
130
|
+
# interval, even if it causes the job to run multiple times in parallel.
|
131
|
+
RUNNING = 2
|
132
|
+
|
133
|
+
# The job is not sampling prediction input and output into your BigQuery
|
134
|
+
# table and it will not run according to its schedule. You can
|
135
|
+
# {::Google::Cloud::DataLabeling::V1beta1::DataLabelingService::Client#resume_evaluation_job resume} the job.
|
136
|
+
PAUSED = 3
|
137
|
+
|
138
|
+
# The job has this state right before it is deleted.
|
139
|
+
STOPPED = 4
|
140
|
+
end
|
141
|
+
end
|
142
|
+
|
143
|
+
# Configures specific details of how a continuous evaluation job works. Provide
|
144
|
+
# this configuration when you create an EvaluationJob.
|
145
|
+
# @!attribute [rw] image_classification_config
|
146
|
+
# @return [::Google::Cloud::DataLabeling::V1beta1::ImageClassificationConfig]
|
147
|
+
# Specify this field if your model version performs image classification or
|
148
|
+
# general classification.
|
149
|
+
#
|
150
|
+
# `annotationSpecSet` in this configuration must match
|
151
|
+
# {::Google::Cloud::DataLabeling::V1beta1::EvaluationJob#annotation_spec_set EvaluationJob.annotationSpecSet}.
|
152
|
+
# `allowMultiLabel` in this configuration must match
|
153
|
+
# `classificationMetadata.isMultiLabel` in {::Google::Cloud::DataLabeling::V1beta1::EvaluationJobConfig#input_config input_config}.
|
154
|
+
# @!attribute [rw] bounding_poly_config
|
155
|
+
# @return [::Google::Cloud::DataLabeling::V1beta1::BoundingPolyConfig]
|
156
|
+
# Specify this field if your model version performs image object detection
|
157
|
+
# (bounding box detection).
|
158
|
+
#
|
159
|
+
# `annotationSpecSet` in this configuration must match
|
160
|
+
# {::Google::Cloud::DataLabeling::V1beta1::EvaluationJob#annotation_spec_set EvaluationJob.annotationSpecSet}.
|
161
|
+
# @!attribute [rw] text_classification_config
|
162
|
+
# @return [::Google::Cloud::DataLabeling::V1beta1::TextClassificationConfig]
|
163
|
+
# Specify this field if your model version performs text classification.
|
164
|
+
#
|
165
|
+
# `annotationSpecSet` in this configuration must match
|
166
|
+
# {::Google::Cloud::DataLabeling::V1beta1::EvaluationJob#annotation_spec_set EvaluationJob.annotationSpecSet}.
|
167
|
+
# `allowMultiLabel` in this configuration must match
|
168
|
+
# `classificationMetadata.isMultiLabel` in {::Google::Cloud::DataLabeling::V1beta1::EvaluationJobConfig#input_config input_config}.
|
169
|
+
# @!attribute [rw] input_config
|
170
|
+
# @return [::Google::Cloud::DataLabeling::V1beta1::InputConfig]
|
171
|
+
# Rquired. Details for the sampled prediction input. Within this
|
172
|
+
# configuration, there are requirements for several fields:
|
173
|
+
#
|
174
|
+
# * `dataType` must be one of `IMAGE`, `TEXT`, or `GENERAL_DATA`.
|
175
|
+
# * `annotationType` must be one of `IMAGE_CLASSIFICATION_ANNOTATION`,
|
176
|
+
# `TEXT_CLASSIFICATION_ANNOTATION`, `GENERAL_CLASSIFICATION_ANNOTATION`,
|
177
|
+
# or `IMAGE_BOUNDING_BOX_ANNOTATION` (image object detection).
|
178
|
+
# * If your machine learning model performs classification, you must specify
|
179
|
+
# `classificationMetadata.isMultiLabel`.
|
180
|
+
# * You must specify `bigquerySource` (not `gcsSource`).
|
181
|
+
# @!attribute [rw] evaluation_config
|
182
|
+
# @return [::Google::Cloud::DataLabeling::V1beta1::EvaluationConfig]
|
183
|
+
# Required. Details for calculating evaluation metrics and creating
|
184
|
+
# {::Google::Cloud::DataLabeling::V1beta1::Evaluation Evaulations}. If your model version performs image object
|
185
|
+
# detection, you must specify the `boundingBoxEvaluationOptions` field within
|
186
|
+
# this configuration. Otherwise, provide an empty object for this
|
187
|
+
# configuration.
|
188
|
+
# @!attribute [rw] human_annotation_config
|
189
|
+
# @return [::Google::Cloud::DataLabeling::V1beta1::HumanAnnotationConfig]
|
190
|
+
# Optional. Details for human annotation of your data. If you set
|
191
|
+
# {::Google::Cloud::DataLabeling::V1beta1::EvaluationJob#label_missing_ground_truth labelMissingGroundTruth} to
|
192
|
+
# `true` for this evaluation job, then you must specify this field. If you
|
193
|
+
# plan to provide your own ground truth labels, then omit this field.
|
194
|
+
#
|
195
|
+
# Note that you must create an {::Google::Cloud::DataLabeling::V1beta1::Instruction Instruction} resource before you can
|
196
|
+
# specify this field. Provide the name of the instruction resource in the
|
197
|
+
# `instruction` field within this configuration.
|
198
|
+
# @!attribute [rw] bigquery_import_keys
|
199
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
200
|
+
# Required. Prediction keys that tell Data Labeling Service where to find the
|
201
|
+
# data for evaluation in your BigQuery table. When the service samples
|
202
|
+
# prediction input and output from your model version and saves it to
|
203
|
+
# BigQuery, the data gets stored as JSON strings in the BigQuery table. These
|
204
|
+
# keys tell Data Labeling Service how to parse the JSON.
|
205
|
+
#
|
206
|
+
# You can provide the following entries in this field:
|
207
|
+
#
|
208
|
+
# * `data_json_key`: the data key for prediction input. You must provide
|
209
|
+
# either this key or `reference_json_key`.
|
210
|
+
# * `reference_json_key`: the data reference key for prediction input. You
|
211
|
+
# must provide either this key or `data_json_key`.
|
212
|
+
# * `label_json_key`: the label key for prediction output. Required.
|
213
|
+
# * `label_score_json_key`: the score key for prediction output. Required.
|
214
|
+
# * `bounding_box_json_key`: the bounding box key for prediction output.
|
215
|
+
# Required if your model version perform image object detection.
|
216
|
+
#
|
217
|
+
# Learn [how to configure prediction
|
218
|
+
# keys](/ml-engine/docs/continuous-evaluation/create-job#prediction-keys).
|
219
|
+
# @!attribute [rw] example_count
|
220
|
+
# @return [::Integer]
|
221
|
+
# Required. The maximum number of predictions to sample and save to BigQuery
|
222
|
+
# during each {::Google::Cloud::DataLabeling::V1beta1::EvaluationJob#schedule evaluation interval}. This limit
|
223
|
+
# overrides `example_sample_percentage`: even if the service has not sampled
|
224
|
+
# enough predictions to fulfill `example_sample_perecentage` during an
|
225
|
+
# interval, it stops sampling predictions when it meets this limit.
|
226
|
+
# @!attribute [rw] example_sample_percentage
|
227
|
+
# @return [::Float]
|
228
|
+
# Required. Fraction of predictions to sample and save to BigQuery during
|
229
|
+
# each {::Google::Cloud::DataLabeling::V1beta1::EvaluationJob#schedule evaluation interval}. For example, 0.1 means
|
230
|
+
# 10% of predictions served by your model version get saved to BigQuery.
|
231
|
+
# @!attribute [rw] evaluation_job_alert_config
|
232
|
+
# @return [::Google::Cloud::DataLabeling::V1beta1::EvaluationJobAlertConfig]
|
233
|
+
# Optional. Configuration details for evaluation job alerts. Specify this
|
234
|
+
# field if you want to receive email alerts if the evaluation job finds that
|
235
|
+
# your predictions have low mean average precision during a run.
|
236
|
+
class EvaluationJobConfig
|
237
|
+
include ::Google::Protobuf::MessageExts
|
238
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
239
|
+
|
240
|
+
# @!attribute [rw] key
|
241
|
+
# @return [::String]
|
242
|
+
# @!attribute [rw] value
|
243
|
+
# @return [::String]
|
244
|
+
class BigqueryImportKeysEntry
|
245
|
+
include ::Google::Protobuf::MessageExts
|
246
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
247
|
+
end
|
248
|
+
end
|
249
|
+
|
250
|
+
# Provides details for how an evaluation job sends email alerts based on the
|
251
|
+
# results of a run.
|
252
|
+
# @!attribute [rw] email
|
253
|
+
# @return [::String]
|
254
|
+
# Required. An email address to send alerts to.
|
255
|
+
# @!attribute [rw] min_acceptable_mean_average_precision
|
256
|
+
# @return [::Float]
|
257
|
+
# Required. A number between 0 and 1 that describes a minimum mean average
|
258
|
+
# precision threshold. When the evaluation job runs, if it calculates that
|
259
|
+
# your model version's predictions from the recent interval have
|
260
|
+
# {::Google::Cloud::DataLabeling::V1beta1::PrCurve#mean_average_precision meanAveragePrecision} below this
|
261
|
+
# threshold, then it sends an alert to your specified email.
|
262
|
+
class EvaluationJobAlertConfig
|
263
|
+
include ::Google::Protobuf::MessageExts
|
264
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
265
|
+
end
|
266
|
+
|
267
|
+
# Records a failed evaluation job run.
|
268
|
+
# @!attribute [rw] attempt_time
|
269
|
+
# @return [::Google::Protobuf::Timestamp]
|
270
|
+
# @!attribute [rw] partial_failures
|
271
|
+
# @return [::Array<::Google::Rpc::Status>]
|
272
|
+
# Details of errors that occurred.
|
273
|
+
class Attempt
|
274
|
+
include ::Google::Protobuf::MessageExts
|
275
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
276
|
+
end
|
277
|
+
end
|
278
|
+
end
|
279
|
+
end
|
280
|
+
end
|
@@ -0,0 +1,248 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2020 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Cloud
|
22
|
+
module DataLabeling
|
23
|
+
module V1beta1
|
24
|
+
# Configuration for how human labeling task should be done.
|
25
|
+
# @!attribute [rw] instruction
|
26
|
+
# @return [::String]
|
27
|
+
# Required. Instruction resource name.
|
28
|
+
# @!attribute [rw] annotated_dataset_display_name
|
29
|
+
# @return [::String]
|
30
|
+
# Required. A human-readable name for AnnotatedDataset defined by
|
31
|
+
# users. Maximum of 64 characters
|
32
|
+
# .
|
33
|
+
# @!attribute [rw] annotated_dataset_description
|
34
|
+
# @return [::String]
|
35
|
+
# Optional. A human-readable description for AnnotatedDataset.
|
36
|
+
# The description can be up to 10000 characters long.
|
37
|
+
# @!attribute [rw] label_group
|
38
|
+
# @return [::String]
|
39
|
+
# Optional. A human-readable label used to logically group labeling tasks.
|
40
|
+
# This string must match the regular expression `[a-zA-Z\\d_-]{0,128}`.
|
41
|
+
# @!attribute [rw] language_code
|
42
|
+
# @return [::String]
|
43
|
+
# Optional. The Language of this question, as a
|
44
|
+
# [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt).
|
45
|
+
# Default value is en-US.
|
46
|
+
# Only need to set this when task is language related. For example, French
|
47
|
+
# text classification.
|
48
|
+
# @!attribute [rw] replica_count
|
49
|
+
# @return [::Integer]
|
50
|
+
# Optional. Replication of questions. Each question will be sent to up to
|
51
|
+
# this number of contributors to label. Aggregated answers will be returned.
|
52
|
+
# Default is set to 1.
|
53
|
+
# For image related labeling, valid values are 1, 3, 5.
|
54
|
+
# @!attribute [rw] question_duration
|
55
|
+
# @return [::Google::Protobuf::Duration]
|
56
|
+
# Optional. Maximum duration for contributors to answer a question. Maximum
|
57
|
+
# is 3600 seconds. Default is 3600 seconds.
|
58
|
+
# @!attribute [rw] contributor_emails
|
59
|
+
# @return [::Array<::String>]
|
60
|
+
# Optional. If you want your own labeling contributors to manage and work on
|
61
|
+
# this labeling request, you can set these contributors here. We will give
|
62
|
+
# them access to the question types in crowdcompute. Note that these
|
63
|
+
# emails must be registered in crowdcompute worker UI:
|
64
|
+
# https://crowd-compute.appspot.com/
|
65
|
+
# @!attribute [rw] user_email_address
|
66
|
+
# @return [::String]
|
67
|
+
# Email of the user who started the labeling task and should be notified by
|
68
|
+
# email. If empty no notification will be sent.
|
69
|
+
class HumanAnnotationConfig
|
70
|
+
include ::Google::Protobuf::MessageExts
|
71
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
72
|
+
end
|
73
|
+
|
74
|
+
# Config for image classification human labeling task.
|
75
|
+
# @!attribute [rw] annotation_spec_set
|
76
|
+
# @return [::String]
|
77
|
+
# Required. Annotation spec set resource name.
|
78
|
+
# @!attribute [rw] allow_multi_label
|
79
|
+
# @return [::Boolean]
|
80
|
+
# Optional. If allow_multi_label is true, contributors are able to choose
|
81
|
+
# multiple labels for one image.
|
82
|
+
# @!attribute [rw] answer_aggregation_type
|
83
|
+
# @return [::Google::Cloud::DataLabeling::V1beta1::StringAggregationType]
|
84
|
+
# Optional. The type of how to aggregate answers.
|
85
|
+
class ImageClassificationConfig
|
86
|
+
include ::Google::Protobuf::MessageExts
|
87
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
88
|
+
end
|
89
|
+
|
90
|
+
# Config for image bounding poly (and bounding box) human labeling task.
|
91
|
+
# @!attribute [rw] annotation_spec_set
|
92
|
+
# @return [::String]
|
93
|
+
# Required. Annotation spec set resource name.
|
94
|
+
# @!attribute [rw] instruction_message
|
95
|
+
# @return [::String]
|
96
|
+
# Optional. Instruction message showed on contributors UI.
|
97
|
+
class BoundingPolyConfig
|
98
|
+
include ::Google::Protobuf::MessageExts
|
99
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
100
|
+
end
|
101
|
+
|
102
|
+
# Config for image polyline human labeling task.
|
103
|
+
# @!attribute [rw] annotation_spec_set
|
104
|
+
# @return [::String]
|
105
|
+
# Required. Annotation spec set resource name.
|
106
|
+
# @!attribute [rw] instruction_message
|
107
|
+
# @return [::String]
|
108
|
+
# Optional. Instruction message showed on contributors UI.
|
109
|
+
class PolylineConfig
|
110
|
+
include ::Google::Protobuf::MessageExts
|
111
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
112
|
+
end
|
113
|
+
|
114
|
+
# Config for image segmentation
|
115
|
+
# @!attribute [rw] annotation_spec_set
|
116
|
+
# @return [::String]
|
117
|
+
# Required. Annotation spec set resource name. format:
|
118
|
+
# projects/\\{project_id}/annotationSpecSets/\\{annotation_spec_set_id}
|
119
|
+
# @!attribute [rw] instruction_message
|
120
|
+
# @return [::String]
|
121
|
+
# Instruction message showed on labelers UI.
|
122
|
+
class SegmentationConfig
|
123
|
+
include ::Google::Protobuf::MessageExts
|
124
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
125
|
+
end
|
126
|
+
|
127
|
+
# Config for video classification human labeling task.
|
128
|
+
# Currently two types of video classification are supported:
|
129
|
+
# 1. Assign labels on the entire video.
|
130
|
+
# 2. Split the video into multiple video clips based on camera shot, and
|
131
|
+
# assign labels on each video clip.
|
132
|
+
# @!attribute [rw] annotation_spec_set_configs
|
133
|
+
# @return [::Array<::Google::Cloud::DataLabeling::V1beta1::VideoClassificationConfig::AnnotationSpecSetConfig>]
|
134
|
+
# Required. The list of annotation spec set configs.
|
135
|
+
# Since watching a video clip takes much longer time than an image, we
|
136
|
+
# support label with multiple AnnotationSpecSet at the same time. Labels
|
137
|
+
# in each AnnotationSpecSet will be shown in a group to contributors.
|
138
|
+
# Contributors can select one or more (depending on whether to allow multi
|
139
|
+
# label) from each group.
|
140
|
+
# @!attribute [rw] apply_shot_detection
|
141
|
+
# @return [::Boolean]
|
142
|
+
# Optional. Option to apply shot detection on the video.
|
143
|
+
class VideoClassificationConfig
|
144
|
+
include ::Google::Protobuf::MessageExts
|
145
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
146
|
+
|
147
|
+
# Annotation spec set with the setting of allowing multi labels or not.
|
148
|
+
# @!attribute [rw] annotation_spec_set
|
149
|
+
# @return [::String]
|
150
|
+
# Required. Annotation spec set resource name.
|
151
|
+
# @!attribute [rw] allow_multi_label
|
152
|
+
# @return [::Boolean]
|
153
|
+
# Optional. If allow_multi_label is true, contributors are able to
|
154
|
+
# choose multiple labels from one annotation spec set.
|
155
|
+
class AnnotationSpecSetConfig
|
156
|
+
include ::Google::Protobuf::MessageExts
|
157
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
158
|
+
end
|
159
|
+
end
|
160
|
+
|
161
|
+
# Config for video object detection human labeling task.
|
162
|
+
# Object detection will be conducted on the images extracted from the video,
|
163
|
+
# and those objects will be labeled with bounding boxes.
|
164
|
+
# User need to specify the number of images to be extracted per second as the
|
165
|
+
# extraction frame rate.
|
166
|
+
# @!attribute [rw] annotation_spec_set
|
167
|
+
# @return [::String]
|
168
|
+
# Required. Annotation spec set resource name.
|
169
|
+
# @!attribute [rw] extraction_frame_rate
|
170
|
+
# @return [::Float]
|
171
|
+
# Required. Number of frames per second to be extracted from the video.
|
172
|
+
class ObjectDetectionConfig
|
173
|
+
include ::Google::Protobuf::MessageExts
|
174
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
175
|
+
end
|
176
|
+
|
177
|
+
# Config for video object tracking human labeling task.
|
178
|
+
# @!attribute [rw] annotation_spec_set
|
179
|
+
# @return [::String]
|
180
|
+
# Required. Annotation spec set resource name.
|
181
|
+
class ObjectTrackingConfig
|
182
|
+
include ::Google::Protobuf::MessageExts
|
183
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
184
|
+
end
|
185
|
+
|
186
|
+
# Config for video event human labeling task.
|
187
|
+
# @!attribute [rw] annotation_spec_sets
|
188
|
+
# @return [::Array<::String>]
|
189
|
+
# Required. The list of annotation spec set resource name. Similar to video
|
190
|
+
# classification, we support selecting event from multiple AnnotationSpecSet
|
191
|
+
# at the same time.
|
192
|
+
class EventConfig
|
193
|
+
include ::Google::Protobuf::MessageExts
|
194
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
195
|
+
end
|
196
|
+
|
197
|
+
# Config for text classification human labeling task.
|
198
|
+
# @!attribute [rw] allow_multi_label
|
199
|
+
# @return [::Boolean]
|
200
|
+
# Optional. If allow_multi_label is true, contributors are able to choose
|
201
|
+
# multiple labels for one text segment.
|
202
|
+
# @!attribute [rw] annotation_spec_set
|
203
|
+
# @return [::String]
|
204
|
+
# Required. Annotation spec set resource name.
|
205
|
+
# @!attribute [rw] sentiment_config
|
206
|
+
# @return [::Google::Cloud::DataLabeling::V1beta1::SentimentConfig]
|
207
|
+
# Optional. Configs for sentiment selection.
|
208
|
+
class TextClassificationConfig
|
209
|
+
include ::Google::Protobuf::MessageExts
|
210
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
211
|
+
end
|
212
|
+
|
213
|
+
# Config for setting up sentiments.
|
214
|
+
# @!attribute [rw] enable_label_sentiment_selection
|
215
|
+
# @return [::Boolean]
|
216
|
+
# If set to true, contributors will have the option to select sentiment of
|
217
|
+
# the label they selected, to mark it as negative or positive label. Default
|
218
|
+
# is false.
|
219
|
+
class SentimentConfig
|
220
|
+
include ::Google::Protobuf::MessageExts
|
221
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
222
|
+
end
|
223
|
+
|
224
|
+
# Config for text entity extraction human labeling task.
|
225
|
+
# @!attribute [rw] annotation_spec_set
|
226
|
+
# @return [::String]
|
227
|
+
# Required. Annotation spec set resource name.
|
228
|
+
class TextEntityExtractionConfig
|
229
|
+
include ::Google::Protobuf::MessageExts
|
230
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
231
|
+
end
|
232
|
+
|
233
|
+
module StringAggregationType
|
234
|
+
STRING_AGGREGATION_TYPE_UNSPECIFIED = 0
|
235
|
+
|
236
|
+
# Majority vote to aggregate answers.
|
237
|
+
MAJORITY_VOTE = 1
|
238
|
+
|
239
|
+
# Unanimous answers will be adopted.
|
240
|
+
UNANIMOUS_VOTE = 2
|
241
|
+
|
242
|
+
# Preserve all answers by crowd compute.
|
243
|
+
NO_AGGREGATION = 3
|
244
|
+
end
|
245
|
+
end
|
246
|
+
end
|
247
|
+
end
|
248
|
+
end
|