diff --git a/google-cloud-ai_platform-v1/lib/google/cloud/aiplatform/v1/custom_job_pb.rb b/google-cloud-ai_platform-v1/lib/google/cloud/aiplatform/v1/custom_job_pb.rb index f81342644a4f..3dfd27480b12 100644 --- a/google-cloud-ai_platform-v1/lib/google/cloud/aiplatform/v1/custom_job_pb.rb +++ b/google-cloud-ai_platform-v1/lib/google/cloud/aiplatform/v1/custom_job_pb.rb @@ -17,7 +17,7 @@ require 'google/rpc/status_pb' -descriptor_data = "\n+google/cloud/aiplatform/v1/custom_job.proto\x12\x1agoogle.cloud.aiplatform.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x30google/cloud/aiplatform/v1/encryption_spec.proto\x1a(google/cloud/aiplatform/v1/env_var.proto\x1a#google/cloud/aiplatform/v1/io.proto\x1a*google/cloud/aiplatform/v1/job_state.proto\x1a\x32google/cloud/aiplatform/v1/machine_resources.proto\x1a\x33google/cloud/aiplatform/v1/service_networking.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/rpc/status.proto\"\x99\x07\n\tCustomJob\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12@\n\x08job_spec\x18\x04 \x01(\x0b\x32).google.cloud.aiplatform.v1.CustomJobSpecB\x03\xe0\x41\x02\x12\x38\n\x05state\x18\x05 \x01(\x0e\x32$.google.cloud.aiplatform.v1.JobStateB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x33\n\nstart_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x31\n\x08\x65nd_time\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12&\n\x05\x65rror\x18\n \x01(\x0b\x32\x12.google.rpc.StatusB\x03\xe0\x41\x03\x12\x41\n\x06labels\x18\x0b \x03(\x0b\x32\x31.google.cloud.aiplatform.v1.CustomJob.LabelsEntry\x12\x43\n\x0f\x65ncryption_spec\x18\x0c \x01(\x0b\x32*.google.cloud.aiplatform.v1.EncryptionSpec\x12V\n\x0fweb_access_uris\x18\x10 \x03(\x0b\x32\x38.google.cloud.aiplatform.v1.CustomJob.WebAccessUrisEntryB\x03\xe0\x41\x03\x12\x1a\n\rsatisfies_pzs\x18\x12 \x01(\x08\x42\x03\xe0\x41\x03\x12\x1a\n\rsatisfies_pzi\x18\x13 \x01(\x08\x42\x03\xe0\x41\x03\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x34\n\x12WebAccessUrisEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01:i\xea\x41\x66\n#aiplatform.googleapis.com/CustomJob\x12?projects/{project}/locations/{location}/customJobs/{custom_job}\"\xeb\x06\n\rCustomJobSpec\x12T\n\x16persistent_resource_id\x18\x0e \x01(\tB4\xe0\x41\x01\xfa\x41.\n,aiplatform.googleapis.com/PersistentResource\x12J\n\x11worker_pool_specs\x18\x01 \x03(\x0b\x32*.google.cloud.aiplatform.v1.WorkerPoolSpecB\x03\xe0\x41\x02\x12:\n\nscheduling\x18\x03 \x01(\x0b\x32&.google.cloud.aiplatform.v1.Scheduling\x12\x17\n\x0fservice_account\x18\x04 \x01(\t\x12\x37\n\x07network\x18\x05 \x01(\tB&\xe0\x41\x01\xfa\x41 \n\x1e\x63ompute.googleapis.com/Network\x12\x1f\n\x12reserved_ip_ranges\x18\r \x03(\tB\x03\xe0\x41\x01\x12Q\n\x14psc_interface_config\x18\x15 \x01(\x0b\x32..google.cloud.aiplatform.v1.PscInterfaceConfigB\x03\xe0\x41\x01\x12I\n\x15\x62\x61se_output_directory\x18\x06 \x01(\x0b\x32*.google.cloud.aiplatform.v1.GcsDestination\x12&\n\x1eprotected_artifact_location_id\x18\x13 \x01(\t\x12\x42\n\x0btensorboard\x18\x07 \x01(\tB-\xe0\x41\x01\xfa\x41\'\n%aiplatform.googleapis.com/Tensorboard\x12\x1e\n\x11\x65nable_web_access\x18\n \x01(\x08\x42\x03\xe0\x41\x01\x12$\n\x17\x65nable_dashboard_access\x18\x10 \x01(\x08\x42\x03\xe0\x41\x01\x12=\n\nexperiment\x18\x11 \x01(\tB)\xe0\x41\x01\xfa\x41#\n!aiplatform.googleapis.com/Context\x12\x41\n\x0e\x65xperiment_run\x18\x12 \x01(\tB)\xe0\x41\x01\xfa\x41#\n!aiplatform.googleapis.com/Context\x12\x37\n\x06models\x18\x14 \x03(\tB\'\xe0\x41\x01\xfa\x41!\n\x1f\x61iplatform.googleapis.com/Model\"\x86\x03\n\x0eWorkerPoolSpec\x12\x43\n\x0e\x63ontainer_spec\x18\x06 \x01(\x0b\x32).google.cloud.aiplatform.v1.ContainerSpecH\x00\x12L\n\x13python_package_spec\x18\x07 \x01(\x0b\x32-.google.cloud.aiplatform.v1.PythonPackageSpecH\x00\x12\x45\n\x0cmachine_spec\x18\x01 \x01(\x0b\x32\'.google.cloud.aiplatform.v1.MachineSpecB\x06\xe0\x41\x01\xe0\x41\x05\x12\x1a\n\rreplica_count\x18\x02 \x01(\x03\x42\x03\xe0\x41\x01\x12=\n\nnfs_mounts\x18\x04 \x03(\x0b\x32$.google.cloud.aiplatform.v1.NfsMountB\x03\xe0\x41\x01\x12\x37\n\tdisk_spec\x18\x05 \x01(\x0b\x32$.google.cloud.aiplatform.v1.DiskSpecB\x06\n\x04task\"w\n\rContainerSpec\x12\x16\n\timage_uri\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x0f\n\x07\x63ommand\x18\x02 \x03(\t\x12\x0c\n\x04\x61rgs\x18\x03 \x03(\t\x12/\n\x03\x65nv\x18\x04 \x03(\x0b\x32\".google.cloud.aiplatform.v1.EnvVar\"\xaa\x01\n\x11PythonPackageSpec\x12\x1f\n\x12\x65xecutor_image_uri\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x0cpackage_uris\x18\x02 \x03(\tB\x03\xe0\x41\x02\x12\x1a\n\rpython_module\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x0c\n\x04\x61rgs\x18\x04 \x03(\t\x12/\n\x03\x65nv\x18\x05 \x03(\x0b\x32\".google.cloud.aiplatform.v1.EnvVar\"\xf3\x02\n\nScheduling\x12*\n\x07timeout\x18\x01 \x01(\x0b\x32\x19.google.protobuf.Duration\x12%\n\x1drestart_job_on_worker_restart\x18\x03 \x01(\x08\x12\x46\n\x08strategy\x18\x04 \x01(\x0e\x32/.google.cloud.aiplatform.v1.Scheduling.StrategyB\x03\xe0\x41\x01\x12\x1c\n\x0f\x64isable_retries\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\x12\x39\n\x11max_wait_duration\x18\x06 \x01(\x0b\x32\x19.google.protobuf.DurationB\x03\xe0\x41\x01\"q\n\x08Strategy\x12\x18\n\x14STRATEGY_UNSPECIFIED\x10\x00\x12\x11\n\tON_DEMAND\x10\x01\x1a\x02\x08\x01\x12\x10\n\x08LOW_COST\x10\x02\x1a\x02\x08\x01\x12\x0c\n\x08STANDARD\x10\x03\x12\x08\n\x04SPOT\x10\x04\x12\x0e\n\nFLEX_START\x10\x06\x42\xcc\x01\n\x1e\x63om.google.cloud.aiplatform.v1B\x0e\x43ustomJobProtoP\x01Z>cloud.google.com/go/aiplatform/apiv1/aiplatformpb;aiplatformpb\xaa\x02\x1aGoogle.Cloud.AIPlatform.V1\xca\x02\x1aGoogle\\Cloud\\AIPlatform\\V1\xea\x02\x1dGoogle::Cloud::AIPlatform::V1b\x06proto3" +descriptor_data = "\n+google/cloud/aiplatform/v1/custom_job.proto\x12\x1agoogle.cloud.aiplatform.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x30google/cloud/aiplatform/v1/encryption_spec.proto\x1a(google/cloud/aiplatform/v1/env_var.proto\x1a#google/cloud/aiplatform/v1/io.proto\x1a*google/cloud/aiplatform/v1/job_state.proto\x1a\x32google/cloud/aiplatform/v1/machine_resources.proto\x1a\x33google/cloud/aiplatform/v1/service_networking.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/rpc/status.proto\"\x99\x07\n\tCustomJob\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12@\n\x08job_spec\x18\x04 \x01(\x0b\x32).google.cloud.aiplatform.v1.CustomJobSpecB\x03\xe0\x41\x02\x12\x38\n\x05state\x18\x05 \x01(\x0e\x32$.google.cloud.aiplatform.v1.JobStateB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x33\n\nstart_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x31\n\x08\x65nd_time\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12&\n\x05\x65rror\x18\n \x01(\x0b\x32\x12.google.rpc.StatusB\x03\xe0\x41\x03\x12\x41\n\x06labels\x18\x0b \x03(\x0b\x32\x31.google.cloud.aiplatform.v1.CustomJob.LabelsEntry\x12\x43\n\x0f\x65ncryption_spec\x18\x0c \x01(\x0b\x32*.google.cloud.aiplatform.v1.EncryptionSpec\x12V\n\x0fweb_access_uris\x18\x10 \x03(\x0b\x32\x38.google.cloud.aiplatform.v1.CustomJob.WebAccessUrisEntryB\x03\xe0\x41\x03\x12\x1a\n\rsatisfies_pzs\x18\x12 \x01(\x08\x42\x03\xe0\x41\x03\x12\x1a\n\rsatisfies_pzi\x18\x13 \x01(\x08\x42\x03\xe0\x41\x03\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x34\n\x12WebAccessUrisEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01:i\xea\x41\x66\n#aiplatform.googleapis.com/CustomJob\x12?projects/{project}/locations/{location}/customJobs/{custom_job}\"\xeb\x06\n\rCustomJobSpec\x12T\n\x16persistent_resource_id\x18\x0e \x01(\tB4\xe0\x41\x01\xfa\x41.\n,aiplatform.googleapis.com/PersistentResource\x12J\n\x11worker_pool_specs\x18\x01 \x03(\x0b\x32*.google.cloud.aiplatform.v1.WorkerPoolSpecB\x03\xe0\x41\x02\x12:\n\nscheduling\x18\x03 \x01(\x0b\x32&.google.cloud.aiplatform.v1.Scheduling\x12\x17\n\x0fservice_account\x18\x04 \x01(\t\x12\x37\n\x07network\x18\x05 \x01(\tB&\xe0\x41\x01\xfa\x41 \n\x1e\x63ompute.googleapis.com/Network\x12\x1f\n\x12reserved_ip_ranges\x18\r \x03(\tB\x03\xe0\x41\x01\x12Q\n\x14psc_interface_config\x18\x15 \x01(\x0b\x32..google.cloud.aiplatform.v1.PscInterfaceConfigB\x03\xe0\x41\x01\x12I\n\x15\x62\x61se_output_directory\x18\x06 \x01(\x0b\x32*.google.cloud.aiplatform.v1.GcsDestination\x12&\n\x1eprotected_artifact_location_id\x18\x13 \x01(\t\x12\x42\n\x0btensorboard\x18\x07 \x01(\tB-\xe0\x41\x01\xfa\x41\'\n%aiplatform.googleapis.com/Tensorboard\x12\x1e\n\x11\x65nable_web_access\x18\n \x01(\x08\x42\x03\xe0\x41\x01\x12$\n\x17\x65nable_dashboard_access\x18\x10 \x01(\x08\x42\x03\xe0\x41\x01\x12=\n\nexperiment\x18\x11 \x01(\tB)\xe0\x41\x01\xfa\x41#\n!aiplatform.googleapis.com/Context\x12\x41\n\x0e\x65xperiment_run\x18\x12 \x01(\tB)\xe0\x41\x01\xfa\x41#\n!aiplatform.googleapis.com/Context\x12\x37\n\x06models\x18\x14 \x03(\tB\'\xe0\x41\x01\xfa\x41!\n\x1f\x61iplatform.googleapis.com/Model\"\xcb\x03\n\x0eWorkerPoolSpec\x12\x43\n\x0e\x63ontainer_spec\x18\x06 \x01(\x0b\x32).google.cloud.aiplatform.v1.ContainerSpecH\x00\x12L\n\x13python_package_spec\x18\x07 \x01(\x0b\x32-.google.cloud.aiplatform.v1.PythonPackageSpecH\x00\x12\x45\n\x0cmachine_spec\x18\x01 \x01(\x0b\x32\'.google.cloud.aiplatform.v1.MachineSpecB\x06\xe0\x41\x01\xe0\x41\x05\x12\x1a\n\rreplica_count\x18\x02 \x01(\x03\x42\x03\xe0\x41\x01\x12=\n\nnfs_mounts\x18\x04 \x03(\x0b\x32$.google.cloud.aiplatform.v1.NfsMountB\x03\xe0\x41\x01\x12\x43\n\rlustre_mounts\x18\t \x03(\x0b\x32\'.google.cloud.aiplatform.v1.LustreMountB\x03\xe0\x41\x01\x12\x37\n\tdisk_spec\x18\x05 \x01(\x0b\x32$.google.cloud.aiplatform.v1.DiskSpecB\x06\n\x04task\"w\n\rContainerSpec\x12\x16\n\timage_uri\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x0f\n\x07\x63ommand\x18\x02 \x03(\t\x12\x0c\n\x04\x61rgs\x18\x03 \x03(\t\x12/\n\x03\x65nv\x18\x04 \x03(\x0b\x32\".google.cloud.aiplatform.v1.EnvVar\"\xaa\x01\n\x11PythonPackageSpec\x12\x1f\n\x12\x65xecutor_image_uri\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x19\n\x0cpackage_uris\x18\x02 \x03(\tB\x03\xe0\x41\x02\x12\x1a\n\rpython_module\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x0c\n\x04\x61rgs\x18\x04 \x03(\t\x12/\n\x03\x65nv\x18\x05 \x03(\x0b\x32\".google.cloud.aiplatform.v1.EnvVar\"\xf3\x02\n\nScheduling\x12*\n\x07timeout\x18\x01 \x01(\x0b\x32\x19.google.protobuf.Duration\x12%\n\x1drestart_job_on_worker_restart\x18\x03 \x01(\x08\x12\x46\n\x08strategy\x18\x04 \x01(\x0e\x32/.google.cloud.aiplatform.v1.Scheduling.StrategyB\x03\xe0\x41\x01\x12\x1c\n\x0f\x64isable_retries\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\x12\x39\n\x11max_wait_duration\x18\x06 \x01(\x0b\x32\x19.google.protobuf.DurationB\x03\xe0\x41\x01\"q\n\x08Strategy\x12\x18\n\x14STRATEGY_UNSPECIFIED\x10\x00\x12\x11\n\tON_DEMAND\x10\x01\x1a\x02\x08\x01\x12\x10\n\x08LOW_COST\x10\x02\x1a\x02\x08\x01\x12\x0c\n\x08STANDARD\x10\x03\x12\x08\n\x04SPOT\x10\x04\x12\x0e\n\nFLEX_START\x10\x06\x42\xcc\x01\n\x1e\x63om.google.cloud.aiplatform.v1B\x0e\x43ustomJobProtoP\x01Z>cloud.google.com/go/aiplatform/apiv1/aiplatformpb;aiplatformpb\xaa\x02\x1aGoogle.Cloud.AIPlatform.V1\xca\x02\x1aGoogle\\Cloud\\AIPlatform\\V1\xea\x02\x1dGoogle::Cloud::AIPlatform::V1b\x06proto3" pool = Google::Protobuf::DescriptorPool.generated_pool diff --git a/google-cloud-ai_platform-v1/lib/google/cloud/aiplatform/v1/machine_resources_pb.rb b/google-cloud-ai_platform-v1/lib/google/cloud/aiplatform/v1/machine_resources_pb.rb index b725bf6e97be..472f9a293b0f 100644 --- a/google-cloud-ai_platform-v1/lib/google/cloud/aiplatform/v1/machine_resources_pb.rb +++ b/google-cloud-ai_platform-v1/lib/google/cloud/aiplatform/v1/machine_resources_pb.rb @@ -9,7 +9,7 @@ require 'google/cloud/aiplatform/v1/reservation_affinity_pb' -descriptor_data = "\n2google/cloud/aiplatform/v1/machine_resources.proto\x12\x1agoogle.cloud.aiplatform.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x31google/cloud/aiplatform/v1/accelerator_type.proto\x1a\x35google/cloud/aiplatform/v1/reservation_affinity.proto\"\xa5\x02\n\x0bMachineSpec\x12\x19\n\x0cmachine_type\x18\x01 \x01(\tB\x03\xe0\x41\x05\x12J\n\x10\x61\x63\x63\x65lerator_type\x18\x02 \x01(\x0e\x32+.google.cloud.aiplatform.v1.AcceleratorTypeB\x03\xe0\x41\x05\x12\x19\n\x11\x61\x63\x63\x65lerator_count\x18\x03 \x01(\x05\x12\"\n\x12gpu_partition_size\x18\x07 \x01(\tB\x06\xe0\x41\x05\xe0\x41\x01\x12\x19\n\x0ctpu_topology\x18\x04 \x01(\tB\x03\xe0\x41\x05\x12U\n\x14reservation_affinity\x18\x05 \x01(\x0b\x32/.google.cloud.aiplatform.v1.ReservationAffinityB\x06\xe0\x41\x05\xe0\x41\x01\"\xb0\x02\n\x12\x44\x65\x64icatedResources\x12\x45\n\x0cmachine_spec\x18\x01 \x01(\x0b\x32\'.google.cloud.aiplatform.v1.MachineSpecB\x06\xe0\x41\x02\xe0\x41\x05\x12!\n\x11min_replica_count\x18\x02 \x01(\x05\x42\x06\xe0\x41\x02\xe0\x41\x05\x12\x1e\n\x11max_replica_count\x18\x03 \x01(\x05\x42\x03\xe0\x41\x05\x12#\n\x16required_replica_count\x18\t \x01(\x05\x42\x03\xe0\x41\x01\x12X\n\x18\x61utoscaling_metric_specs\x18\x04 \x03(\x0b\x32\x31.google.cloud.aiplatform.v1.AutoscalingMetricSpecB\x03\xe0\x41\x05\x12\x11\n\x04spot\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\"T\n\x12\x41utomaticResources\x12\x1e\n\x11min_replica_count\x18\x01 \x01(\x05\x42\x03\xe0\x41\x05\x12\x1e\n\x11max_replica_count\x18\x02 \x01(\x05\x42\x03\xe0\x41\x05\"\xa5\x01\n\x17\x42\x61tchDedicatedResources\x12\x45\n\x0cmachine_spec\x18\x01 \x01(\x0b\x32\'.google.cloud.aiplatform.v1.MachineSpecB\x06\xe0\x41\x02\xe0\x41\x05\x12#\n\x16starting_replica_count\x18\x02 \x01(\x05\x42\x03\xe0\x41\x05\x12\x1e\n\x11max_replica_count\x18\x03 \x01(\x05\x42\x03\xe0\x41\x05\"/\n\x11ResourcesConsumed\x12\x1a\n\rreplica_hours\x18\x01 \x01(\x01\x42\x03\xe0\x41\x03\"=\n\x08\x44iskSpec\x12\x16\n\x0e\x62oot_disk_type\x18\x01 \x01(\t\x12\x19\n\x11\x62oot_disk_size_gb\x18\x02 \x01(\x05\"=\n\x12PersistentDiskSpec\x12\x11\n\tdisk_type\x18\x01 \x01(\t\x12\x14\n\x0c\x64isk_size_gb\x18\x02 \x01(\x03\"L\n\x08NfsMount\x12\x13\n\x06server\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x11\n\x04path\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x0bmount_point\x18\x03 \x01(\tB\x03\xe0\x41\x02\"A\n\x15\x41utoscalingMetricSpec\x12\x18\n\x0bmetric_name\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x0e\n\x06target\x18\x02 \x01(\x05\".\n\x10ShieldedVmConfig\x12\x1a\n\x12\x65nable_secure_boot\x18\x01 \x01(\x08\x42\xd3\x01\n\x1e\x63om.google.cloud.aiplatform.v1B\x15MachineResourcesProtoP\x01Z>cloud.google.com/go/aiplatform/apiv1/aiplatformpb;aiplatformpb\xaa\x02\x1aGoogle.Cloud.AIPlatform.V1\xca\x02\x1aGoogle\\Cloud\\AIPlatform\\V1\xea\x02\x1dGoogle::Cloud::AIPlatform::V1b\x06proto3" +descriptor_data = "\n2google/cloud/aiplatform/v1/machine_resources.proto\x12\x1agoogle.cloud.aiplatform.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x31google/cloud/aiplatform/v1/accelerator_type.proto\x1a\x35google/cloud/aiplatform/v1/reservation_affinity.proto\"\xa5\x02\n\x0bMachineSpec\x12\x19\n\x0cmachine_type\x18\x01 \x01(\tB\x03\xe0\x41\x05\x12J\n\x10\x61\x63\x63\x65lerator_type\x18\x02 \x01(\x0e\x32+.google.cloud.aiplatform.v1.AcceleratorTypeB\x03\xe0\x41\x05\x12\x19\n\x11\x61\x63\x63\x65lerator_count\x18\x03 \x01(\x05\x12\"\n\x12gpu_partition_size\x18\x07 \x01(\tB\x06\xe0\x41\x05\xe0\x41\x01\x12\x19\n\x0ctpu_topology\x18\x04 \x01(\tB\x03\xe0\x41\x05\x12U\n\x14reservation_affinity\x18\x05 \x01(\x0b\x32/.google.cloud.aiplatform.v1.ReservationAffinityB\x06\xe0\x41\x05\xe0\x41\x01\"\xb0\x02\n\x12\x44\x65\x64icatedResources\x12\x45\n\x0cmachine_spec\x18\x01 \x01(\x0b\x32\'.google.cloud.aiplatform.v1.MachineSpecB\x06\xe0\x41\x02\xe0\x41\x05\x12!\n\x11min_replica_count\x18\x02 \x01(\x05\x42\x06\xe0\x41\x02\xe0\x41\x05\x12\x1e\n\x11max_replica_count\x18\x03 \x01(\x05\x42\x03\xe0\x41\x05\x12#\n\x16required_replica_count\x18\t \x01(\x05\x42\x03\xe0\x41\x01\x12X\n\x18\x61utoscaling_metric_specs\x18\x04 \x03(\x0b\x32\x31.google.cloud.aiplatform.v1.AutoscalingMetricSpecB\x03\xe0\x41\x05\x12\x11\n\x04spot\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\"T\n\x12\x41utomaticResources\x12\x1e\n\x11min_replica_count\x18\x01 \x01(\x05\x42\x03\xe0\x41\x05\x12\x1e\n\x11max_replica_count\x18\x02 \x01(\x05\x42\x03\xe0\x41\x05\"\xa5\x01\n\x17\x42\x61tchDedicatedResources\x12\x45\n\x0cmachine_spec\x18\x01 \x01(\x0b\x32\'.google.cloud.aiplatform.v1.MachineSpecB\x06\xe0\x41\x02\xe0\x41\x05\x12#\n\x16starting_replica_count\x18\x02 \x01(\x05\x42\x03\xe0\x41\x05\x12\x1e\n\x11max_replica_count\x18\x03 \x01(\x05\x42\x03\xe0\x41\x05\"/\n\x11ResourcesConsumed\x12\x1a\n\rreplica_hours\x18\x01 \x01(\x01\x42\x03\xe0\x41\x03\"=\n\x08\x44iskSpec\x12\x16\n\x0e\x62oot_disk_type\x18\x01 \x01(\t\x12\x19\n\x11\x62oot_disk_size_gb\x18\x02 \x01(\x05\"=\n\x12PersistentDiskSpec\x12\x11\n\tdisk_type\x18\x01 \x01(\t\x12\x14\n\x0c\x64isk_size_gb\x18\x02 \x01(\x03\"L\n\x08NfsMount\x12\x13\n\x06server\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x11\n\x04path\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x0bmount_point\x18\x03 \x01(\tB\x03\xe0\x41\x02\"v\n\x0bLustreMount\x12\x18\n\x0binstance_ip\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\rvolume_handle\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\nfilesystem\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x18\n\x0bmount_point\x18\x04 \x01(\tB\x03\xe0\x41\x02\"A\n\x15\x41utoscalingMetricSpec\x12\x18\n\x0bmetric_name\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x0e\n\x06target\x18\x02 \x01(\x05\".\n\x10ShieldedVmConfig\x12\x1a\n\x12\x65nable_secure_boot\x18\x01 \x01(\x08\x42\xd3\x01\n\x1e\x63om.google.cloud.aiplatform.v1B\x15MachineResourcesProtoP\x01Z>cloud.google.com/go/aiplatform/apiv1/aiplatformpb;aiplatformpb\xaa\x02\x1aGoogle.Cloud.AIPlatform.V1\xca\x02\x1aGoogle\\Cloud\\AIPlatform\\V1\xea\x02\x1dGoogle::Cloud::AIPlatform::V1b\x06proto3" pool = Google::Protobuf::DescriptorPool.generated_pool @@ -48,6 +48,7 @@ module V1 DiskSpec = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.DiskSpec").msgclass PersistentDiskSpec = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.PersistentDiskSpec").msgclass NfsMount = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.NfsMount").msgclass + LustreMount = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.LustreMount").msgclass AutoscalingMetricSpec = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.AutoscalingMetricSpec").msgclass ShieldedVmConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.ShieldedVmConfig").msgclass end diff --git a/google-cloud-ai_platform-v1/proto_docs/google/cloud/aiplatform/v1/custom_job.rb b/google-cloud-ai_platform-v1/proto_docs/google/cloud/aiplatform/v1/custom_job.rb index 0efa08a58e41..859ffd94d4a6 100644 --- a/google-cloud-ai_platform-v1/proto_docs/google/cloud/aiplatform/v1/custom_job.rb +++ b/google-cloud-ai_platform-v1/proto_docs/google/cloud/aiplatform/v1/custom_job.rb @@ -277,6 +277,9 @@ class CustomJobSpec # @!attribute [rw] nfs_mounts # @return [::Array<::Google::Cloud::AIPlatform::V1::NfsMount>] # Optional. List of NFS mount spec. + # @!attribute [rw] lustre_mounts + # @return [::Array<::Google::Cloud::AIPlatform::V1::LustreMount>] + # Optional. List of Lustre mounts. # @!attribute [rw] disk_spec # @return [::Google::Cloud::AIPlatform::V1::DiskSpec] # Disk spec. diff --git a/google-cloud-ai_platform-v1/proto_docs/google/cloud/aiplatform/v1/machine_resources.rb b/google-cloud-ai_platform-v1/proto_docs/google/cloud/aiplatform/v1/machine_resources.rb index 1ec1360a16ae..ebf2b3fa960f 100644 --- a/google-cloud-ai_platform-v1/proto_docs/google/cloud/aiplatform/v1/machine_resources.rb +++ b/google-cloud-ai_platform-v1/proto_docs/google/cloud/aiplatform/v1/machine_resources.rb @@ -74,30 +74,26 @@ class MachineSpec extend ::Google::Protobuf::MessageExts::ClassMethods end - # A description of resources that are dedicated to a DeployedModel, and - # that need a higher degree of manual configuration. + # A description of resources that are dedicated to a DeployedModel or + # DeployedIndex, and that need a higher degree of manual configuration. # @!attribute [rw] machine_spec # @return [::Google::Cloud::AIPlatform::V1::MachineSpec] - # Required. Immutable. The specification of a single machine used by the - # prediction. + # Required. Immutable. The specification of a single machine being used. # @!attribute [rw] min_replica_count # @return [::Integer] - # Required. Immutable. The minimum number of machine replicas this - # DeployedModel will be always deployed on. This value must be greater than - # or equal to 1. + # Required. Immutable. The minimum number of machine replicas that will be + # always deployed on. This value must be greater than or equal to 1. # - # If traffic against the DeployedModel increases, it may dynamically be - # deployed onto more replicas, and as traffic decreases, some of these extra - # replicas may be freed. + # If traffic increases, it may dynamically be deployed onto more replicas, + # and as traffic decreases, some of these extra replicas may be freed. # @!attribute [rw] max_replica_count # @return [::Integer] - # Immutable. The maximum number of replicas this DeployedModel may be - # deployed on when the traffic against it increases. If the requested value - # is too large, the deployment will error, but if deployment succeeds then - # the ability to scale the model to that many replicas is guaranteed (barring - # service outages). If traffic against the DeployedModel increases beyond - # what its replicas at maximum may handle, a portion of the traffic will be - # dropped. If this value is not provided, will use + # Immutable. The maximum number of replicas that may be deployed on when the + # traffic against it increases. If the requested value is too large, the + # deployment will error, but if deployment succeeds then the ability to scale + # to that many replicas is guaranteed (barring service outages). If traffic + # increases beyond what its replicas at maximum may handle, a portion of the + # traffic will be dropped. If this value is not provided, will use # {::Google::Cloud::AIPlatform::V1::DedicatedResources#min_replica_count min_replica_count} # as the default value. # @@ -108,8 +104,8 @@ class MachineSpec # @!attribute [rw] required_replica_count # @return [::Integer] # Optional. Number of required available replicas for the deployment to - # succeed. This field is only needed when partial model deployment/mutation - # is desired. If set, the model deploy/mutate operation will succeed once + # succeed. This field is only needed when partial deployment/mutation is + # desired. If set, the deploy/mutate operation will succeed once # available_replica_count reaches required_replica_count, and the rest of # the replicas will be retried. If not set, the default # required_replica_count will be min_replica_count. @@ -152,23 +148,22 @@ class DedicatedResources # Each Model supporting these resources documents its specific guidelines. # @!attribute [rw] min_replica_count # @return [::Integer] - # Immutable. The minimum number of replicas this DeployedModel will be always - # deployed on. If traffic against it increases, it may dynamically be - # deployed onto more replicas up to + # Immutable. The minimum number of replicas that will be always deployed on. + # If traffic against it increases, it may dynamically be deployed onto more + # replicas up to # {::Google::Cloud::AIPlatform::V1::AutomaticResources#max_replica_count max_replica_count}, # and as traffic decreases, some of these extra replicas may be freed. If the # requested value is too large, the deployment will error. # @!attribute [rw] max_replica_count # @return [::Integer] - # Immutable. The maximum number of replicas this DeployedModel may be - # deployed on when the traffic against it increases. If the requested value - # is too large, the deployment will error, but if deployment succeeds then - # the ability to scale the model to that many replicas is guaranteed (barring - # service outages). If traffic against the DeployedModel increases beyond - # what its replicas at maximum may handle, a portion of the traffic will be - # dropped. If this value is not provided, a no upper bound for scaling under - # heavy traffic will be assume, though Vertex AI may be unable to scale - # beyond certain replica number. + # Immutable. The maximum number of replicas that may be deployed on when the + # traffic against it increases. If the requested value is too large, the + # deployment will error, but if deployment succeeds then the ability to scale + # to that many replicas is guaranteed (barring service outages). If traffic + # increases beyond what its replicas at maximum may handle, a portion of the + # traffic will be dropped. If this value is not provided, a no upper bound + # for scaling under heavy traffic will be assume, though Vertex AI may be + # unable to scale beyond certain replica number. class AutomaticResources include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods @@ -207,9 +202,10 @@ class ResourcesConsumed # Represents the spec of disk options. # @!attribute [rw] boot_disk_type # @return [::String] - # Type of the boot disk (default is "pd-ssd"). - # Valid values: "pd-ssd" (Persistent Disk Solid State Drive) or - # "pd-standard" (Persistent Disk Hard Disk Drive). + # Type of the boot disk. For non-A3U machines, the default value is + # "pd-ssd", for A3U machines, the default value is "hyperdisk-balanced". + # Valid values: "pd-ssd" (Persistent Disk Solid State Drive), + # "pd-standard" (Persistent Disk Hard Disk Drive) or "hyperdisk-balanced". # @!attribute [rw] boot_disk_size_gb # @return [::Integer] # Size in GB of the boot disk (default is 100GB). @@ -253,6 +249,25 @@ class NfsMount extend ::Google::Protobuf::MessageExts::ClassMethods end + # Represents a mount configuration for Lustre file system. + # @!attribute [rw] instance_ip + # @return [::String] + # Required. IP address of the Lustre instance. + # @!attribute [rw] volume_handle + # @return [::String] + # Required. The unique identifier of the Lustre volume. + # @!attribute [rw] filesystem + # @return [::String] + # Required. The name of the Lustre filesystem. + # @!attribute [rw] mount_point + # @return [::String] + # Required. Destination mount path. The Lustre file system will be mounted + # for the user under /mnt/lustre/ + class LustreMount + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # The metric specification that defines the target resource utilization # (CPU utilization, accelerator's duty cycle, and so on) for calculating the # desired replica count. @@ -264,6 +279,7 @@ class NfsMount # * For Online Prediction: # * `aiplatform.googleapis.com/prediction/online/accelerator/duty_cycle` # * `aiplatform.googleapis.com/prediction/online/cpu/utilization` + # * `aiplatform.googleapis.com/prediction/online/request_count` # @!attribute [rw] target # @return [::Integer] # The target resource utilization in percentage (1% - 100%) for the given