Class: Google::Apis::AiplatformV1::GoogleCloudAiplatformV1CustomJobSpec

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/aiplatform_v1/classes.rb,
lib/google/apis/aiplatform_v1/representations.rb,
lib/google/apis/aiplatform_v1/representations.rb

Overview

Represents the spec of a CustomJob.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudAiplatformV1CustomJobSpec

Returns a new instance of GoogleCloudAiplatformV1CustomJobSpec.



5896
5897
5898
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 5896

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#base_output_directoryGoogle::Apis::AiplatformV1::GoogleCloudAiplatformV1GcsDestination

The Google Cloud Storage location where the output is to be written to. Corresponds to the JSON property baseOutputDirectory



5779
5780
5781
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 5779

def base_output_directory
  @base_output_directory
end

#enable_dashboard_accessBoolean Also known as: enable_dashboard_access?

Optional. Whether you want Vertex AI to enable access to the customized dashboard in training chief container. If set to true, you can access the dashboard at the URIs given by CustomJob.web_access_uris or Trial. web_access_uris (within HyperparameterTuningJob.trials). Corresponds to the JSON property enableDashboardAccess

Returns:

  • (Boolean)


5787
5788
5789
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 5787

def enable_dashboard_access
  @enable_dashboard_access
end

#enable_web_accessBoolean Also known as: enable_web_access?

Optional. Whether you want Vertex AI to enable interactive shell access to training containers. If set to true, you can access interactive shells at the URIs given by CustomJob.web_access_uris or Trial.web_access_uris (within HyperparameterTuningJob.trials). Corresponds to the JSON property enableWebAccess

Returns:

  • (Boolean)


5797
5798
5799
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 5797

def enable_web_access
  @enable_web_access
end

#experimentString

Optional. The Experiment associated with this job. Format: projects/project/ locations/location/metadataStores/metadataStores/contexts/experiment-name Corresponds to the JSON property experiment

Returns:

  • (String)


5805
5806
5807
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 5805

def experiment
  @experiment
end

#experiment_runString

Optional. The Experiment Run associated with this job. Format: projects/ project/locations/location/metadataStores/metadataStores/contexts/ experiment-name-experiment-run-name` Corresponds to the JSON propertyexperimentRun`

Returns:

  • (String)


5812
5813
5814
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 5812

def experiment_run
  @experiment_run
end

#modelsArray<String>

Optional. The name of the Model resources for which to generate a mapping to artifact URIs. Applicable only to some of the Google-provided custom jobs. Format: projects/project/locations/location/models/model`In order to retrieve a specific version of the model, also provide the version ID or version alias. Example:projects/project/locations/location/models/model @2orprojects/project/locations/location/models/model@goldenIf no version ID or alias is specified, the "default" version will be returned. The " default" version alias is created for the first version of the model, and can be moved to other versions later on. There will be exactly one default version. Corresponds to the JSON propertymodels`

Returns:

  • (Array<String>)


5825
5826
5827
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 5825

def models
  @models
end

#networkString

Optional. The full name of the Compute Engine network to which the Job should be peered. For example, projects/12345/global/networks/myVPC. Format is of the form projects/project/global/networks/ network`. Whereprojectis a project number, as in12345, andnetwork is a network name. To specify this field, you must have already [configured VPC Network Peering for Vertex AI](https://cloud.google.com/vertex-ai/docs/ general/vpc-peering). If this field is left unspecified, the job is not peered with any network. Corresponds to the JSON propertynetwork`

Returns:

  • (String)


5838
5839
5840
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 5838

def network
  @network
end

#persistent_resource_idString

Optional. The ID of the PersistentResource in the same Project and Location which to run If this is specified, the job will be run on existing machines held by the PersistentResource instead of on-demand short-live machines. The network and CMEK configs on the job should be consistent with those on the PersistentResource, otherwise, the job will be rejected. Corresponds to the JSON property persistentResourceId

Returns:

  • (String)


5847
5848
5849
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 5847

def persistent_resource_id
  @persistent_resource_id
end

#protected_artifact_location_idString

The ID of the location to store protected artifacts. e.g. us-central1. Populate only when the location is different than CustomJob location. List of supported locations: https://cloud.google.com/vertex-ai/docs/general/locations Corresponds to the JSON property protectedArtifactLocationId

Returns:

  • (String)


5854
5855
5856
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 5854

def protected_artifact_location_id
  @protected_artifact_location_id
end

#psc_interface_configGoogle::Apis::AiplatformV1::GoogleCloudAiplatformV1PscInterfaceConfig

Configuration for PSC-I. Corresponds to the JSON property pscInterfaceConfig



5859
5860
5861
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 5859

def psc_interface_config
  @psc_interface_config
end

#reserved_ip_rangesArray<String>

Optional. A list of names for the reserved ip ranges under the VPC network that can be used for this job. If set, we will deploy the job within the provided ip ranges. Otherwise, the job will be deployed to any ip ranges under the provided VPC network. Example: ['vertex-ai-ip-range']. Corresponds to the JSON property reservedIpRanges

Returns:

  • (Array<String>)


5867
5868
5869
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 5867

def reserved_ip_ranges
  @reserved_ip_ranges
end

#schedulingGoogle::Apis::AiplatformV1::GoogleCloudAiplatformV1Scheduling

All parameters related to queuing and scheduling of custom jobs. Corresponds to the JSON property scheduling



5872
5873
5874
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 5872

def scheduling
  @scheduling
end

#service_accountString

Specifies the service account for workload run-as account. Users submitting jobs must have act-as permission on this run-as account. If unspecified, the Vertex AI Custom Code Service Agent for the CustomJob's project is used. Corresponds to the JSON property serviceAccount

Returns:

  • (String)


5880
5881
5882
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 5880

def 
  @service_account
end

#tensorboardString

Optional. The name of a Vertex AI Tensorboard resource to which this CustomJob will upload Tensorboard logs. Format: projects/project/locations/location/ tensorboards/tensorboard` Corresponds to the JSON propertytensorboard`

Returns:

  • (String)


5887
5888
5889
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 5887

def tensorboard
  @tensorboard
end

#worker_pool_specsArray<Google::Apis::AiplatformV1::GoogleCloudAiplatformV1WorkerPoolSpec>

Required. The spec of the worker pools including machine type and Docker image. All worker pools except the first one are optional and can be skipped by providing an empty value. Corresponds to the JSON property workerPoolSpecs



5894
5895
5896
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 5894

def worker_pool_specs
  @worker_pool_specs
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5901
5902
5903
5904
5905
5906
5907
5908
5909
5910
5911
5912
5913
5914
5915
5916
5917
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 5901

def update!(**args)
  @base_output_directory = args[:base_output_directory] if args.key?(:base_output_directory)
  @enable_dashboard_access = args[:enable_dashboard_access] if args.key?(:enable_dashboard_access)
  @enable_web_access = args[:enable_web_access] if args.key?(:enable_web_access)
  @experiment = args[:experiment] if args.key?(:experiment)
  @experiment_run = args[:experiment_run] if args.key?(:experiment_run)
  @models = args[:models] if args.key?(:models)
  @network = args[:network] if args.key?(:network)
  @persistent_resource_id = args[:persistent_resource_id] if args.key?(:persistent_resource_id)
  @protected_artifact_location_id = args[:protected_artifact_location_id] if args.key?(:protected_artifact_location_id)
  @psc_interface_config = args[:psc_interface_config] if args.key?(:psc_interface_config)
  @reserved_ip_ranges = args[:reserved_ip_ranges] if args.key?(:reserved_ip_ranges)
  @scheduling = args[:scheduling] if args.key?(:scheduling)
  @service_account = args[:service_account] if args.key?(:service_account)
  @tensorboard = args[:tensorboard] if args.key?(:tensorboard)
  @worker_pool_specs = args[:worker_pool_specs] if args.key?(:worker_pool_specs)
end