google-cloud-ai_platform-v1 0.18.0 → 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. checksums.yaml +4 -4
  2. data/lib/google/cloud/ai_platform/v1/job_service/client.rb +733 -0
  3. data/lib/google/cloud/ai_platform/v1/job_service/credentials.rb +2 -1
  4. data/lib/google/cloud/ai_platform/v1/job_service/paths.rb +40 -0
  5. data/lib/google/cloud/ai_platform/v1/model_service/client.rb +123 -0
  6. data/lib/google/cloud/ai_platform/v1/version.rb +1 -1
  7. data/lib/google/cloud/aiplatform/v1/index_endpoint_pb.rb +2 -0
  8. data/lib/google/cloud/aiplatform/v1/job_service_pb.rb +46 -0
  9. data/lib/google/cloud/aiplatform/v1/job_service_services_pb.rb +26 -0
  10. data/lib/google/cloud/aiplatform/v1/model_pb.rb +5 -0
  11. data/lib/google/cloud/aiplatform/v1/model_service_pb.rb +20 -0
  12. data/lib/google/cloud/aiplatform/v1/model_service_services_pb.rb +7 -0
  13. data/lib/google/cloud/aiplatform/v1/nas_job_pb.rb +123 -0
  14. data/lib/google/cloud/aiplatform/v1/pipeline_job_pb.rb +1 -0
  15. data/lib/google/cloud/aiplatform/v1/service_networking_pb.rb +25 -0
  16. data/lib/google/cloud/aiplatform/v1/study_pb.rb +6 -0
  17. data/proto_docs/google/cloud/aiplatform/v1/endpoint.rb +3 -1
  18. data/proto_docs/google/cloud/aiplatform/v1/index_endpoint.rb +10 -3
  19. data/proto_docs/google/cloud/aiplatform/v1/job_service.rb +166 -0
  20. data/proto_docs/google/cloud/aiplatform/v1/model.rb +15 -0
  21. data/proto_docs/google/cloud/aiplatform/v1/model_service.rb +58 -0
  22. data/proto_docs/google/cloud/aiplatform/v1/nas_job.rb +306 -0
  23. data/proto_docs/google/cloud/aiplatform/v1/pipeline_job.rb +5 -0
  24. data/proto_docs/google/cloud/aiplatform/v1/service_networking.rb +39 -0
  25. data/proto_docs/google/cloud/aiplatform/v1/study.rb +22 -0
  26. metadata +6 -2
@@ -69,7 +69,7 @@ module Google
69
69
  # unspecified, the Endpoint is not peered with any network.
70
70
  #
71
71
  # {::Google::Cloud::AIPlatform::V1::IndexEndpoint#network network} and
72
- # [private_service_connect_config][google.cloud.aiplatform.v1.IndexEndpoint.private_service_connect_config]
72
+ # {::Google::Cloud::AIPlatform::V1::IndexEndpoint#private_service_connect_config private_service_connect_config}
73
73
  # are mutually exclusive.
74
74
  #
75
75
  # [Format](https://cloud.google.com/compute/docs/reference/rest/v1/networks/insert):
@@ -85,6 +85,13 @@ module Google
85
85
  # {::Google::Cloud::AIPlatform::V1::IndexEndpoint#network network} or
86
86
  # {::Google::Cloud::AIPlatform::V1::IndexEndpoint#enable_private_service_connect enable_private_service_connect},
87
87
  # can be set.
88
+ # @!attribute [rw] private_service_connect_config
89
+ # @return [::Google::Cloud::AIPlatform::V1::PrivateServiceConnectConfig]
90
+ # Optional. Configuration for private service connect.
91
+ #
92
+ # {::Google::Cloud::AIPlatform::V1::IndexEndpoint#network network} and
93
+ # {::Google::Cloud::AIPlatform::V1::IndexEndpoint#private_service_connect_config private_service_connect_config}
94
+ # are mutually exclusive.
88
95
  class IndexEndpoint
89
96
  include ::Google::Protobuf::MessageExts
90
97
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -164,10 +171,10 @@ module Google
164
171
  # e2-standard-16 and all machine types available for LARGE shard.
165
172
  #
166
173
  # Available machine types for LARGE shard:
167
- # e2-standard-32, e2-highmem-16, n2d-standard-32.
174
+ # e2-highmem-16, n2d-standard-32.
168
175
  #
