API Reference

PREVIEW DOCUMENTATION - This is a preview of a new format for the AWS SDK for Go API Reference documentation. For the current AWS SDK for Go API Reference, see

We welcome your feedback on this new version of the documentation. Send your comments to


import ""

type DescribeTrainingJobOutput struct { AlgorithmSpecification *AlgorithmSpecification `type:"structure" required:"true"` CreationTime *time.Time `type:"timestamp" required:"true"` EnableInterContainerTrafficEncryption *bool `type:"boolean"` EnableNetworkIsolation *bool `type:"boolean"` FailureReason *string `type:"string"` FinalMetricDataList []*MetricData `type:"list"` HyperParameters map[string]*string `type:"map"` InputDataConfig []*Channel `min:"1" type:"list"` LabelingJobArn *string `type:"string"` LastModifiedTime *time.Time `type:"timestamp"` ModelArtifacts *ModelArtifacts `type:"structure" required:"true"` OutputDataConfig *OutputDataConfig `type:"structure"` ResourceConfig *ResourceConfig `type:"structure" required:"true"` RoleArn *string `min:"20" type:"string"` SecondaryStatus *string `type:"string" required:"true" enum:"SecondaryStatus"` SecondaryStatusTransitions []*SecondaryStatusTransition `type:"list"` StoppingCondition *StoppingCondition `type:"structure" required:"true"` TrainingEndTime *time.Time `type:"timestamp"` TrainingJobArn *string `type:"string" required:"true"` TrainingJobName *string `min:"1" type:"string" required:"true"` TrainingJobStatus *string `type:"string" required:"true" enum:"TrainingJobStatus"` TrainingStartTime *time.Time `type:"timestamp"` TuningJobArn *string `type:"string"` VpcConfig *VpcConfig `type:"structure"` }


