Cloud AI Platform v1beta1 API - Class CustomJobSpec (1.0.0-beta12)

public sealed class CustomJobSpec : IMessage<CustomJobSpec>, IEquatable<CustomJobSpec>, IDeepCloneable<CustomJobSpec>, IBufferMessage, IMessage

Reference documentation and code samples for the Cloud AI Platform v1beta1 API class CustomJobSpec.

Represents the spec of a CustomJob.

Inheritance

object > CustomJobSpec

Namespace

Google.Cloud.AIPlatform.V1Beta1

Assembly

Google.Cloud.AIPlatform.V1Beta1.dll

Constructors

CustomJobSpec()

public CustomJobSpec()

CustomJobSpec(CustomJobSpec)

public CustomJobSpec(CustomJobSpec other)
Parameter
Name Description
other CustomJobSpec

Properties

BaseOutputDirectory

public GcsDestination BaseOutputDirectory { get; set; }

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][google.cloud.aiplatform.v1beta1.Trial.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/
Property Value
Type Description
GcsDestination

EnableDashboardAccess

public bool EnableDashboardAccess { get; set; }

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][google.cloud.aiplatform.v1beta1.CustomJob.web_access_uris] or [Trial.web_access_uris][google.cloud.aiplatform.v1beta1.Trial.web_access_uris] (within [HyperparameterTuningJob.trials][google.cloud.aiplatform.v1beta1.HyperparameterTuningJob.trials]).

Property Value
Type Description
bool

EnableWebAccess

public bool EnableWebAccess { get; set; }

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][google.cloud.aiplatform.v1beta1.CustomJob.web_access_uris] or [Trial.web_access_uris][google.cloud.aiplatform.v1beta1.Trial.web_access_uris] (within [HyperparameterTuningJob.trials][google.cloud.aiplatform.v1beta1.HyperparameterTuningJob.trials]).

Property Value
Type Description
bool

Experiment

public string Experiment { get; set; }

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

Property Value
Type Description
string

ExperimentAsContextName

public ContextName ExperimentAsContextName { get; set; }

ContextName-typed view over the Experiment resource name property.

Property Value
Type Description
ContextName

ExperimentRun

public string ExperimentRun { get; set; }

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

Property Value
Type Description
string

ExperimentRunAsContextName

public ContextName ExperimentRunAsContextName { get; set; }

ContextName-typed view over the ExperimentRun resource name property.

Property Value
Type Description
ContextName

Models

public RepeatedField<string> Models { get; }

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.

Property Value
Type Description
RepeatedFieldstring

ModelsAsModelNames

public ResourceNameList<ModelName> ModelsAsModelNames { get; }

ModelName-typed view over the Models resource name property.

Property Value
Type Description
ResourceNameListModelName

Network

public string Network { get; set; }

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.

Property Value
Type Description
string

NetworkAsNetworkName

public NetworkName NetworkAsNetworkName { get; set; }

NetworkName-typed view over the Network resource name property.

Property Value
Type Description
NetworkName

PersistentResourceId

public string PersistentResourceId { get; set; }

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.

Property Value
Type Description
string

PersistentResourceIdAsPersistentResourceName

public PersistentResourceName PersistentResourceIdAsPersistentResourceName { get; set; }

PersistentResourceName-typed view over the PersistentResourceId resource name property.

Property Value
Type Description
PersistentResourceName

ProtectedArtifactLocationId

public string ProtectedArtifactLocationId { get; set; }

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

Property Value
Type Description
string

PscInterfaceConfig

public PscInterfaceConfig PscInterfaceConfig { get; set; }

Optional. Configuration for PSC-I for CustomJob.

Property Value
Type Description
PscInterfaceConfig

ReservedIpRanges

public RepeatedField<string> ReservedIpRanges { get; }

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

Property Value
Type Description
RepeatedFieldstring

Scheduling

public Scheduling Scheduling { get; set; }

Scheduling options for a CustomJob.

Property Value
Type Description
Scheduling

ServiceAccount

public string ServiceAccount { get; set; }

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.

Property Value
Type Description
string

Tensorboard

public string Tensorboard { get; set; }

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

Property Value
Type Description
string

TensorboardAsTensorboardName

public TensorboardName TensorboardAsTensorboardName { get; set; }

TensorboardName-typed view over the Tensorboard resource name property.

Property Value
Type Description
TensorboardName

WorkerPoolSpecs

public RepeatedField<WorkerPoolSpec> WorkerPoolSpecs { get; }

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.

Property Value
Type Description
RepeatedFieldWorkerPoolSpec