169
176
  # n1-standard-16 and n1-standard-32 are still available, but we recommend
170
- # e2-standard-16 and e2-standard-32 for cost efficiency.
177
+ # e2-standard-16 and e2-highmem-16 for cost efficiency.
171
178
  # @!attribute [rw] enable_access_logging
172
179
  # @return [::Boolean]
173
180
  # Optional. If true, private endpoint's access logs are sent to StackDriver
@@ -365,6 +365,172 @@ module Google
365
365
  extend ::Google::Protobuf::MessageExts::ClassMethods
366
366
  end
367
367
 
368
+ # Request message for
369
+ # {::Google::Cloud::AIPlatform::V1::JobService::Client#create_nas_job JobService.CreateNasJob}.
370
+ # @!attribute [rw] parent
371
+ # @return [::String]
372
+ # Required. The resource name of the Location to create the NasJob in.
373
+ # Format: `projects/{project}/locations/{location}`
374
+ # @!attribute [rw] nas_job
375
+ # @return [::Google::Cloud::AIPlatform::V1::NasJob]
376
+ # Required. The NasJob to create.
377
+ class CreateNasJobRequest
378
+ include ::Google::Protobuf::MessageExts
379
+ extend ::Google::Protobuf::MessageExts::ClassMethods
380
+ end
381
+
382
+ # Request message for
383
+ # {::Google::Cloud::AIPlatform::V1::JobService::Client#get_nas_job JobService.GetNasJob}.
384
+ # @!attribute [rw] name
385
+ # @return [::String]
386
+ # Required. The name of the NasJob resource.
387
+ # Format:
388
+ # `projects/{project}/locations/{location}/nasJobs/{nas_job}`
389
+ class GetNasJobRequest
390
+ include ::Google::Protobuf::MessageExts
391
+ extend ::Google::Protobuf::MessageExts::ClassMethods
392
+ end
393
+
394
+ # Request message for
395
+ # {::Google::Cloud::AIPlatform::V1::JobService::Client#list_nas_jobs JobService.ListNasJobs}.
396
+ # @!attribute [rw] parent
397
+ # @return [::String]
398
+ # Required. The resource name of the Location to list the NasJobs
399
+ # from. Format: `projects/{project}/locations/{location}`
400
+ # @!attribute [rw] filter
401
+ # @return [::String]
402
+ # The standard list filter.
403
+ #
404
+ # Supported fields:
405
+ #
406
+ # * `display_name` supports `=`, `!=` comparisons, and `:` wildcard.
407
+ # * `state` supports `=`, `!=` comparisons.
408
+ # * `create_time` supports `=`, `!=`,`<`, `<=`,`>`, `>=` comparisons.
409
+ # `create_time` must be in RFC 3339 format.
410
+ # * `labels` supports general map functions that is:
411
+ # `labels.key=value` - key:value equality
412
+ # `labels.key:* - key existence
413
+ #
414
+ # Some examples of using the filter are:
415
+ #
416
+ # * `state="JOB_STATE_SUCCEEDED" AND display_name:"my_job_*"`
417
+ # * `state!="JOB_STATE_FAILED" OR display_name="my_job"`
418
+ # * `NOT display_name="my_job"`
419
+ # * `create_time>"2021-05-18T00:00:00Z"`
420
+ # * `labels.keyA=valueA`
421
+ # * `labels.keyB:*`
422
+ # @!attribute [rw] page_size
423
+ # @return [::Integer]
424
+ # The standard list page size.
425
+ # @!attribute [rw] page_token
426
+ # @return [::String]
427
+ # The standard list page token.
428
+ # Typically obtained via
429
+ # {::Google::Cloud::AIPlatform::V1::ListNasJobsResponse#next_page_token ListNasJobsResponse.next_page_token}
430
+ # of the previous
431
+ # {::Google::Cloud::AIPlatform::V1::JobService::Client#list_nas_jobs JobService.ListNasJobs}
432
+ # call.
433
+ # @!attribute [rw] read_mask
434
+ # @return [::Google::Protobuf::FieldMask]
435
+ # Mask specifying which fields to read.
436
+ class ListNasJobsRequest
437
+ include ::Google::Protobuf::MessageExts
438
+ extend ::Google::Protobuf::MessageExts::ClassMethods
439
+ end
440
+
441
+ # Response message for
442
+ # {::Google::Cloud::AIPlatform::V1::JobService::Client#list_nas_jobs JobService.ListNasJobs}
443
+ # @!attribute [rw] nas_jobs
444
+ # @return [::Array<::Google::Cloud::AIPlatform::V1::NasJob>]
445
+ # List of NasJobs in the requested page.
446
+ # {::Google::Cloud::AIPlatform::V1::NasJob#nas_job_output NasJob.nas_job_output}
447
+ # of the jobs will not be returned.
448
+ # @!attribute [rw] next_page_token
449
+ # @return [::String]
450
+ # A token to retrieve the next page of results.
451
+ # Pass to
452
+ # {::Google::Cloud::AIPlatform::V1::ListNasJobsRequest#page_token ListNasJobsRequest.page_token}
453
+ # to obtain that page.
454
+ class ListNasJobsResponse
455
+ include ::Google::Protobuf::MessageExts
456
+ extend ::Google::Protobuf::MessageExts::ClassMethods
457
+ end
458
+
459
+ # Request message for
460
+ # {::Google::Cloud::AIPlatform::V1::JobService::Client#delete_nas_job JobService.DeleteNasJob}.
461
+ # @!attribute [rw] name
462
+ # @return [::String]
463
+ # Required. The name of the NasJob resource to be deleted.
464
+ # Format:
465
+ # `projects/{project}/locations/{location}/nasJobs/{nas_job}`
466
+ class DeleteNasJobRequest
467
+ include ::Google::Protobuf::MessageExts
468
+ extend ::Google::Protobuf::MessageExts::ClassMethods
469
+ end
470
+
471
+ # Request message for
472
+ # {::Google::Cloud::AIPlatform::V1::JobService::Client#cancel_nas_job JobService.CancelNasJob}.
473
+ # @!attribute [rw] name
474
+ # @return [::String]
475
+ # Required. The name of the NasJob to cancel.
476
+ # Format:
477
+ # `projects/{project}/locations/{location}/nasJobs/{nas_job}`
478
+ class CancelNasJobRequest
479
+ include ::Google::Protobuf::MessageExts
480
+ extend ::Google::Protobuf::MessageExts::ClassMethods
481
+ end
482
+
483
+ # Request message for
484
+ # {::Google::Cloud::AIPlatform::V1::JobService::Client#get_nas_trial_detail JobService.GetNasTrialDetail}.
485
+ # @!attribute [rw] name
486
+ # @return [::String]
487
+ # Required. The name of the NasTrialDetail resource.
488
+ # Format:
489
+ # `projects/{project}/locations/{location}/nasJobs/{nas_job}/nasTrialDetails/{nas_trial_detail}`
490
+ class GetNasTrialDetailRequest
491
+ include ::Google::Protobuf::MessageExts
492
+ extend ::Google::Protobuf::MessageExts::ClassMethods
493
+ end
494
+
495
+ # Request message for
496
+ # {::Google::Cloud::AIPlatform::V1::JobService::Client#list_nas_trial_details JobService.ListNasTrialDetails}.
497
+ # @!attribute [rw] parent
498
+ # @return [::String]
499
+ # Required. The name of the NasJob resource.
500
+ # Format:
501
+ # `projects/{project}/locations/{location}/nasJobs/{nas_job}`
502
+ # @!attribute [rw] page_size
503
+ # @return [::Integer]
504
+ # The standard list page size.
505
+ # @!attribute [rw] page_token
506
+ # @return [::String]
507
+ # The standard list page token.
508
+ # Typically obtained via
509
+ # {::Google::Cloud::AIPlatform::V1::ListNasTrialDetailsResponse#next_page_token ListNasTrialDetailsResponse.next_page_token}
510
+ # of the previous
511
+ # {::Google::Cloud::AIPlatform::V1::JobService::Client#list_nas_trial_details JobService.ListNasTrialDetails}
512
+ # call.
513
+ class ListNasTrialDetailsRequest
514
+ include ::Google::Protobuf::MessageExts
515
+ extend ::Google::Protobuf::MessageExts::ClassMethods
516
+ end
517
+
518
+ # Response message for
519
+ # {::Google::Cloud::AIPlatform::V1::JobService::Client#list_nas_trial_details JobService.ListNasTrialDetails}
520
+ # @!attribute [rw] nas_trial_details
521
+ # @return [::Array<::Google::Cloud::AIPlatform::V1::NasTrialDetail>]
522
+ # List of top NasTrials in the requested page.
523
+ # @!attribute [rw] next_page_token
524
+ # @return [::String]
525
+ # A token to retrieve the next page of results.
526
+ # Pass to
527
+ # {::Google::Cloud::AIPlatform::V1::ListNasTrialDetailsRequest#page_token ListNasTrialDetailsRequest.page_token}
528
+ # to obtain that page.
529
+ class ListNasTrialDetailsResponse
530
+ include ::Google::Protobuf::MessageExts
531
+ extend ::Google::Protobuf::MessageExts::ClassMethods
532
+ end
533
+
368
534
  # Request message for
