Class: AWSCDK::Sagemaker::CfnDataQualityJobDefinition::StoppingConditionProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
sagemaker/cfn_data_quality_job_definition.rb

Overview

Specifies a limit to how long a job can run.

When the job reaches the time limit, SageMaker ends the job. Use this API to cap costs.

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

The training algorithms provided by SageMaker automatically save the intermediate results of a model training job when possible. This attempt to save artifacts is only a best effort case as model might not be in a state from which it can be saved. For example, if training has just started, the model might not be ready to save. When saved, this intermediate data is a valid model artifact. You can use it to create a model with CreateModel .

The Neural Topic Model (NTM) currently does not support saving intermediate model artifacts. When training NTMs, make sure that the maximum runtime is sufficient for the training job to complete.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(max_runtime_in_seconds:) ⇒ StoppingConditionProperty

Returns a new instance of StoppingConditionProperty.

Parameters:

  • max_runtime_in_seconds (Numeric)

    The maximum length of time, in seconds, that a training or compilation job can run before it is stopped.



1493
1494
1495
1496
# File 'sagemaker/cfn_data_quality_job_definition.rb', line 1493

def initialize(max_runtime_in_seconds:)
  @max_runtime_in_seconds = max_runtime_in_seconds
  Jsii::Type.check_type(@max_runtime_in_seconds, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "maxRuntimeInSeconds")
end

Instance Attribute Details

#max_runtime_in_secondsNumeric (readonly)

The maximum length of time, in seconds, that a training or compilation job can run before it is stopped.

For compilation jobs, if the job does not complete during this time, a TimeOut error is generated. We recommend starting with 900 seconds and increasing as necessary based on your model.

For all other jobs, if the job does not complete during this time, SageMaker ends the job. When RetryStrategy is specified in the job request, MaxRuntimeInSeconds specifies the maximum time for all of the attempts in total, not each individual attempt. The default value is 1 day. The maximum value is 28 days.

The maximum time that a TrainingJob can run in total, including any time spent publishing metrics or archiving and uploading models after it has been stopped, is 30 days.



1508
1509
1510
# File 'sagemaker/cfn_data_quality_job_definition.rb', line 1508

def max_runtime_in_seconds
  @max_runtime_in_seconds
end

Class Method Details

.jsii_propertiesObject



1510
1511
1512
1513
1514
# File 'sagemaker/cfn_data_quality_job_definition.rb', line 1510

def self.jsii_properties
  {
    :max_runtime_in_seconds => "maxRuntimeInSeconds",
  }
end

Instance Method Details

#to_jsiiObject



1516
1517
1518
1519
1520
1521
1522
# File 'sagemaker/cfn_data_quality_job_definition.rb', line 1516

def to_jsii
  result = {}
  result.merge!({
    "maxRuntimeInSeconds" => @max_runtime_in_seconds,
  })
  result.compact
end