Google Cloud Ai Platform V1 Client - Class CustomJobSpec (0.37.1)

Reference documentation and code samples for the Google Cloud Ai Platform V1 Client class CustomJobSpec.

Represents the spec of a CustomJob.

Generated from protobuf message google.cloud.aiplatform.v1.CustomJobSpec

Namespace

Google \ Cloud \ AIPlatform \ V1

Methods

__construct

Constructor.

Parameters
Name Description
data array

Optional. Data for populating the Message object.

↳ persistent_resource_id string

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.

↳ worker_pool_specs array<Google\Cloud\AIPlatform\V1\WorkerPoolSpec>

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.

↳ scheduling Google\Cloud\AIPlatform\V1\Scheduling

Scheduling options for a CustomJob.

↳ service_account string

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.

↳ network string

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}. Where {project} is a project number, as in 12345, and {network} is a network name. To specify this field, you must have already configured VPC Network Peering for Vertex AI. If this field is left unspecified, the job is not peered with any network.

↳ reserved_ip_ranges array

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'].

↳ base_output_directory Google\Cloud\AIPlatform\V1\GcsDestination

The Cloud Storage location to store the output of this CustomJob or HyperparameterTuningJob. For HyperparameterTuningJob, the baseOutputDirectory of each child CustomJob backing a Trial is set to a subdirectory of name id under its parent HyperparameterTuningJob's baseOutputDirectory. The following Vertex AI environment variables will be passed to containers or python modules when this field is set: For CustomJob: * AIP_MODEL_DIR = <base_output_directory>/model/ * AIP_CHECKPOINT_DIR = <base_output_directory>/checkpoints/ * AIP_TENSORBOARD_LOG_DIR = <base_output_directory>/logs/ For CustomJob backing a Trial of HyperparameterTuningJob: * AIP_MODEL_DIR = <base_output_directory>/<trial_id>/model/ * AIP_CHECKPOINT_DIR = <base_output_directory>/<trial_id>/checkpoints/ * AIP_TENSORBOARD_LOG_DIR = <base_output_directory>/<trial_id>/logs/

↳ protected_artifact_location_id string

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

↳ tensorboard string

Optional. The name of a Vertex AI Tensorboard resource to which this CustomJob will upload Tensorboard logs. Format: projects/{project}/locations/{location}/tensorboards/{tensorboard}

↳ enable_web_access bool

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).

↳ enable_dashboard_access bool

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).

↳ experiment string

Optional. The Experiment associated with this job. Format: projects/{project}/locations/{location}/metadataStores/{metadataStores}/contexts/{experiment-name}

↳ experiment_run string

Optional. The Experiment Run associated with this job. Format: projects/{project}/locations/{location}/metadataStores/{metadataStores}/contexts/{experiment-name}-{experiment-run-name}

↳ models array

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}@2 or projects/{project}/locations/{location}/models/{model}@golden If 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.

getPersistentResourceId

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.

Returns
Type Description
string

setPersistentResourceId

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.

Parameter
Name Description
var string
Returns
Type Description
$this

getWorkerPoolSpecs

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.

Returns
Type Description
Google\Protobuf\Internal\RepeatedField

setWorkerPoolSpecs

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.

Parameter
Name Description
var array<Google\Cloud\AIPlatform\V1\WorkerPoolSpec>
Returns
Type Description
$this

getScheduling

Scheduling options for a CustomJob.

Returns
Type Description
Google\Cloud\AIPlatform\V1\Scheduling|null

hasScheduling

clearScheduling

setScheduling

Scheduling options for a CustomJob.

Parameter
Name Description
var Google\Cloud\AIPlatform\V1\Scheduling
Returns
Type Description
$this

getServiceAccount

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.

Returns
Type Description
string

setServiceAccount

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.

Parameter
Name Description
var string
Returns
Type Description
$this

getNetwork

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}. Where {project} is a project number, as in 12345, and {network} is a network name. To specify this field, you must have already configured VPC Network Peering for Vertex AI. If this field is left unspecified, the job is not peered with any network.

Returns
Type Description
string

setNetwork

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}. Where {project} is a project number, as in 12345, and {network} is a network name. To specify this field, you must have already configured VPC Network Peering for Vertex AI. If this field is left unspecified, the job is not peered with any network.

Parameter
Name Description
var string
Returns
Type Description
$this

getReservedIpRanges

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'].

Returns
Type Description
Google\Protobuf\Internal\RepeatedField

setReservedIpRanges

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'].

Parameter
Name Description
var string[]
Returns
Type Description
$this