369
535
  # {::Google::Cloud::AIPlatform::V1::JobService::Client#create_batch_prediction_job JobService.CreateBatchPredictionJob}.
370
536
  # @!attribute [rw] parent
@@ -269,6 +269,10 @@ module Google
269
269
  # @return [::Google::Cloud::AIPlatform::V1::ModelSourceInfo]
270
270
  # Output only. Source of a model. It can either be automl training pipeline,
271
271
  # custom training pipeline, BigQuery ML, or existing Vertex AI Model.
272
+ # @!attribute [r] original_model_info
273
+ # @return [::Google::Cloud::AIPlatform::V1::Model::OriginalModelInfo]
274
+ # Output only. If this Model is a copy of another Model, this contains info
275
+ # about the original.
272
276
  # @!attribute [r] metadata_artifact
273
277
  # @return [::String]
274
278
  # Output only. The resource name of the Artifact that was created in
@@ -331,6 +335,17 @@ module Google
331
335
  end
332
336
  end
333
337
 
338
+ # Contains information about the original Model if this Model is a copy.
339
+ # @!attribute [r] model
340
+ # @return [::String]
341
+ # Output only. The resource name of the Model this Model is a copy of,
342
+ # including the revision. Format:
343
+ # `projects/{project}/locations/{location}/models/{model_id}@{version_id}`
344
+ class OriginalModelInfo
345
+ include ::Google::Protobuf::MessageExts
346
+ extend ::Google::Protobuf::MessageExts::ClassMethods
347
+ end
348
+
334
349
  # @!attribute [rw] key