Specifies the training algorithm to use in a CreateTrainingJob ( request.

For more information about algorithms provided by Amazon SageMaker, see Algorithms ( For information about using your own algorithms, see Using Your Own Algorithms with Amazon SageMaker (


Type: *time.Time

A timestamp that indicates when the training job was created.

CreationTime is a required field


Type: *bool

To encrypt all communications between ML compute instances in distributed training, specify True. Encryption provides greater security for distributed training, but training take longer because of the additional communications between ML compute instances.


Type: *bool

If you want to allow inbound or outbound network calls, except for calls between peers within a training cluster for distributed training, choose True. If you enable network isolation for training jobs that are configured to use a VPC, Amazon SageMaker downloads and uploads customer data and model artifacts through the specified VPC, but the training container does not have network access.

The Semantic Segmentation built-in algorithm does not support network isolation.


Type: *string

If the training job failed, the reason it failed.


The name, value, and date and time of a metric that was emitted to Amazon CloudWatch.


Type: map[string]*string

Algorithm-specific parameters.


A channel is a named input source that training algorithms can consume.


Type: *string

The Amazon Resource Name (ARN) of the Amazon SageMaker Ground Truth labeling job that created the transform or training job.


Type: *time.Time

A timestamp that indicates when the status of the training job was last modified.


Provides information about the location that is configured for storing model artifacts.


Provides information about how to store model training results (model artifacts).


Describes the resources, including ML compute instances and ML storage volumes, to use for model training.


Type: *string

The AWS Identity and Access Management (IAM) role configured for the training job.


Type: *string

Provides detailed information about the state of the training job. For detailed information on the secondary status of the training job, see StatusMessage under SecondaryStatusTransition.

Amazon SageMaker provides primary statuses and secondary statuses that apply to each of them:

InProgressStarting - Starting the training job.

Downloading - An optional stage for algorithms that support File training input mode. It indicates that data is being downloaded to the ML storage volumes.

Training - Training is in progress.

Uploading - Training is complete and the model artifacts are being uploaded to the S3 location.

CompletedCompleted - The training job has completed.

FailedFailed - The training job has failed. The reason for the failure is returned in the FailureReason field of DescribeTrainingJobResponse.

StoppedMaxRuntimeExceeded - The job stopped because it exceeded the maximum allowed runtime.

Stopped - The training job has stopped.

StoppingStopping - Stopping the training job.

Valid values for SecondaryStatus are subject to change.

We no longer support the following secondary statuses:

  • LaunchingMLInstances

  • PreparingTrainingStack

  • DownloadingTrainingImage

SecondaryStatus is a required field


An array element of DescribeTrainingJobResponse$SecondaryStatusTransitions. It provides additional details about a status that the training job has transitioned through. A training job can be in one of several states, for example, starting, downloading, training, or uploading. Within each state, there are a number of intermediate states. For example, within the starting state, Amazon SageMaker could be starting the training job or launching the ML instances. These transitional states are referred to as the job's secondary status.


Specifies how long model training can run. When model training reaches the limit, Amazon SageMaker ends the training job. Use this API to cap model training cost.

To stop a job, Amazon SageMaker sends the algorithm the SIGTERM signal, which delays job termination for120 seconds. Algorithms might use this 120-second window to save the model artifacts, so the results of training is not lost.

Training algorithms provided by Amazon SageMaker automatically saves the intermediate results of a model training job (it is best effort case, as model might not be ready to save as some stages, for example training just started). This intermediate data is a valid model artifact. You can use it to create a model (CreateModel).


Type: *time.Time

Indicates the time when the training job ends on training instances. You are billed for the time interval between the value of TrainingStartTime and this time. For successful jobs and stopped jobs, this is the time after model artifacts are uploaded. For failed jobs, this is the time when Amazon SageMaker detects a job failure.


Type: *string

The Amazon Resource Name (ARN) of the training job.

TrainingJobArn is a required field


Type: *string

Name of the model training job.

TrainingJobName is a required field


Type: *string

The status of the training job.

Amazon SageMaker provides the following training job statuses:

  • InProgress - The training is in progress.

  • Completed - The training job has completed.

  • Failed - The training job has failed. To see the reason for the failure, see the FailureReason field in the response to a DescribeTrainingJobResponse call.

  • Stopping - The training job is stopping.

  • Stopped - The training job has stopped.

For more detailed information, see SecondaryStatus.

TrainingJobStatus is a required field


Type: *time.Time

Indicates the time when the training job starts on training instances. You are billed for the time interval between this time and the value of TrainingEndTime. The start time in CloudWatch Logs might be later than this time. The difference is due to the time it takes to download the training data and to the size of the training container.


Type: *string

The Amazon Resource Name (ARN) of the associated hyperparameter tuning job if the training job was launched by a hyperparameter tuning job.


Specifies a VPC that your training jobs and hosted models have access to. Control access to and from your training and model containers by configuring the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual Private Cloud ( and Protect Training Jobs by Using an Amazon Virtual Private Cloud (



func (s DescribeTrainingJobOutput) GoString() string

GoString returns the string representation


func (s *DescribeTrainingJobOutput) SetAlgorithmSpecification(v *AlgorithmSpecification) *DescribeTrainingJobOutput

SetAlgorithmSpecification sets the AlgorithmSpecification field's value.


func (s *DescribeTrainingJobOutput) SetCreationTime(v time.Time) *DescribeTrainingJobOutput

SetCreationTime sets the CreationTime field's value.


func (s *DescribeTrainingJobOutput) SetEnableInterContainerTrafficEncryption(v bool) *DescribeTrainingJobOutput

SetEnableInterContainerTrafficEncryption sets the EnableInterContainerTrafficEncryption field's value.


func (s *DescribeTrainingJobOutput) SetEnableNetworkIsolation(v bool) *DescribeTrainingJobOutput

SetEnableNetworkIsolation sets the EnableNetworkIsolation field's value.


func (s *DescribeTrainingJobOutput) SetFailureReason(v string) *DescribeTrainingJobOutput

SetFailureReason sets the FailureReason field's value.


func (s *DescribeTrainingJobOutput) SetFinalMetricDataList(v []*MetricData) *DescribeTrainingJobOutput

SetFinalMetricDataList sets the FinalMetricDataList field's value.


func (s *DescribeTrainingJobOutput) SetHyperParameters(v map[string]*string) *DescribeTrainingJobOutput

SetHyperParameters sets the HyperParameters field's value.


func (s *DescribeTrainingJobOutput) SetInputDataConfig(v []*Channel) *DescribeTrainingJobOutput

SetInputDataConfig sets the InputDataConfig field's value.


func (s *DescribeTrainingJobOutput) SetLabelingJobArn(v string) *DescribeTrainingJobOutput

SetLabelingJobArn sets the LabelingJobArn field's value.


func (s *DescribeTrainingJobOutput) SetLastModifiedTime(v time.Time) *DescribeTrainingJobOutput

SetLastModifiedTime sets the LastModifiedTime field's value.


func (s *DescribeTrainingJobOutput) SetModelArtifacts(v *ModelArtifacts) *DescribeTrainingJobOutput

SetModelArtifacts sets the ModelArtifacts field's value.


func (s *DescribeTrainingJobOutput) SetOutputDataConfig(v *OutputDataConfig) *DescribeTrainingJobOutput

SetOutputDataConfig sets the OutputDataConfig field's value.


func (s *DescribeTrainingJobOutput) SetResourceConfig(v *ResourceConfig) *DescribeTrainingJobOutput

SetResourceConfig sets the ResourceConfig field's value.


func (s *DescribeTrainingJobOutput) SetRoleArn(v string) *DescribeTrainingJobOutput

SetRoleArn sets the RoleArn field's value.


func (s *DescribeTrainingJobOutput) SetSecondaryStatus(v string) *DescribeTrainingJobOutput

SetSecondaryStatus sets the SecondaryStatus field's value.


func (s *DescribeTrainingJobOutput) SetSecondaryStatusTransitions(v []*SecondaryStatusTransition) *DescribeTrainingJobOutput

SetSecondaryStatusTransitions sets the SecondaryStatusTransitions field's value.


func (s *DescribeTrainingJobOutput) SetStoppingCondition(v *StoppingCondition) *DescribeTrainingJobOutput

SetStoppingCondition sets the StoppingCondition field's value.


func (s *DescribeTrainingJobOutput) SetTrainingEndTime(v time.Time) *DescribeTrainingJobOutput

SetTrainingEndTime sets the TrainingEndTime field's value.


func (s *DescribeTrainingJobOutput) SetTrainingJobArn(v string) *DescribeTrainingJobOutput

SetTrainingJobArn sets the TrainingJobArn field's value.


func (s *DescribeTrainingJobOutput) SetTrainingJobName(v string) *DescribeTrainingJobOutput

SetTrainingJobName sets the TrainingJobName field's value.


func (s *DescribeTrainingJobOutput) SetTrainingJobStatus(v string) *DescribeTrainingJobOutput

SetTrainingJobStatus sets the TrainingJobStatus field's value.


func (s *DescribeTrainingJobOutput) SetTrainingStartTime(v time.Time) *DescribeTrainingJobOutput

SetTrainingStartTime sets the TrainingStartTime field's value.


func (s *DescribeTrainingJobOutput) SetTuningJobArn(v string) *DescribeTrainingJobOutput

SetTuningJobArn sets the TuningJobArn field's value.


func (s *DescribeTrainingJobOutput) SetVpcConfig(v *VpcConfig) *DescribeTrainingJobOutput

SetVpcConfig sets the VpcConfig field's value.


func (s DescribeTrainingJobOutput) String() string

String returns the string representation

On this page: