data_labeling_service.proto 45 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236
  1. // Copyright 2019 Google LLC.
  2. //
  3. // Licensed under the Apache License, Version 2.0 (the "License");
  4. // you may not use this file except in compliance with the License.
  5. // You may obtain a copy of the License at
  6. //
  7. // http://www.apache.org/licenses/LICENSE-2.0
  8. //
  9. // Unless required by applicable law or agreed to in writing, software
  10. // distributed under the License is distributed on an "AS IS" BASIS,
  11. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. // See the License for the specific language governing permissions and
  13. // limitations under the License.
  14. //
  15. syntax = "proto3";
  16. package google.cloud.datalabeling.v1beta1;
  17. import "google/api/annotations.proto";
  18. import "google/api/client.proto";
  19. import "google/api/field_behavior.proto";
  20. import "google/api/resource.proto";
  21. import "google/cloud/datalabeling/v1beta1/annotation_spec_set.proto";
  22. import "google/cloud/datalabeling/v1beta1/dataset.proto";
  23. import "google/cloud/datalabeling/v1beta1/evaluation.proto";
  24. import "google/cloud/datalabeling/v1beta1/evaluation_job.proto";
  25. import "google/cloud/datalabeling/v1beta1/human_annotation_config.proto";
  26. import "google/cloud/datalabeling/v1beta1/instruction.proto";
  27. import "google/longrunning/operations.proto";
  28. import "google/protobuf/empty.proto";
  29. import "google/protobuf/field_mask.proto";
  30. option csharp_namespace = "Google.Cloud.DataLabeling.V1Beta1";
  31. option go_package = "google.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabeling";
  32. option java_multiple_files = true;
  33. option java_package = "com.google.cloud.datalabeling.v1beta1";
  34. option php_namespace = "Google\\Cloud\\DataLabeling\\V1beta1";
  35. option ruby_package = "Google::Cloud::DataLabeling::V1beta1";
  36. // Service for the AI Platform Data Labeling API.
  37. service DataLabelingService {
  38. option (google.api.default_host) = "datalabeling.googleapis.com";
  39. option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
  40. // Creates dataset. If success return a Dataset resource.
  41. rpc CreateDataset(CreateDatasetRequest) returns (Dataset) {
  42. option (google.api.http) = {
  43. post: "/v1beta1/{parent=projects/*}/datasets"
  44. body: "*"
  45. };
  46. option (google.api.method_signature) = "parent,dataset";
  47. }
  48. // Gets dataset by resource name.
  49. rpc GetDataset(GetDatasetRequest) returns (Dataset) {
  50. option (google.api.http) = {
  51. get: "/v1beta1/{name=projects/*/datasets/*}"
  52. };
  53. option (google.api.method_signature) = "name";
  54. }
  55. // Lists datasets under a project. Pagination is supported.
  56. rpc ListDatasets(ListDatasetsRequest) returns (ListDatasetsResponse) {
  57. option (google.api.http) = {
  58. get: "/v1beta1/{parent=projects/*}/datasets"
  59. };
  60. option (google.api.method_signature) = "parent,filter";
  61. }
  62. // Deletes a dataset by resource name.
  63. rpc DeleteDataset(DeleteDatasetRequest) returns (google.protobuf.Empty) {
  64. option (google.api.http) = {
  65. delete: "/v1beta1/{name=projects/*/datasets/*}"
  66. };
  67. option (google.api.method_signature) = "name";
  68. }
  69. // Imports data into dataset based on source locations defined in request.
  70. // It can be called multiple times for the same dataset. Each dataset can
  71. // only have one long running operation running on it. For example, no
  72. // labeling task (also long running operation) can be started while
  73. // importing is still ongoing. Vice versa.
  74. rpc ImportData(ImportDataRequest) returns (google.longrunning.Operation) {
  75. option (google.api.http) = {
  76. post: "/v1beta1/{name=projects/*/datasets/*}:importData"
  77. body: "*"
  78. };
  79. option (google.api.method_signature) = "name,input_config";
  80. option (google.longrunning.operation_info) = {
  81. response_type: "ImportDataOperationResponse"
  82. metadata_type: "ImportDataOperationMetadata"
  83. };
  84. }
  85. // Exports data and annotations from dataset.
  86. rpc ExportData(ExportDataRequest) returns (google.longrunning.Operation) {
  87. option (google.api.http) = {
  88. post: "/v1beta1/{name=projects/*/datasets/*}:exportData"
  89. body: "*"
  90. };
  91. option (google.api.method_signature) = "name,annotated_dataset,filter,output_config";
  92. option (google.longrunning.operation_info) = {
  93. response_type: "ExportDataOperationResponse"
  94. metadata_type: "ExportDataOperationMetadata"
  95. };
  96. }
  97. // Gets a data item in a dataset by resource name. This API can be
  98. // called after data are imported into dataset.
  99. rpc GetDataItem(GetDataItemRequest) returns (DataItem) {
  100. option (google.api.http) = {
  101. get: "/v1beta1/{name=projects/*/datasets/*/dataItems/*}"
  102. };
  103. option (google.api.method_signature) = "name";
  104. }
  105. // Lists data items in a dataset. This API can be called after data
  106. // are imported into dataset. Pagination is supported.
  107. rpc ListDataItems(ListDataItemsRequest) returns (ListDataItemsResponse) {
  108. option (google.api.http) = {
  109. get: "/v1beta1/{parent=projects/*/datasets/*}/dataItems"
  110. };
  111. option (google.api.method_signature) = "parent,filter";
  112. }
  113. // Gets an annotated dataset by resource name.
  114. rpc GetAnnotatedDataset(GetAnnotatedDatasetRequest) returns (AnnotatedDataset) {
  115. option (google.api.http) = {
  116. get: "/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*}"
  117. };
  118. option (google.api.method_signature) = "name";
  119. }
  120. // Lists annotated datasets for a dataset. Pagination is supported.
  121. rpc ListAnnotatedDatasets(ListAnnotatedDatasetsRequest) returns (ListAnnotatedDatasetsResponse) {
  122. option (google.api.http) = {
  123. get: "/v1beta1/{parent=projects/*/datasets/*}/annotatedDatasets"
  124. };
  125. option (google.api.method_signature) = "parent,filter";
  126. }
  127. // Deletes an annotated dataset by resource name.
  128. rpc DeleteAnnotatedDataset(DeleteAnnotatedDatasetRequest) returns (google.protobuf.Empty) {
  129. option (google.api.http) = {
  130. delete: "/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*}"
  131. };
  132. }
  133. // Starts a labeling task for image. The type of image labeling task is
  134. // configured by feature in the request.
  135. rpc LabelImage(LabelImageRequest) returns (google.longrunning.Operation) {
  136. option (google.api.http) = {
  137. post: "/v1beta1/{parent=projects/*/datasets/*}/image:label"
  138. body: "*"
  139. };
  140. option (google.api.method_signature) = "parent,basic_config,feature";
  141. option (google.longrunning.operation_info) = {
  142. response_type: "AnnotatedDataset"
  143. metadata_type: "LabelOperationMetadata"
  144. };
  145. }
  146. // Starts a labeling task for video. The type of video labeling task is
  147. // configured by feature in the request.
  148. rpc LabelVideo(LabelVideoRequest) returns (google.longrunning.Operation) {
  149. option (google.api.http) = {
  150. post: "/v1beta1/{parent=projects/*/datasets/*}/video:label"
  151. body: "*"
  152. };
  153. option (google.api.method_signature) = "parent,basic_config,feature";
  154. option (google.longrunning.operation_info) = {
  155. response_type: "AnnotatedDataset"
  156. metadata_type: "LabelOperationMetadata"
  157. };
  158. }
  159. // Starts a labeling task for text. The type of text labeling task is
  160. // configured by feature in the request.
  161. rpc LabelText(LabelTextRequest) returns (google.longrunning.Operation) {
  162. option (google.api.http) = {
  163. post: "/v1beta1/{parent=projects/*/datasets/*}/text:label"
  164. body: "*"
  165. };
  166. option (google.api.method_signature) = "parent,basic_config,feature";
  167. option (google.longrunning.operation_info) = {
  168. response_type: "AnnotatedDataset"
  169. metadata_type: "LabelOperationMetadata"
  170. };
  171. }
  172. // Gets an example by resource name, including both data and annotation.
  173. rpc GetExample(GetExampleRequest) returns (Example) {
  174. option (google.api.http) = {
  175. get: "/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*/examples/*}"
  176. };
  177. option (google.api.method_signature) = "name,filter";
  178. }
  179. // Lists examples in an annotated dataset. Pagination is supported.
  180. rpc ListExamples(ListExamplesRequest) returns (ListExamplesResponse) {
  181. option (google.api.http) = {
  182. get: "/v1beta1/{parent=projects/*/datasets/*/annotatedDatasets/*}/examples"
  183. };
  184. option (google.api.method_signature) = "parent,filter";
  185. }
  186. // Creates an annotation spec set by providing a set of labels.
  187. rpc CreateAnnotationSpecSet(CreateAnnotationSpecSetRequest) returns (AnnotationSpecSet) {
  188. option (google.api.http) = {
  189. post: "/v1beta1/{parent=projects/*}/annotationSpecSets"
  190. body: "*"
  191. };
  192. option (google.api.method_signature) = "parent,annotation_spec_set";
  193. }
  194. // Gets an annotation spec set by resource name.
  195. rpc GetAnnotationSpecSet(GetAnnotationSpecSetRequest) returns (AnnotationSpecSet) {
  196. option (google.api.http) = {
  197. get: "/v1beta1/{name=projects/*/annotationSpecSets/*}"
  198. };
  199. option (google.api.method_signature) = "name";
  200. }
  201. // Lists annotation spec sets for a project. Pagination is supported.
  202. rpc ListAnnotationSpecSets(ListAnnotationSpecSetsRequest) returns (ListAnnotationSpecSetsResponse) {
  203. option (google.api.http) = {
  204. get: "/v1beta1/{parent=projects/*}/annotationSpecSets"
  205. };
  206. option (google.api.method_signature) = "parent,filter";
  207. }
  208. // Deletes an annotation spec set by resource name.
  209. rpc DeleteAnnotationSpecSet(DeleteAnnotationSpecSetRequest) returns (google.protobuf.Empty) {
  210. option (google.api.http) = {
  211. delete: "/v1beta1/{name=projects/*/annotationSpecSets/*}"
  212. };
  213. option (google.api.method_signature) = "name";
  214. }
  215. // Creates an instruction for how data should be labeled.
  216. rpc CreateInstruction(CreateInstructionRequest) returns (google.longrunning.Operation) {
  217. option (google.api.http) = {
  218. post: "/v1beta1/{parent=projects/*}/instructions"
  219. body: "*"
  220. };
  221. option (google.api.method_signature) = "parent,instruction";
  222. option (google.longrunning.operation_info) = {
  223. response_type: "Instruction"
  224. metadata_type: "CreateInstructionMetadata"
  225. };
  226. }
  227. // Gets an instruction by resource name.
  228. rpc GetInstruction(GetInstructionRequest) returns (Instruction) {
  229. option (google.api.http) = {
  230. get: "/v1beta1/{name=projects/*/instructions/*}"
  231. };
  232. option (google.api.method_signature) = "name";
  233. }
  234. // Lists instructions for a project. Pagination is supported.
  235. rpc ListInstructions(ListInstructionsRequest) returns (ListInstructionsResponse) {
  236. option (google.api.http) = {
  237. get: "/v1beta1/{parent=projects/*}/instructions"
  238. };
  239. option (google.api.method_signature) = "parent,filter";
  240. }
  241. // Deletes an instruction object by resource name.
  242. rpc DeleteInstruction(DeleteInstructionRequest) returns (google.protobuf.Empty) {
  243. option (google.api.http) = {
  244. delete: "/v1beta1/{name=projects/*/instructions/*}"
  245. };
  246. option (google.api.method_signature) = "name";
  247. }
  248. // Gets an evaluation by resource name (to search, use
  249. // [projects.evaluations.search][google.cloud.datalabeling.v1beta1.DataLabelingService.SearchEvaluations]).
  250. rpc GetEvaluation(GetEvaluationRequest) returns (Evaluation) {
  251. option (google.api.http) = {
  252. get: "/v1beta1/{name=projects/*/datasets/*/evaluations/*}"
  253. };
  254. option (google.api.method_signature) = "name";
  255. }
  256. // Searches [evaluations][google.cloud.datalabeling.v1beta1.Evaluation] within a project.
  257. rpc SearchEvaluations(SearchEvaluationsRequest) returns (SearchEvaluationsResponse) {
  258. option (google.api.http) = {
  259. get: "/v1beta1/{parent=projects/*}/evaluations:search"
  260. };
  261. option (google.api.method_signature) = "parent,filter";
  262. }
  263. // Searches example comparisons from an evaluation. The return format is a
  264. // list of example comparisons that show ground truth and prediction(s) for
  265. // a single input. Search by providing an evaluation ID.
  266. rpc SearchExampleComparisons(SearchExampleComparisonsRequest) returns (SearchExampleComparisonsResponse) {
  267. option (google.api.http) = {
  268. post: "/v1beta1/{parent=projects/*/datasets/*/evaluations/*}/exampleComparisons:search"
  269. body: "*"
  270. };
  271. option (google.api.method_signature) = "parent";
  272. }
  273. // Creates an evaluation job.
  274. rpc CreateEvaluationJob(CreateEvaluationJobRequest) returns (EvaluationJob) {
  275. option (google.api.http) = {
  276. post: "/v1beta1/{parent=projects/*}/evaluationJobs"
  277. body: "*"
  278. };
  279. option (google.api.method_signature) = "parent,job";
  280. }
  281. // Updates an evaluation job. You can only update certain fields of the job's
  282. // [EvaluationJobConfig][google.cloud.datalabeling.v1beta1.EvaluationJobConfig]: `humanAnnotationConfig.instruction`,
  283. // `exampleCount`, and `exampleSamplePercentage`.
  284. //
  285. // If you want to change any other aspect of the evaluation job, you must
  286. // delete the job and create a new one.
  287. rpc UpdateEvaluationJob(UpdateEvaluationJobRequest) returns (EvaluationJob) {
  288. option (google.api.http) = {
  289. patch: "/v1beta1/{evaluation_job.name=projects/*/evaluationJobs/*}"
  290. body: "evaluation_job"
  291. };
  292. option (google.api.method_signature) = "evaluation_job,update_mask";
  293. }
  294. // Gets an evaluation job by resource name.
  295. rpc GetEvaluationJob(GetEvaluationJobRequest) returns (EvaluationJob) {
  296. option (google.api.http) = {
  297. get: "/v1beta1/{name=projects/*/evaluationJobs/*}"
  298. };
  299. option (google.api.method_signature) = "name";
  300. }
  301. // Pauses an evaluation job. Pausing an evaluation job that is already in a
  302. // `PAUSED` state is a no-op.
  303. rpc PauseEvaluationJob(PauseEvaluationJobRequest) returns (google.protobuf.Empty) {
  304. option (google.api.http) = {
  305. post: "/v1beta1/{name=projects/*/evaluationJobs/*}:pause"
  306. body: "*"
  307. };
  308. option (google.api.method_signature) = "name";
  309. }
  310. // Resumes a paused evaluation job. A deleted evaluation job can't be resumed.
  311. // Resuming a running or scheduled evaluation job is a no-op.
  312. rpc ResumeEvaluationJob(ResumeEvaluationJobRequest) returns (google.protobuf.Empty) {
  313. option (google.api.http) = {
  314. post: "/v1beta1/{name=projects/*/evaluationJobs/*}:resume"
  315. body: "*"
  316. };
  317. option (google.api.method_signature) = "name";
  318. }
  319. // Stops and deletes an evaluation job.
  320. rpc DeleteEvaluationJob(DeleteEvaluationJobRequest) returns (google.protobuf.Empty) {
  321. option (google.api.http) = {
  322. delete: "/v1beta1/{name=projects/*/evaluationJobs/*}"
  323. };
  324. option (google.api.method_signature) = "name";
  325. }
  326. // Lists all evaluation jobs within a project with possible filters.
  327. // Pagination is supported.
  328. rpc ListEvaluationJobs(ListEvaluationJobsRequest) returns (ListEvaluationJobsResponse) {
  329. option (google.api.http) = {
  330. get: "/v1beta1/{parent=projects/*}/evaluationJobs"
  331. };
  332. option (google.api.method_signature) = "parent,filter";
  333. }
  334. }
  335. // Request message for CreateDataset.
  336. message CreateDatasetRequest {
  337. // Required. Dataset resource parent, format:
  338. // projects/{project_id}
  339. string parent = 1 [
  340. (google.api.field_behavior) = REQUIRED,
  341. (google.api.resource_reference) = {
  342. type: "cloudresourcemanager.googleapis.com/Project"
  343. }
  344. ];
  345. // Required. The dataset to be created.
  346. Dataset dataset = 2 [(google.api.field_behavior) = REQUIRED];
  347. }
  348. // Request message for GetDataSet.
  349. message GetDatasetRequest {
  350. // Required. Dataset resource name, format:
  351. // projects/{project_id}/datasets/{dataset_id}
  352. string name = 1 [
  353. (google.api.field_behavior) = REQUIRED,
  354. (google.api.resource_reference) = {
  355. type: "datalabeling.googleapis.com/Dataset"
  356. }
  357. ];
  358. }
  359. // Request message for ListDataset.
  360. message ListDatasetsRequest {
  361. // Required. Dataset resource parent, format:
  362. // projects/{project_id}
  363. string parent = 1 [
  364. (google.api.field_behavior) = REQUIRED,
  365. (google.api.resource_reference) = {
  366. type: "cloudresourcemanager.googleapis.com/Project"
  367. }
  368. ];
  369. // Optional. Filter on dataset is not supported at this moment.
  370. string filter = 2 [(google.api.field_behavior) = OPTIONAL];
  371. // Optional. Requested page size. Server may return fewer results than
  372. // requested. Default value is 100.
  373. int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL];
  374. // Optional. A token identifying a page of results for the server to return.
  375. // Typically obtained by
  376. // [ListDatasetsResponse.next_page_token][google.cloud.datalabeling.v1beta1.ListDatasetsResponse.next_page_token] of the previous
  377. // [DataLabelingService.ListDatasets] call.
  378. // Returns the first page if empty.
  379. string page_token = 4 [(google.api.field_behavior) = OPTIONAL];
  380. }
  381. // Results of listing datasets within a project.
  382. message ListDatasetsResponse {
  383. // The list of datasets to return.
  384. repeated Dataset datasets = 1;
  385. // A token to retrieve next page of results.
  386. string next_page_token = 2;
  387. }
  388. // Request message for DeleteDataset.
  389. message DeleteDatasetRequest {
  390. // Required. Dataset resource name, format:
  391. // projects/{project_id}/datasets/{dataset_id}
  392. string name = 1 [
  393. (google.api.field_behavior) = REQUIRED,
  394. (google.api.resource_reference) = {
  395. type: "datalabeling.googleapis.com/Dataset"
  396. }
  397. ];
  398. }
  399. // Request message for ImportData API.
  400. message ImportDataRequest {
  401. // Required. Dataset resource name, format:
  402. // projects/{project_id}/datasets/{dataset_id}
  403. string name = 1 [
  404. (google.api.field_behavior) = REQUIRED,
  405. (google.api.resource_reference) = {
  406. type: "datalabeling.googleapis.com/Dataset"
  407. }
  408. ];
  409. // Required. Specify the input source of the data.
  410. InputConfig input_config = 2 [(google.api.field_behavior) = REQUIRED];
  411. // Email of the user who started the import task and should be notified by
  412. // email. If empty no notification will be sent.
  413. string user_email_address = 3;
  414. }
  415. // Request message for ExportData API.
  416. message ExportDataRequest {
  417. // Required. Dataset resource name, format:
  418. // projects/{project_id}/datasets/{dataset_id}
  419. string name = 1 [
  420. (google.api.field_behavior) = REQUIRED,
  421. (google.api.resource_reference) = {
  422. type: "datalabeling.googleapis.com/Dataset"
  423. }
  424. ];
  425. // Required. Annotated dataset resource name. DataItem in
  426. // Dataset and their annotations in specified annotated dataset will be
  427. // exported. It's in format of
  428. // projects/{project_id}/datasets/{dataset_id}/annotatedDatasets/
  429. // {annotated_dataset_id}
  430. string annotated_dataset = 2 [
  431. (google.api.field_behavior) = REQUIRED,
  432. (google.api.resource_reference) = {
  433. type: "datalabeling.googleapis.com/AnnotatedDataset"
  434. }
  435. ];
  436. // Optional. Filter is not supported at this moment.
  437. string filter = 3 [(google.api.field_behavior) = OPTIONAL];
  438. // Required. Specify the output destination.
  439. OutputConfig output_config = 4 [(google.api.field_behavior) = REQUIRED];
  440. // Email of the user who started the export task and should be notified by
  441. // email. If empty no notification will be sent.
  442. string user_email_address = 5;
  443. }
  444. // Request message for GetDataItem.
  445. message GetDataItemRequest {
  446. // Required. The name of the data item to get, format:
  447. // projects/{project_id}/datasets/{dataset_id}/dataItems/{data_item_id}
  448. string name = 1 [
  449. (google.api.field_behavior) = REQUIRED,
  450. (google.api.resource_reference) = {
  451. type: "datalabeling.googleapis.com/DataItem"
  452. }
  453. ];
  454. }
  455. // Request message for ListDataItems.
  456. message ListDataItemsRequest {
  457. // Required. Name of the dataset to list data items, format:
  458. // projects/{project_id}/datasets/{dataset_id}
  459. string parent = 1 [
  460. (google.api.field_behavior) = REQUIRED,
  461. (google.api.resource_reference) = {
  462. type: "datalabeling.googleapis.com/Dataset"
  463. }
  464. ];
  465. // Optional. Filter is not supported at this moment.
  466. string filter = 2 [(google.api.field_behavior) = OPTIONAL];
  467. // Optional. Requested page size. Server may return fewer results than
  468. // requested. Default value is 100.
  469. int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL];
  470. // Optional. A token identifying a page of results for the server to return.
  471. // Typically obtained by
  472. // [ListDataItemsResponse.next_page_token][google.cloud.datalabeling.v1beta1.ListDataItemsResponse.next_page_token] of the previous
  473. // [DataLabelingService.ListDataItems] call.
  474. // Return first page if empty.
  475. string page_token = 4 [(google.api.field_behavior) = OPTIONAL];
  476. }
  477. // Results of listing data items in a dataset.
  478. message ListDataItemsResponse {
  479. // The list of data items to return.
  480. repeated DataItem data_items = 1;
  481. // A token to retrieve next page of results.
  482. string next_page_token = 2;
  483. }
  484. // Request message for GetAnnotatedDataset.
  485. message GetAnnotatedDatasetRequest {
  486. // Required. Name of the annotated dataset to get, format:
  487. // projects/{project_id}/datasets/{dataset_id}/annotatedDatasets/
  488. // {annotated_dataset_id}
  489. string name = 1 [
  490. (google.api.field_behavior) = REQUIRED,
  491. (google.api.resource_reference) = {
  492. type: "datalabeling.googleapis.com/AnnotatedDataset"
  493. }
  494. ];
  495. }
  496. // Request message for ListAnnotatedDatasets.
  497. message ListAnnotatedDatasetsRequest {
  498. // Required. Name of the dataset to list annotated datasets, format:
  499. // projects/{project_id}/datasets/{dataset_id}
  500. string parent = 1 [
  501. (google.api.field_behavior) = REQUIRED,
  502. (google.api.resource_reference) = {
  503. type: "datalabeling.googleapis.com/Dataset"
  504. }
  505. ];
  506. // Optional. Filter is not supported at this moment.
  507. string filter = 2 [(google.api.field_behavior) = OPTIONAL];
  508. // Optional. Requested page size. Server may return fewer results than
  509. // requested. Default value is 100.
  510. int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL];
  511. // Optional. A token identifying a page of results for the server to return.
  512. // Typically obtained by
  513. // [ListAnnotatedDatasetsResponse.next_page_token][google.cloud.datalabeling.v1beta1.ListAnnotatedDatasetsResponse.next_page_token] of the previous
  514. // [DataLabelingService.ListAnnotatedDatasets] call.
  515. // Return first page if empty.
  516. string page_token = 4 [(google.api.field_behavior) = OPTIONAL];
  517. }
  518. // Results of listing annotated datasets for a dataset.
  519. message ListAnnotatedDatasetsResponse {
  520. // The list of annotated datasets to return.
  521. repeated AnnotatedDataset annotated_datasets = 1;
  522. // A token to retrieve next page of results.
  523. string next_page_token = 2;
  524. }
  525. // Request message for DeleteAnnotatedDataset.
  526. message DeleteAnnotatedDatasetRequest {
  527. // Required. Name of the annotated dataset to delete, format:
  528. // projects/{project_id}/datasets/{dataset_id}/annotatedDatasets/
  529. // {annotated_dataset_id}
  530. string name = 1 [
  531. (google.api.field_behavior) = REQUIRED,
  532. (google.api.resource_reference) = {
  533. type: "datalabeling.googleapis.com/AnnotatedDataset"
  534. }
  535. ];
  536. }
  537. // Request message for starting an image labeling task.
  538. message LabelImageRequest {
  539. // Image labeling task feature.
  540. enum Feature {
  541. FEATURE_UNSPECIFIED = 0;
  542. // Label whole image with one or more of labels.
  543. CLASSIFICATION = 1;
  544. // Label image with bounding boxes for labels.
  545. BOUNDING_BOX = 2;
  546. // Label oriented bounding box. The box does not have to be parallel to
  547. // horizontal line.
  548. ORIENTED_BOUNDING_BOX = 6;
  549. // Label images with bounding poly. A bounding poly is a plane figure that
  550. // is bounded by a finite chain of straight line segments closing in a loop.
  551. BOUNDING_POLY = 3;
  552. // Label images with polyline. Polyline is formed by connected line segments
  553. // which are not in closed form.
  554. POLYLINE = 4;
  555. // Label images with segmentation. Segmentation is different from bounding
  556. // poly since it is more fine-grained, pixel level annotation.
  557. SEGMENTATION = 5;
  558. }
  559. // Required. Config for labeling tasks. The type of request config must
  560. // match the selected feature.
  561. oneof request_config {
  562. // Configuration for image classification task.
  563. // One of image_classification_config, bounding_poly_config,
  564. // polyline_config and segmentation_config are required.
  565. ImageClassificationConfig image_classification_config = 4;
  566. // Configuration for bounding box and bounding poly task.
  567. // One of image_classification_config, bounding_poly_config,
  568. // polyline_config and segmentation_config are required.
  569. BoundingPolyConfig bounding_poly_config = 5;
  570. // Configuration for polyline task.
  571. // One of image_classification_config, bounding_poly_config,
  572. // polyline_config and segmentation_config are required.
  573. PolylineConfig polyline_config = 6;
  574. // Configuration for segmentation task.
  575. // One of image_classification_config, bounding_poly_config,
  576. // polyline_config and segmentation_config are required.
  577. SegmentationConfig segmentation_config = 7;
  578. }
  579. // Required. Name of the dataset to request labeling task, format:
  580. // projects/{project_id}/datasets/{dataset_id}
  581. string parent = 1 [
  582. (google.api.field_behavior) = REQUIRED,
  583. (google.api.resource_reference) = {
  584. type: "datalabeling.googleapis.com/Dataset"
  585. }
  586. ];
  587. // Required. Basic human annotation config.
  588. HumanAnnotationConfig basic_config = 2 [(google.api.field_behavior) = REQUIRED];
  589. // Required. The type of image labeling task.
  590. Feature feature = 3 [(google.api.field_behavior) = REQUIRED];
  591. }
  592. // Request message for LabelVideo.
  593. message LabelVideoRequest {
  594. // Video labeling task feature.
  595. enum Feature {
  596. FEATURE_UNSPECIFIED = 0;
  597. // Label whole video or video segment with one or more labels.
  598. CLASSIFICATION = 1;
  599. // Label objects with bounding box on image frames extracted from the video.
  600. OBJECT_DETECTION = 2;
  601. // Label and track objects in video.
  602. OBJECT_TRACKING = 3;
  603. // Label the range of video for the specified events.
  604. EVENT = 4;
  605. }
  606. // Required. Config for labeling tasks. The type of request config must
  607. // match the selected feature.
  608. oneof request_config {
  609. // Configuration for video classification task.
  610. // One of video_classification_config, object_detection_config,
  611. // object_tracking_config and event_config is required.
  612. VideoClassificationConfig video_classification_config = 4;
  613. // Configuration for video object detection task.
  614. // One of video_classification_config, object_detection_config,
  615. // object_tracking_config and event_config is required.
  616. ObjectDetectionConfig object_detection_config = 5;
  617. // Configuration for video object tracking task.
  618. // One of video_classification_config, object_detection_config,
  619. // object_tracking_config and event_config is required.
  620. ObjectTrackingConfig object_tracking_config = 6;
  621. // Configuration for video event task.
  622. // One of video_classification_config, object_detection_config,
  623. // object_tracking_config and event_config is required.
  624. EventConfig event_config = 7;
  625. }
  626. // Required. Name of the dataset to request labeling task, format:
  627. // projects/{project_id}/datasets/{dataset_id}
  628. string parent = 1 [
  629. (google.api.field_behavior) = REQUIRED,
  630. (google.api.resource_reference) = {
  631. type: "datalabeling.googleapis.com/Dataset"
  632. }
  633. ];
  634. // Required. Basic human annotation config.
  635. HumanAnnotationConfig basic_config = 2 [(google.api.field_behavior) = REQUIRED];
  636. // Required. The type of video labeling task.
  637. Feature feature = 3 [(google.api.field_behavior) = REQUIRED];
  638. }
  639. // Request message for LabelText.
  640. message LabelTextRequest {
  641. // Text labeling task feature.
  642. enum Feature {
  643. FEATURE_UNSPECIFIED = 0;
  644. // Label text content to one of more labels.
  645. TEXT_CLASSIFICATION = 1;
  646. // Label entities and their span in text.
  647. TEXT_ENTITY_EXTRACTION = 2;
  648. }
  649. // Required. Config for labeling tasks. The type of request config must
  650. // match the selected feature.
  651. oneof request_config {
  652. // Configuration for text classification task.
  653. // One of text_classification_config and text_entity_extraction_config
  654. // is required.
  655. TextClassificationConfig text_classification_config = 4;
  656. // Configuration for entity extraction task.
  657. // One of text_classification_config and text_entity_extraction_config
  658. // is required.
  659. TextEntityExtractionConfig text_entity_extraction_config = 5;
  660. }
  661. // Required. Name of the data set to request labeling task, format:
  662. // projects/{project_id}/datasets/{dataset_id}
  663. string parent = 1 [
  664. (google.api.field_behavior) = REQUIRED,
  665. (google.api.resource_reference) = {
  666. type: "datalabeling.googleapis.com/Dataset"
  667. }
  668. ];
  669. // Required. Basic human annotation config.
  670. HumanAnnotationConfig basic_config = 2 [(google.api.field_behavior) = REQUIRED];
  671. // Required. The type of text labeling task.
  672. Feature feature = 6 [(google.api.field_behavior) = REQUIRED];
  673. }
  674. // Request message for GetExample
  675. message GetExampleRequest {
  676. // Required. Name of example, format:
  677. // projects/{project_id}/datasets/{dataset_id}/annotatedDatasets/
  678. // {annotated_dataset_id}/examples/{example_id}
  679. string name = 1 [
  680. (google.api.field_behavior) = REQUIRED,
  681. (google.api.resource_reference) = {
  682. type: "datalabeling.googleapis.com/Example"
  683. }
  684. ];
  685. // Optional. An expression for filtering Examples. Filter by
  686. // annotation_spec.display_name is supported. Format
  687. // "annotation_spec.display_name = {display_name}"
  688. string filter = 2 [(google.api.field_behavior) = OPTIONAL];
  689. }
  690. // Request message for ListExamples.
  691. message ListExamplesRequest {
  692. // Required. Example resource parent.
  693. string parent = 1 [
  694. (google.api.field_behavior) = REQUIRED,
  695. (google.api.resource_reference) = {
  696. type: "datalabeling.googleapis.com/AnnotatedDataset"
  697. }
  698. ];
  699. // Optional. An expression for filtering Examples. For annotated datasets that
  700. // have annotation spec set, filter by
  701. // annotation_spec.display_name is supported. Format
  702. // "annotation_spec.display_name = {display_name}"
  703. string filter = 2 [(google.api.field_behavior) = OPTIONAL];
  704. // Optional. Requested page size. Server may return fewer results than
  705. // requested. Default value is 100.
  706. int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL];
  707. // Optional. A token identifying a page of results for the server to return.
  708. // Typically obtained by
  709. // [ListExamplesResponse.next_page_token][google.cloud.datalabeling.v1beta1.ListExamplesResponse.next_page_token] of the previous
  710. // [DataLabelingService.ListExamples] call.
  711. // Return first page if empty.
  712. string page_token = 4 [(google.api.field_behavior) = OPTIONAL];
  713. }
  714. // Results of listing Examples in and annotated dataset.
  715. message ListExamplesResponse {
  716. // The list of examples to return.
  717. repeated Example examples = 1;
  718. // A token to retrieve next page of results.
  719. string next_page_token = 2;
  720. }
  721. // Request message for CreateAnnotationSpecSet.
  722. message CreateAnnotationSpecSetRequest {
  723. // Required. AnnotationSpecSet resource parent, format:
  724. // projects/{project_id}
  725. string parent = 1 [
  726. (google.api.field_behavior) = REQUIRED,
  727. (google.api.resource_reference) = {
  728. type: "cloudresourcemanager.googleapis.com/Project"
  729. }
  730. ];
  731. // Required. Annotation spec set to create. Annotation specs must be included.
  732. // Only one annotation spec will be accepted for annotation specs with same
  733. // display_name.
  734. AnnotationSpecSet annotation_spec_set = 2 [(google.api.field_behavior) = REQUIRED];
  735. }
  736. // Request message for GetAnnotationSpecSet.
  737. message GetAnnotationSpecSetRequest {
  738. // Required. AnnotationSpecSet resource name, format:
  739. // projects/{project_id}/annotationSpecSets/{annotation_spec_set_id}
  740. string name = 1 [
  741. (google.api.field_behavior) = REQUIRED,
  742. (google.api.resource_reference) = {
  743. type: "datalabeling.googleapis.com/AnnotationSpecSet"
  744. }
  745. ];
  746. }
  747. // Request message for ListAnnotationSpecSets.
  748. message ListAnnotationSpecSetsRequest {
  749. // Required. Parent of AnnotationSpecSet resource, format:
  750. // projects/{project_id}
  751. string parent = 1 [
  752. (google.api.field_behavior) = REQUIRED,
  753. (google.api.resource_reference) = {
  754. type: "cloudresourcemanager.googleapis.com/Project"
  755. }
  756. ];
  757. // Optional. Filter is not supported at this moment.
  758. string filter = 2 [(google.api.field_behavior) = OPTIONAL];
  759. // Optional. Requested page size. Server may return fewer results than
  760. // requested. Default value is 100.
  761. int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL];
  762. // Optional. A token identifying a page of results for the server to return.
  763. // Typically obtained by
  764. // [ListAnnotationSpecSetsResponse.next_page_token][google.cloud.datalabeling.v1beta1.ListAnnotationSpecSetsResponse.next_page_token] of the previous
  765. // [DataLabelingService.ListAnnotationSpecSets] call.
  766. // Return first page if empty.
  767. string page_token = 4 [(google.api.field_behavior) = OPTIONAL];
  768. }
  769. // Results of listing annotation spec set under a project.
  770. message ListAnnotationSpecSetsResponse {
  771. // The list of annotation spec sets.
  772. repeated AnnotationSpecSet annotation_spec_sets = 1;
  773. // A token to retrieve next page of results.
  774. string next_page_token = 2;
  775. }
  776. // Request message for DeleteAnnotationSpecSet.
  777. message DeleteAnnotationSpecSetRequest {
  778. // Required. AnnotationSpec resource name, format:
  779. // `projects/{project_id}/annotationSpecSets/{annotation_spec_set_id}`.
  780. string name = 1 [
  781. (google.api.field_behavior) = REQUIRED,
  782. (google.api.resource_reference) = {
  783. type: "datalabeling.googleapis.com/AnnotationSpecSet"
  784. }
  785. ];
  786. }
  787. // Request message for CreateInstruction.
  788. message CreateInstructionRequest {
  789. // Required. Instruction resource parent, format:
  790. // projects/{project_id}
  791. string parent = 1 [
  792. (google.api.field_behavior) = REQUIRED,
  793. (google.api.resource_reference) = {
  794. type: "cloudresourcemanager.googleapis.com/Project"
  795. }
  796. ];
  797. // Required. Instruction of how to perform the labeling task.
  798. Instruction instruction = 2 [(google.api.field_behavior) = REQUIRED];
  799. }
  800. // Request message for GetInstruction.
  801. message GetInstructionRequest {
  802. // Required. Instruction resource name, format:
  803. // projects/{project_id}/instructions/{instruction_id}
  804. string name = 1 [
  805. (google.api.field_behavior) = REQUIRED,
  806. (google.api.resource_reference) = {
  807. type: "datalabeling.googleapis.com/Instruction"
  808. }
  809. ];
  810. }
  811. // Request message for DeleteInstruction.
  812. message DeleteInstructionRequest {
  813. // Required. Instruction resource name, format:
  814. // projects/{project_id}/instructions/{instruction_id}
  815. string name = 1 [
  816. (google.api.field_behavior) = REQUIRED,
  817. (google.api.resource_reference) = {
  818. type: "datalabeling.googleapis.com/Instruction"
  819. }
  820. ];
  821. }
  822. // Request message for ListInstructions.
  823. message ListInstructionsRequest {
  824. // Required. Instruction resource parent, format:
  825. // projects/{project_id}
  826. string parent = 1 [
  827. (google.api.field_behavior) = REQUIRED,
  828. (google.api.resource_reference) = {
  829. type: "cloudresourcemanager.googleapis.com/Project"
  830. }
  831. ];
  832. // Optional. Filter is not supported at this moment.
  833. string filter = 2 [(google.api.field_behavior) = OPTIONAL];
  834. // Optional. Requested page size. Server may return fewer results than
  835. // requested. Default value is 100.
  836. int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL];
  837. // Optional. A token identifying a page of results for the server to return.
  838. // Typically obtained by
  839. // [ListInstructionsResponse.next_page_token][google.cloud.datalabeling.v1beta1.ListInstructionsResponse.next_page_token] of the previous
  840. // [DataLabelingService.ListInstructions] call.
  841. // Return first page if empty.
  842. string page_token = 4 [(google.api.field_behavior) = OPTIONAL];
  843. }
  844. // Results of listing instructions under a project.
  845. message ListInstructionsResponse {
  846. // The list of Instructions to return.
  847. repeated Instruction instructions = 1;
  848. // A token to retrieve next page of results.
  849. string next_page_token = 2;
  850. }
  851. // Request message for GetEvaluation.
  852. message GetEvaluationRequest {
  853. // Required. Name of the evaluation. Format:
  854. //
  855. // "projects/<var>{project_id}</var>/datasets/<var>{dataset_id}</var>/evaluations/<var>{evaluation_id}</var>'
  856. string name = 1 [
  857. (google.api.field_behavior) = REQUIRED,
  858. (google.api.resource_reference) = {
  859. type: "datalabeling.googleapis.com/Evaluation"
  860. }
  861. ];
  862. }
  863. // Request message for SearchEvaluation.
  864. message SearchEvaluationsRequest {
  865. // Required. Evaluation search parent (project ID). Format:
  866. // "projects/<var>{project_id}</var>"
  867. string parent = 1 [
  868. (google.api.field_behavior) = REQUIRED,
  869. (google.api.resource_reference) = {
  870. type: "datalabeling.googleapis.com/Evaluation"
  871. }
  872. ];
  873. // Optional. To search evaluations, you can filter by the following:
  874. //
  875. // * evaluation<span>_</span>job.evaluation_job_id (the last part of
  876. // [EvaluationJob.name][google.cloud.datalabeling.v1beta1.EvaluationJob.name])
  877. // * evaluation<span>_</span>job.model_id (the <var>{model_name}</var> portion
  878. // of [EvaluationJob.modelVersion][google.cloud.datalabeling.v1beta1.EvaluationJob.model_version])
  879. // * evaluation<span>_</span>job.evaluation_job_run_time_start (Minimum
  880. // threshold for the
  881. // [evaluationJobRunTime][google.cloud.datalabeling.v1beta1.Evaluation.evaluation_job_run_time] that created
  882. // the evaluation)
  883. // * evaluation<span>_</span>job.evaluation_job_run_time_end (Maximum
  884. // threshold for the
  885. // [evaluationJobRunTime][google.cloud.datalabeling.v1beta1.Evaluation.evaluation_job_run_time] that created
  886. // the evaluation)
  887. // * evaluation<span>_</span>job.job_state ([EvaluationJob.state][google.cloud.datalabeling.v1beta1.EvaluationJob.state])
  888. // * annotation<span>_</span>spec.display_name (the Evaluation contains a
  889. // metric for the annotation spec with this
  890. // [displayName][google.cloud.datalabeling.v1beta1.AnnotationSpec.display_name])
  891. //
  892. // To filter by multiple critiera, use the `AND` operator or the `OR`
  893. // operator. The following examples shows a string that filters by several
  894. // critiera:
  895. //
  896. // "evaluation<span>_</span>job.evaluation_job_id =
  897. // <var>{evaluation_job_id}</var> AND evaluation<span>_</span>job.model_id =
  898. // <var>{model_name}</var> AND
  899. // evaluation<span>_</span>job.evaluation_job_run_time_start =
  900. // <var>{timestamp_1}</var> AND
  901. // evaluation<span>_</span>job.evaluation_job_run_time_end =
  902. // <var>{timestamp_2}</var> AND annotation<span>_</span>spec.display_name =
  903. // <var>{display_name}</var>"
  904. string filter = 2 [(google.api.field_behavior) = OPTIONAL];
  905. // Optional. Requested page size. Server may return fewer results than
  906. // requested. Default value is 100.
  907. int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL];
  908. // Optional. A token identifying a page of results for the server to return.
  909. // Typically obtained by the
  910. // [nextPageToken][google.cloud.datalabeling.v1beta1.SearchEvaluationsResponse.next_page_token] of the response
  911. // to a previous search request.
  912. //
  913. // If you don't specify this field, the API call requests the first page of
  914. // the search.
  915. string page_token = 4 [(google.api.field_behavior) = OPTIONAL];
  916. }
  917. // Results of searching evaluations.
  918. message SearchEvaluationsResponse {
  919. // The list of evaluations matching the search.
  920. repeated Evaluation evaluations = 1;
  921. // A token to retrieve next page of results.
  922. string next_page_token = 2;
  923. }
  924. // Request message of SearchExampleComparisons.
  925. message SearchExampleComparisonsRequest {
  926. // Required. Name of the [Evaluation][google.cloud.datalabeling.v1beta1.Evaluation] resource to search for example
  927. // comparisons from. Format:
  928. //
  929. // "projects/<var>{project_id}</var>/datasets/<var>{dataset_id}</var>/evaluations/<var>{evaluation_id}</var>"
  930. string parent = 1 [
  931. (google.api.field_behavior) = REQUIRED,
  932. (google.api.resource_reference) = {
  933. type: "datalabeling.googleapis.com/Evaluation"
  934. }
  935. ];
  936. // Optional. Requested page size. Server may return fewer results than
  937. // requested. Default value is 100.
  938. int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
  939. // Optional. A token identifying a page of results for the server to return.
  940. // Typically obtained by the
  941. // [nextPageToken][SearchExampleComparisons.next_page_token] of the response
  942. // to a previous search rquest.
  943. //
  944. // If you don't specify this field, the API call requests the first page of
  945. // the search.
  946. string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
  947. }
  948. // Results of searching example comparisons.
  949. message SearchExampleComparisonsResponse {
  950. // Example comparisons comparing ground truth output and predictions for a
  951. // specific input.
  952. message ExampleComparison {
  953. // The ground truth output for the input.
  954. Example ground_truth_example = 1;
  955. // Predictions by the model for the input.
  956. repeated Example model_created_examples = 2;
  957. }
  958. // A list of example comparisons matching the search criteria.
  959. repeated ExampleComparison example_comparisons = 1;
  960. // A token to retrieve next page of results.
  961. string next_page_token = 2;
  962. }
  963. // Request message for CreateEvaluationJob.
  964. message CreateEvaluationJobRequest {
  965. // Required. Evaluation job resource parent. Format:
  966. // "projects/<var>{project_id}</var>"
  967. string parent = 1 [
  968. (google.api.field_behavior) = REQUIRED,
  969. (google.api.resource_reference) = {
  970. type: "cloudresourcemanager.googleapis.com/Project"
  971. }
  972. ];
  973. // Required. The evaluation job to create.
  974. EvaluationJob job = 2 [(google.api.field_behavior) = REQUIRED];
  975. }
  976. // Request message for UpdateEvaluationJob.
  977. message UpdateEvaluationJobRequest {
  978. // Required. Evaluation job that is going to be updated.
  979. EvaluationJob evaluation_job = 1 [(google.api.field_behavior) = REQUIRED];
  980. // Optional. Mask for which fields to update. You can only provide the
  981. // following fields:
  982. //
  983. // * `evaluationJobConfig.humanAnnotationConfig.instruction`
  984. // * `evaluationJobConfig.exampleCount`
  985. // * `evaluationJobConfig.exampleSamplePercentage`
  986. //
  987. // You can provide more than one of these fields by separating them with
  988. // commas.
  989. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = OPTIONAL];
  990. }
  991. // Request message for GetEvaluationJob.
  992. message GetEvaluationJobRequest {
  993. // Required. Name of the evaluation job. Format:
  994. //
  995. // "projects/<var>{project_id}</var>/evaluationJobs/<var>{evaluation_job_id}</var>"
  996. string name = 1 [
  997. (google.api.field_behavior) = REQUIRED,
  998. (google.api.resource_reference) = {
  999. type: "datalabeling.googleapis.com/EvaluationJob"
  1000. }
  1001. ];
  1002. }
  1003. // Request message for PauseEvaluationJob.
  1004. message PauseEvaluationJobRequest {
  1005. // Required. Name of the evaluation job that is going to be paused. Format:
  1006. //
  1007. // "projects/<var>{project_id}</var>/evaluationJobs/<var>{evaluation_job_id}</var>"
  1008. string name = 1 [
  1009. (google.api.field_behavior) = REQUIRED,
  1010. (google.api.resource_reference) = {
  1011. type: "datalabeling.googleapis.com/EvaluationJob"
  1012. }
  1013. ];
  1014. }
  1015. // Request message ResumeEvaluationJob.
  1016. message ResumeEvaluationJobRequest {
  1017. // Required. Name of the evaluation job that is going to be resumed. Format:
  1018. //
  1019. // "projects/<var>{project_id}</var>/evaluationJobs/<var>{evaluation_job_id}</var>"
  1020. string name = 1 [
  1021. (google.api.field_behavior) = REQUIRED,
  1022. (google.api.resource_reference) = {
  1023. type: "datalabeling.googleapis.com/EvaluationJob"
  1024. }
  1025. ];
  1026. }
  1027. // Request message DeleteEvaluationJob.
  1028. message DeleteEvaluationJobRequest {
  1029. // Required. Name of the evaluation job that is going to be deleted. Format:
  1030. //
  1031. // "projects/<var>{project_id}</var>/evaluationJobs/<var>{evaluation_job_id}</var>"
  1032. string name = 1 [
  1033. (google.api.field_behavior) = REQUIRED,
  1034. (google.api.resource_reference) = {
  1035. type: "datalabeling.googleapis.com/EvaluationJob"
  1036. }
  1037. ];
  1038. }
  1039. // Request message for ListEvaluationJobs.
  1040. message ListEvaluationJobsRequest {
  1041. // Required. Evaluation job resource parent. Format:
  1042. // "projects/<var>{project_id}</var>"
  1043. string parent = 1 [
  1044. (google.api.field_behavior) = REQUIRED,
  1045. (google.api.resource_reference) = {
  1046. type: "cloudresourcemanager.googleapis.com/Project"
  1047. }
  1048. ];
  1049. // Optional. You can filter the jobs to list by model_id (also known as
  1050. // model_name, as described in
  1051. // [EvaluationJob.modelVersion][google.cloud.datalabeling.v1beta1.EvaluationJob.model_version]) or by
  1052. // evaluation job state (as described in [EvaluationJob.state][google.cloud.datalabeling.v1beta1.EvaluationJob.state]). To filter
  1053. // by both criteria, use the `AND` operator or the `OR` operator. For example,
  1054. // you can use the following string for your filter:
  1055. // "evaluation<span>_</span>job.model_id = <var>{model_name}</var> AND
  1056. // evaluation<span>_</span>job.state = <var>{evaluation_job_state}</var>"
  1057. string filter = 2 [(google.api.field_behavior) = OPTIONAL];
  1058. // Optional. Requested page size. Server may return fewer results than
  1059. // requested. Default value is 100.
  1060. int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL];
  1061. // Optional. A token identifying a page of results for the server to return.
  1062. // Typically obtained by the
  1063. // [nextPageToken][google.cloud.datalabeling.v1beta1.ListEvaluationJobsResponse.next_page_token] in the response
  1064. // to the previous request. The request returns the first page if this is
  1065. // empty.
  1066. string page_token = 4 [(google.api.field_behavior) = OPTIONAL];
  1067. }
  1068. // Results for listing evaluation jobs.
  1069. message ListEvaluationJobsResponse {
  1070. // The list of evaluation jobs to return.
  1071. repeated EvaluationJob evaluation_jobs = 1;
  1072. // A token to retrieve next page of results.
  1073. string next_page_token = 2;
  1074. }