335
350
  # @return [::String]
336
351
  # @!attribute [rw] value
@@ -402,6 +402,64 @@ module Google
402
402
  extend ::Google::Protobuf::MessageExts::ClassMethods
403
403
  end
404
404
 
405
+ # Request message for
406
+ # {::Google::Cloud::AIPlatform::V1::ModelService::Client#copy_model ModelService.CopyModel}.
407
+ # @!attribute [rw] model_id
408
+ # @return [::String]
409
+ # Optional. Copy source_model into a new Model with this ID. The ID will
410
+ # become the final component of the model resource name.
411
+ #
412
+ # This value may be up to 63 characters, and valid characters are
413
+ # `[a-z0-9_-]`. The first character cannot be a number or hyphen.
414
+ # @!attribute [rw] parent_model
415
+ # @return [::String]
416
+ # Optional. Specify this field to copy source_model into this existing
417
+ # Model as a new version. Format:
418
+ # `projects/{project}/locations/{location}/models/{model}`
419
+ # @!attribute [rw] parent
420
+ # @return [::String]
421
+ # Required. The resource name of the Location into which to copy the Model.
422
+ # Format: `projects/{project}/locations/{location}`
423
+ # @!attribute [rw] source_model
424
+ # @return [::String]
425
+ # Required. The resource name of the Model to copy. That Model must be in the
426
+ # same Project. Format:
427
+ # `projects/{project}/locations/{location}/models/{model}`
428
+ # @!attribute [rw] encryption_spec
429
+ # @return [::Google::Cloud::AIPlatform::V1::EncryptionSpec]
430
+ # Customer-managed encryption key options. If this is set,
431
+ # then the Model copy will be encrypted with the provided encryption key.
432
+ class CopyModelRequest
433
+ include ::Google::Protobuf::MessageExts
434
+ extend ::Google::Protobuf::MessageExts::ClassMethods
435
+ end
436
+
437
+ # Details of
438
+ # {::Google::Cloud::AIPlatform::V1::ModelService::Client#copy_model ModelService.CopyModel}
439
+ # operation.
440
+ # @!attribute [rw] generic_metadata
441
+ # @return [::Google::Cloud::AIPlatform::V1::GenericOperationMetadata]
442
+ # The common part of the operation metadata.
443
+ class CopyModelOperationMetadata
444
+ include ::Google::Protobuf::MessageExts
445
+ extend ::Google::Protobuf::MessageExts::ClassMethods
446
+ end
447
+
448
+ # Response message of
449
+ # {::Google::Cloud::AIPlatform::V1::ModelService::Client#copy_model ModelService.CopyModel}
450
+ # operation.
451
+ # @!attribute [rw] model
452
+ # @return [::String]
453
+ # The name of the copied Model resource.
454
+ # Format: `projects/{project}/locations/{location}/models/{model}`
455
+ # @!attribute [r] model_version_id
456
+ # @return [::String]
457
+ # Output only. The version ID of the model that is copied.
458
+ class CopyModelResponse
459
+ include ::Google::Protobuf::MessageExts
460
+ extend ::Google::Protobuf::MessageExts::ClassMethods
461
+ end
462
+
405
463
  # Request message for