getBaseOutputDirectory

The Cloud Storage location to store the output of this CustomJob or HyperparameterTuningJob. For HyperparameterTuningJob, the baseOutputDirectory of each child CustomJob backing a Trial is set to a subdirectory of name id under its parent HyperparameterTuningJob's baseOutputDirectory.

The following Vertex AI environment variables will be passed to containers or python modules when this field is set: For CustomJob:

  • AIP_MODEL_DIR = <base_output_directory>/model/
  • AIP_CHECKPOINT_DIR = <base_output_directory>/checkpoints/
  • AIP_TENSORBOARD_LOG_DIR = <base_output_directory>/logs/ For CustomJob backing a Trial of HyperparameterTuningJob:
  • AIP_MODEL_DIR = <base_output_directory>/<trial_id>/model/
  • AIP_CHECKPOINT_DIR = <base_output_directory>/<trial_id>/checkpoints/
  • AIP_TENSORBOARD_LOG_DIR = <base_output_directory>/<trial_id>/logs/
Returns
Type Description
Google\Cloud\AIPlatform\V1\GcsDestination|null

hasBaseOutputDirectory

clearBaseOutputDirectory

setBaseOutputDirectory

The Cloud Storage location to store the output of this CustomJob or HyperparameterTuningJob. For HyperparameterTuningJob, the baseOutputDirectory of each child CustomJob backing a Trial is set to a subdirectory of name id under its parent HyperparameterTuningJob's baseOutputDirectory.

The following Vertex AI environment variables will be passed to containers or python modules when this field is set: For CustomJob:

  • AIP_MODEL_DIR = <base_output_directory>/model/
  • AIP_CHECKPOINT_DIR = <base_output_directory>/checkpoints/
  • AIP_TENSORBOARD_LOG_DIR = <base_output_directory>/logs/ For CustomJob backing a Trial of HyperparameterTuningJob:
  • AIP_MODEL_DIR = <base_output_directory>/<trial_id>/model/
  • AIP_CHECKPOINT_DIR = <base_output_directory>/<trial_id>/checkpoints/
  • AIP_TENSORBOARD_LOG_DIR = <base_output_directory>/<trial_id>/logs/
Parameter
Name Description
var Google\Cloud\AIPlatform\V1\GcsDestination
Returns
Type Description
$this

getProtectedArtifactLocationId

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

Returns
Type Description
string

setProtectedArtifactLocationId

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

Parameter
Name Description
var string
Returns
Type Description
$this

getTensorboard

Optional. The name of a Vertex AI Tensorboard resource to which this CustomJob will upload Tensorboard logs. Format: projects/{project}/locations/{location}/tensorboards/{tensorboard}

Returns
Type Description
string

setTensorboard

Optional. The name of a Vertex AI Tensorboard resource to which this CustomJob will upload Tensorboard logs. Format: projects/{project}/locations/{location}/tensorboards/{tensorboard}

Parameter
Name Description
var string
Returns
Type Description
$this

getEnableWebAccess

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).

Returns
Type Description
bool

setEnableWebAccess

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).

Parameter
Name Description
var bool
Returns
Type Description
$this

getEnableDashboardAccess

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).

Returns
Type Description
bool

setEnableDashboardAccess

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).

Parameter
Name Description
var bool
Returns
Type Description
$this

getExperiment

Optional. The Experiment associated with this job.

Format: projects/{project}/locations/{location}/metadataStores/{metadataStores}/contexts/{experiment-name}

Returns
Type Description
string

setExperiment

Optional. The Experiment associated with this job.

Format: projects/{project}/locations/{location}/metadataStores/{metadataStores}/contexts/{experiment-name}

Parameter
Name Description
var string
Returns
Type Description
$this

getExperimentRun

Optional. The Experiment Run associated with this job.

Format: projects/{project}/locations/{location}/metadataStores/{metadataStores}/contexts/{experiment-name}-{experiment-run-name}

Returns
Type Description
string

setExperimentRun

Optional. The Experiment Run associated with this job.

Format: projects/{project}/locations/{location}/metadataStores/{metadataStores}/contexts/{experiment-name}-{experiment-run-name}

Parameter
Name Description
var string
Returns
Type Description
$this

getModels

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}@2 or projects/{project}/locations/{location}/models/{model}@golden If 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.

Returns
Type Description
Google\Protobuf\Internal\RepeatedField

setModels

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}@2 or projects/{project}/locations/{location}/models/{model}@golden If 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.

Parameter
Name Description
var string[]
Returns
Type Description
$this