Cloud AI Platform v1 API - Class CustomJobSpec (2.21.0)

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

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

Represents the spec of a CustomJob.

Inheritance

object > CustomJobSpec

Namespace

Google.Cloud.AIPlatform.V1

Assembly

Google.Cloud.AIPlatform.V1.dll

Constructors

CustomJobSpec()

public CustomJobSpec()

CustomJobSpec(CustomJobSpec)

public CustomJobSpec(CustomJobSpec other)
Parameter
NameDescription
otherCustomJobSpec

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

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

Property Value
TypeDescription
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
TypeDescription
string

ExperimentAsContextName

public ContextName ExperimentAsContextName { get; set; }

ContextName-typed view over the Experiment resource name property.

Property Value
TypeDescription
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
TypeDescription
string

ExperimentRunAsContextName

public ContextName ExperimentRunAsContextName { get; set; }

ContextName-typed view over the ExperimentRun resource name property.

Property Value
TypeDescription
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
TypeDescription
RepeatedFieldstring

ModelsAsModelNames

public ResourceNameList<ModelName> ModelsAsModelNames { get; }

ModelName-typed view over the Models resource name property.

Property Value
TypeDescription
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
TypeDescription
string

NetworkAsNetworkName

public NetworkName NetworkAsNetworkName { get; set; }

NetworkName-typed view over the Network resource name property.

Property Value
TypeDescription
NetworkName

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
TypeDescription
string

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
TypeDescription
RepeatedFieldstring

Scheduling

public Scheduling Scheduling { get; set; }

Scheduling options for a CustomJob.

Property Value
TypeDescription
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
TypeDescription
string

Tensorboard

public string Tensorboard { get; set; }

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

Property Value
TypeDescription
string

TensorboardAsTensorboardName

public TensorboardName TensorboardAsTensorboardName { get; set; }

TensorboardName-typed view over the Tensorboard resource name property.

Property Value
TypeDescription
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
TypeDescription
RepeatedFieldWorkerPoolSpec