406
464
  # {::Google::Cloud::AIPlatform::V1::ModelService::Client#import_model_evaluation ModelService.ImportModelEvaluation}
407
465
  # @!attribute [rw] parent
@@ -0,0 +1,306 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 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 AIPlatform
23
+ module V1
24
+ # Represents a Neural Architecture Search (NAS) job.
25
+ # @!attribute [r] name
26
+ # @return [::String]
27
+ # Output only. Resource name of the NasJob.
28
+ # @!attribute [rw] display_name
29
+ # @return [::String]
30
+ # Required. The display name of the NasJob.
31
+ # The name can be up to 128 characters long and can consist of any UTF-8
32
+ # characters.
33
+ # @!attribute [rw] nas_job_spec
34
+ # @return [::Google::Cloud::AIPlatform::V1::NasJobSpec]
35
+ # Required. The specification of a NasJob.
36
+ # @!attribute [r] nas_job_output
37
+ # @return [::Google::Cloud::AIPlatform::V1::NasJobOutput]
38
+ # Output only. Output of the NasJob.
39
+ # @!attribute [r] state
40
+ # @return [::Google::Cloud::AIPlatform::V1::JobState]
41
+ # Output only. The detailed state of the job.
42
+ # @!attribute [r] create_time
43
+ # @return [::Google::Protobuf::Timestamp]
44
+ # Output only. Time when the NasJob was created.
45
+ # @!attribute [r] start_time
46
+ # @return [::Google::Protobuf::Timestamp]
47
+ # Output only. Time when the NasJob for the first time entered the
48
+ # `JOB_STATE_RUNNING` state.
49
+ # @!attribute [r] end_time
50
+ # @return [::Google::Protobuf::Timestamp]
51
+ # Output only. Time when the NasJob entered any of the following states:
52
+ # `JOB_STATE_SUCCEEDED`, `JOB_STATE_FAILED`, `JOB_STATE_CANCELLED`.
53
+ # @!attribute [r] update_time
54
+ # @return [::Google::Protobuf::Timestamp]
55
+ # Output only. Time when the NasJob was most recently updated.
56
+ # @!attribute [r] error
57
+ # @return [::Google::Rpc::Status]
58
+ # Output only. Only populated when job's state is JOB_STATE_FAILED or
59
+ # JOB_STATE_CANCELLED.
60
+ # @!attribute [rw] labels
61
+ # @return [::Google::Protobuf::Map{::String => ::String}]
62
+ # The labels with user-defined metadata to organize NasJobs.
63
+ #
64
+ # Label keys and values can be no longer than 64 characters
65
+ # (Unicode codepoints), can only contain lowercase letters, numeric
66
+ # characters, underscores and dashes. International characters are allowed.
67
+ #
68
+ # See https://goo.gl/xmQnxf for more information and examples of labels.
69
+ # @!attribute [rw] encryption_spec
70
+ # @return [::Google::Cloud::AIPlatform::V1::EncryptionSpec]
71
+ # Customer-managed encryption key options for a NasJob.
72
+ # If this is set, then all resources created by the NasJob
73
+ # will be encrypted with the provided encryption key.
74
+ # @!attribute [rw] enable_restricted_image_training
75
+ # @return [::Boolean]
76
+ # Optional. Enable a separation of Custom model training
77
+ # and restricted image training for tenant project.
78
+ class NasJob
79
+ include ::Google::Protobuf::MessageExts
80
+ extend ::Google::Protobuf::MessageExts::ClassMethods
81
+
82
+ # @!attribute [rw] key
83
+ # @return [::String]
84
+ # @!attribute [rw] value
85
+ # @return [::String]
86
+ class LabelsEntry
87
+ include ::Google::Protobuf::MessageExts
88
+ extend ::Google::Protobuf::MessageExts::ClassMethods
89
+ end
90
+ end
91
+
92
+ # Represents a NasTrial details along with it's parameters. If there is a
93
+ # corresponding train NasTrial, the train NasTrial is also returned.
94
+ # @!attribute [r] name
95
+ # @return [::String]
96
+ # Output only. Resource name of the NasTrialDetail.
97
+ # @!attribute [rw] parameters
98
+ # @return [::String]
99
+ # The parameters for the NasJob NasTrial.
100
+ # @!attribute [rw] search_trial
101
+ # @return [::Google::Cloud::AIPlatform::V1::NasTrial]
102
+ # The requested search NasTrial.
103
+ # @!attribute [rw] train_trial
104
+ # @return [::Google::Cloud::AIPlatform::V1::NasTrial]
105
+ # The train NasTrial corresponding to
106
+ # {::Google::Cloud::AIPlatform::V1::NasTrialDetail#search_trial search_trial}.
107
+ # Only populated if
108
+ # {::Google::Cloud::AIPlatform::V1::NasTrialDetail#search_trial search_trial} is
109
+ # used for training.
110
+ class NasTrialDetail
111
+ include ::Google::Protobuf::MessageExts
112
+ extend ::Google::Protobuf::MessageExts::ClassMethods
113
+ end
114
+
115
+ # Represents the spec of a NasJob.
116
+ # @!attribute [rw] multi_trial_algorithm_spec
117
+ # @return [::Google::Cloud::AIPlatform::V1::NasJobSpec::MultiTrialAlgorithmSpec]
118
+ # The spec of multi-trial algorithms.
119
+ # @!attribute [rw] resume_nas_job_id
120
+ # @return [::String]
121
+ # The ID of the existing NasJob in the same Project and Location
122
+ # which will be used to resume search. search_space_spec and
123
+ # nas_algorithm_spec are obtained from previous NasJob hence should not
124
+ # provide them again for this NasJob.
125
+ # @!attribute [rw] search_space_spec
126
+ # @return [::String]
127
+ # It defines the search space for Neural Architecture Search (NAS).
128
+ class NasJobSpec
129
+ include ::Google::Protobuf::MessageExts
130
+ extend ::Google::Protobuf::MessageExts::ClassMethods
131
+
132
+ # The spec of multi-trial Neural Architecture Search (NAS).
133
+ # @!attribute [rw] multi_trial_algorithm
134
+ # @return [::Google::Cloud::AIPlatform::V1::NasJobSpec::MultiTrialAlgorithmSpec::MultiTrialAlgorithm]
135
+ # The multi-trial Neural Architecture Search (NAS) algorithm
136
+ # type. Defaults to `REINFORCEMENT_LEARNING`.
137
+ # @!attribute [rw] metric
138
+ # @return [::Google::Cloud::AIPlatform::V1::NasJobSpec::MultiTrialAlgorithmSpec::MetricSpec]
139
+ # Metric specs for the NAS job.
140
+ # Validation for this field is done at `multi_trial_algorithm_spec` field.
141
+ # @!attribute [rw] search_trial_spec
142
+ # @return [::Google::Cloud::AIPlatform::V1::NasJobSpec::MultiTrialAlgorithmSpec::SearchTrialSpec]
143
+ # Required. Spec for search trials.
144
+ # @!attribute [rw] train_trial_spec
145
+ # @return [::Google::Cloud::AIPlatform::V1::NasJobSpec::MultiTrialAlgorithmSpec::TrainTrialSpec]
146
+ # Spec for train trials. Top N [TrainTrialSpec.max_parallel_trial_count]
147
+ # search trials will be trained for every M
148
+ # [TrainTrialSpec.frequency] trials searched.
149
+ class MultiTrialAlgorithmSpec
150
+ include ::Google::Protobuf::MessageExts
151
+ extend ::Google::Protobuf::MessageExts::ClassMethods
152
+
153
+ # Represents a metric to optimize.
154
+ # @!attribute [rw] metric_id
155
+ # @return [::String]
156
+ # Required. The ID of the metric. Must not contain whitespaces.
157
+ # @!attribute [rw] goal
158
+ # @return [::Google::Cloud::AIPlatform::V1::NasJobSpec::MultiTrialAlgorithmSpec::MetricSpec::GoalType]
159
+ # Required. The optimization goal of the metric.
160
+ class MetricSpec
161
+ include ::Google::Protobuf::MessageExts
162
+ extend ::Google::Protobuf::MessageExts::ClassMethods
163
+
164
+ # The available types of optimization goals.
165
+ module GoalType
166
+ # Goal Type will default to maximize.
167
+ GOAL_TYPE_UNSPECIFIED = 0
168
+
169
+ # Maximize the goal metric.
170
+ MAXIMIZE = 1
171
+
172
+ # Minimize the goal metric.
173
+ MINIMIZE = 2
174
+ end
175
+ end
176
+
177
+ # Represent spec for search trials.
178
+ # @!attribute [rw] search_trial_job_spec
179
+ # @return [::Google::Cloud::AIPlatform::V1::CustomJobSpec]
180
+ # Required. The spec of a search trial job. The same spec applies to
181
+ # all search trials.
182
+ # @!attribute [rw] max_trial_count
183
+ # @return [::Integer]
184
+ # Required. The maximum number of Neural Architecture Search (NAS) trials
185
+ # to run.
186
+ # @!attribute [rw] max_parallel_trial_count
187
+ # @return [::Integer]
188
+ # Required. The maximum number of trials to run in parallel.
189
+ # @!attribute [rw] max_failed_trial_count
190
+ # @return [::Integer]
191
+ # The number of failed trials that need to be seen before failing
192
+ # the NasJob.
193
+ #
194
+ # If set to 0, Vertex AI decides how many trials must fail
195
+ # before the whole job fails.
196
+ class SearchTrialSpec
197
+ include ::Google::Protobuf::MessageExts
198
+ extend ::Google::Protobuf::MessageExts::ClassMethods
199
+ end
200
+
201
+ # Represent spec for train trials.
202
+ # @!attribute [rw] train_trial_job_spec
203
+ # @return [::Google::Cloud::AIPlatform::V1::CustomJobSpec]
204
+ # Required. The spec of a train trial job. The same spec applies to
205
+ # all train trials.
206
+ # @!attribute [rw] max_parallel_trial_count
207
+ # @return [::Integer]
208
+ # Required. The maximum number of trials to run in parallel.
209
+ # @!attribute [rw] frequency
210
+ # @return [::Integer]
211
+ # Required. Frequency of search trials to start train stage. Top N
212
+ # [TrainTrialSpec.max_parallel_trial_count]
213
+ # search trials will be trained for every M
214
+ # [TrainTrialSpec.frequency] trials searched.
215
+ class TrainTrialSpec
216
+ include ::Google::Protobuf::MessageExts
217
+ extend ::Google::Protobuf::MessageExts::ClassMethods
218
+ end
219
+
220
+ # The available types of multi-trial algorithms.
221
+ module MultiTrialAlgorithm
222
+ # Defaults to `REINFORCEMENT_LEARNING`.
223
+ MULTI_TRIAL_ALGORITHM_UNSPECIFIED = 0
224
+
225
+ # The Reinforcement Learning Algorithm for Multi-trial Neural
226
+ # Architecture Search (NAS).
227
+ REINFORCEMENT_LEARNING = 1
228
+
229
+ # The Grid Search Algorithm for Multi-trial Neural
230
+ # Architecture Search (NAS).
231
+ GRID_SEARCH = 2
232
+ end
233
+ end
234
+ end
235
+
236
+ # Represents a uCAIP NasJob output.
237
+ # @!attribute [r] multi_trial_job_output
238
+ # @return [::Google::Cloud::AIPlatform::V1::NasJobOutput::MultiTrialJobOutput]
239
+ # Output only. The output of this multi-trial Neural Architecture Search
240
+ # (NAS) job.
241
+ class NasJobOutput
242
+ include ::Google::Protobuf::MessageExts
243
+ extend ::Google::Protobuf::MessageExts::ClassMethods
244
+
245
+ # The output of a multi-trial Neural Architecture Search (NAS) jobs.
246
+ # @!attribute [r] search_trials
247
+ # @return [::Array<::Google::Cloud::AIPlatform::V1::NasTrial>]
248
+ # Output only. List of NasTrials that were started as part of search stage.
249
+ # @!attribute [r] train_trials
250
+ # @return [::Array<::Google::Cloud::AIPlatform::V1::NasTrial>]
251
+ # Output only. List of NasTrials that were started as part of train stage.
252
+ class MultiTrialJobOutput
253
+ include ::Google::Protobuf::MessageExts
254
+ extend ::Google::Protobuf::MessageExts::ClassMethods
255
+ end
256
+ end
257
+
258
+ # Represents a uCAIP NasJob trial.
259
+ # @!attribute [r] id
260
+ # @return [::String]
261
+ # Output only. The identifier of the NasTrial assigned by the service.
262
+ # @!attribute [r] state
263
+ # @return [::Google::Cloud::AIPlatform::V1::NasTrial::State]
264
+ # Output only. The detailed state of the NasTrial.
265
+ # @!attribute [r] final_measurement
266
+ # @return [::Google::Cloud::AIPlatform::V1::Measurement]
267
+ # Output only. The final measurement containing the objective value.
268
+ # @!attribute [r] start_time
269
+ # @return [::Google::Protobuf::Timestamp]
270
+ # Output only. Time when the NasTrial was started.
271
+ # @!attribute [r] end_time
272
+ # @return [::Google::Protobuf::Timestamp]
273
+ # Output only. Time when the NasTrial's status changed to `SUCCEEDED` or
274
+ # `INFEASIBLE`.
275
+ class NasTrial
276
+ include ::Google::Protobuf::MessageExts
277
+ extend ::Google::Protobuf::MessageExts::ClassMethods
278
+
279
+ # Describes a NasTrial state.
280
+ module State
281
+ # The NasTrial state is unspecified.
282
+ STATE_UNSPECIFIED = 0
283
+
284
+ # Indicates that a specific NasTrial has been requested, but it has not yet
285
+ # been suggested by the service.
286
+ REQUESTED = 1
287
+
288
+ # Indicates that the NasTrial has been suggested.
289
+ ACTIVE = 2
290
+
291
+ # Indicates that the NasTrial should stop according to the service.
292
+ STOPPING = 3
293
+
294
+ # Indicates that the NasTrial is completed successfully.
295
+ SUCCEEDED = 4
296
+
297
+ # Indicates that the NasTrial should not be attempted again.
298
+ # The service will set a NasTrial to INFEASIBLE when it's done but missing
299
+ # the final_measurement.
300
+ INFEASIBLE = 5
301
+ end
302
+ end
303
+ end
304
+ end
305
+ end
306
+ end
@@ -419,6 +419,11 @@ module Google
419
419
  # @return [::String]
420
420
  # Output only. The name of the
421
421
  # {::Google::Cloud::AIPlatform::V1::CustomJob CustomJob}.
422
+ # @!attribute [r] failed_jobs
423
+ # @return [::Array<::String>]
424
+ # Output only. The names of the previously failed
425
+ # {::Google::Cloud::AIPlatform::V1::CustomJob CustomJob}. The list includes the
426
+ # all attempts in chronological order.
422
427
  class CustomJobDetail
423
428
  include ::Google::Protobuf::MessageExts
424
429
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 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 AIPlatform
23
+ module V1
24
+ # Represents configuration for private service connect.
25
+ # @!attribute [rw] enable_private_service_connect
26
+ # @return [::Boolean]
27
+ # Required. If true, expose the IndexEndpoint via private service connect.
28
+ # @!attribute [rw] project_allowlist
29
+ # @return [::Array<::String>]
30
+ # A list of Projects from which the forwarding rule will target the service
31
+ # attachment.
32
+ class PrivateServiceConnectConfig
33
+ include ::Google::Protobuf::MessageExts
34
+ extend ::Google::Protobuf::MessageExts::ClassMethods
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end