/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace SageMaker { namespace Model { class AWS_SAGEMAKER_API DescribeHyperParameterTuningJobResult { public: DescribeHyperParameterTuningJobResult(); DescribeHyperParameterTuningJobResult(const Aws::AmazonWebServiceResult& result); DescribeHyperParameterTuningJobResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The name of the tuning job.

*/ inline const Aws::String& GetHyperParameterTuningJobName() const{ return m_hyperParameterTuningJobName; } /** *

The name of the tuning job.

*/ inline void SetHyperParameterTuningJobName(const Aws::String& value) { m_hyperParameterTuningJobName = value; } /** *

The name of the tuning job.

*/ inline void SetHyperParameterTuningJobName(Aws::String&& value) { m_hyperParameterTuningJobName = std::move(value); } /** *

The name of the tuning job.

*/ inline void SetHyperParameterTuningJobName(const char* value) { m_hyperParameterTuningJobName.assign(value); } /** *

The name of the tuning job.

*/ inline DescribeHyperParameterTuningJobResult& WithHyperParameterTuningJobName(const Aws::String& value) { SetHyperParameterTuningJobName(value); return *this;} /** *

The name of the tuning job.

*/ inline DescribeHyperParameterTuningJobResult& WithHyperParameterTuningJobName(Aws::String&& value) { SetHyperParameterTuningJobName(std::move(value)); return *this;} /** *

The name of the tuning job.

*/ inline DescribeHyperParameterTuningJobResult& WithHyperParameterTuningJobName(const char* value) { SetHyperParameterTuningJobName(value); return *this;} /** *

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

*/ inline const Aws::String& GetHyperParameterTuningJobArn() const{ return m_hyperParameterTuningJobArn; } /** *

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

*/ inline void SetHyperParameterTuningJobArn(const Aws::String& value) { m_hyperParameterTuningJobArn = value; } /** *

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

*/ inline void SetHyperParameterTuningJobArn(Aws::String&& value) { m_hyperParameterTuningJobArn = std::move(value); } /** *

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

*/ inline void SetHyperParameterTuningJobArn(const char* value) { m_hyperParameterTuningJobArn.assign(value); } /** *

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

*/ inline DescribeHyperParameterTuningJobResult& WithHyperParameterTuningJobArn(const Aws::String& value) { SetHyperParameterTuningJobArn(value); return *this;} /** *

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

*/ inline DescribeHyperParameterTuningJobResult& WithHyperParameterTuningJobArn(Aws::String&& value) { SetHyperParameterTuningJobArn(std::move(value)); return *this;} /** *

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

*/ inline DescribeHyperParameterTuningJobResult& WithHyperParameterTuningJobArn(const char* value) { SetHyperParameterTuningJobArn(value); return *this;} /** *

The HyperParameterTuningJobConfig object that specifies the * configuration of the tuning job.

*/ inline const HyperParameterTuningJobConfig& GetHyperParameterTuningJobConfig() const{ return m_hyperParameterTuningJobConfig; } /** *

The HyperParameterTuningJobConfig object that specifies the * configuration of the tuning job.

*/ inline void SetHyperParameterTuningJobConfig(const HyperParameterTuningJobConfig& value) { m_hyperParameterTuningJobConfig = value; } /** *

The HyperParameterTuningJobConfig object that specifies the * configuration of the tuning job.

*/ inline void SetHyperParameterTuningJobConfig(HyperParameterTuningJobConfig&& value) { m_hyperParameterTuningJobConfig = std::move(value); } /** *

The HyperParameterTuningJobConfig object that specifies the * configuration of the tuning job.

*/ inline DescribeHyperParameterTuningJobResult& WithHyperParameterTuningJobConfig(const HyperParameterTuningJobConfig& value) { SetHyperParameterTuningJobConfig(value); return *this;} /** *

The HyperParameterTuningJobConfig object that specifies the * configuration of the tuning job.

*/ inline DescribeHyperParameterTuningJobResult& WithHyperParameterTuningJobConfig(HyperParameterTuningJobConfig&& value) { SetHyperParameterTuningJobConfig(std::move(value)); return *this;} /** *

The HyperParameterTrainingJobDefinition object that specifies the * definition of the training jobs that this tuning job launches.

*/ inline const HyperParameterTrainingJobDefinition& GetTrainingJobDefinition() const{ return m_trainingJobDefinition; } /** *

The HyperParameterTrainingJobDefinition object that specifies the * definition of the training jobs that this tuning job launches.

*/ inline void SetTrainingJobDefinition(const HyperParameterTrainingJobDefinition& value) { m_trainingJobDefinition = value; } /** *

The HyperParameterTrainingJobDefinition object that specifies the * definition of the training jobs that this tuning job launches.

*/ inline void SetTrainingJobDefinition(HyperParameterTrainingJobDefinition&& value) { m_trainingJobDefinition = std::move(value); } /** *

The HyperParameterTrainingJobDefinition object that specifies the * definition of the training jobs that this tuning job launches.

*/ inline DescribeHyperParameterTuningJobResult& WithTrainingJobDefinition(const HyperParameterTrainingJobDefinition& value) { SetTrainingJobDefinition(value); return *this;} /** *

The HyperParameterTrainingJobDefinition object that specifies the * definition of the training jobs that this tuning job launches.

*/ inline DescribeHyperParameterTuningJobResult& WithTrainingJobDefinition(HyperParameterTrainingJobDefinition&& value) { SetTrainingJobDefinition(std::move(value)); return *this;} /** *

A list of the HyperParameterTrainingJobDefinition objects launched for * this tuning job.

*/ inline const Aws::Vector& GetTrainingJobDefinitions() const{ return m_trainingJobDefinitions; } /** *

A list of the HyperParameterTrainingJobDefinition objects launched for * this tuning job.

*/ inline void SetTrainingJobDefinitions(const Aws::Vector& value) { m_trainingJobDefinitions = value; } /** *

A list of the HyperParameterTrainingJobDefinition objects launched for * this tuning job.

*/ inline void SetTrainingJobDefinitions(Aws::Vector&& value) { m_trainingJobDefinitions = std::move(value); } /** *

A list of the HyperParameterTrainingJobDefinition objects launched for * this tuning job.

*/ inline DescribeHyperParameterTuningJobResult& WithTrainingJobDefinitions(const Aws::Vector& value) { SetTrainingJobDefinitions(value); return *this;} /** *

A list of the HyperParameterTrainingJobDefinition objects launched for * this tuning job.

*/ inline DescribeHyperParameterTuningJobResult& WithTrainingJobDefinitions(Aws::Vector&& value) { SetTrainingJobDefinitions(std::move(value)); return *this;} /** *

A list of the HyperParameterTrainingJobDefinition objects launched for * this tuning job.

*/ inline DescribeHyperParameterTuningJobResult& AddTrainingJobDefinitions(const HyperParameterTrainingJobDefinition& value) { m_trainingJobDefinitions.push_back(value); return *this; } /** *

A list of the HyperParameterTrainingJobDefinition objects launched for * this tuning job.

*/ inline DescribeHyperParameterTuningJobResult& AddTrainingJobDefinitions(HyperParameterTrainingJobDefinition&& value) { m_trainingJobDefinitions.push_back(std::move(value)); return *this; } /** *

The status of the tuning job: InProgress, Completed, Failed, Stopping, or * Stopped.

*/ inline const HyperParameterTuningJobStatus& GetHyperParameterTuningJobStatus() const{ return m_hyperParameterTuningJobStatus; } /** *

The status of the tuning job: InProgress, Completed, Failed, Stopping, or * Stopped.

*/ inline void SetHyperParameterTuningJobStatus(const HyperParameterTuningJobStatus& value) { m_hyperParameterTuningJobStatus = value; } /** *

The status of the tuning job: InProgress, Completed, Failed, Stopping, or * Stopped.

*/ inline void SetHyperParameterTuningJobStatus(HyperParameterTuningJobStatus&& value) { m_hyperParameterTuningJobStatus = std::move(value); } /** *

The status of the tuning job: InProgress, Completed, Failed, Stopping, or * Stopped.

*/ inline DescribeHyperParameterTuningJobResult& WithHyperParameterTuningJobStatus(const HyperParameterTuningJobStatus& value) { SetHyperParameterTuningJobStatus(value); return *this;} /** *

The status of the tuning job: InProgress, Completed, Failed, Stopping, or * Stopped.

*/ inline DescribeHyperParameterTuningJobResult& WithHyperParameterTuningJobStatus(HyperParameterTuningJobStatus&& value) { SetHyperParameterTuningJobStatus(std::move(value)); return *this;} /** *

The date and time that the tuning job started.

*/ inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; } /** *

The date and time that the tuning job started.

*/ inline void SetCreationTime(const Aws::Utils::DateTime& value) { m_creationTime = value; } /** *

The date and time that the tuning job started.

*/ inline void SetCreationTime(Aws::Utils::DateTime&& value) { m_creationTime = std::move(value); } /** *

The date and time that the tuning job started.

*/ inline DescribeHyperParameterTuningJobResult& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;} /** *

The date and time that the tuning job started.

*/ inline DescribeHyperParameterTuningJobResult& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;} /** *

The date and time that the tuning job ended.

*/ inline const Aws::Utils::DateTime& GetHyperParameterTuningEndTime() const{ return m_hyperParameterTuningEndTime; } /** *

The date and time that the tuning job ended.

*/ inline void SetHyperParameterTuningEndTime(const Aws::Utils::DateTime& value) { m_hyperParameterTuningEndTime = value; } /** *

The date and time that the tuning job ended.

*/ inline void SetHyperParameterTuningEndTime(Aws::Utils::DateTime&& value) { m_hyperParameterTuningEndTime = std::move(value); } /** *

The date and time that the tuning job ended.

*/ inline DescribeHyperParameterTuningJobResult& WithHyperParameterTuningEndTime(const Aws::Utils::DateTime& value) { SetHyperParameterTuningEndTime(value); return *this;} /** *

The date and time that the tuning job ended.

*/ inline DescribeHyperParameterTuningJobResult& WithHyperParameterTuningEndTime(Aws::Utils::DateTime&& value) { SetHyperParameterTuningEndTime(std::move(value)); return *this;} /** *

The date and time that the status of the tuning job was modified.

*/ inline const Aws::Utils::DateTime& GetLastModifiedTime() const{ return m_lastModifiedTime; } /** *

The date and time that the status of the tuning job was modified.

*/ inline void SetLastModifiedTime(const Aws::Utils::DateTime& value) { m_lastModifiedTime = value; } /** *

The date and time that the status of the tuning job was modified.

*/ inline void SetLastModifiedTime(Aws::Utils::DateTime&& value) { m_lastModifiedTime = std::move(value); } /** *

The date and time that the status of the tuning job was modified.

*/ inline DescribeHyperParameterTuningJobResult& WithLastModifiedTime(const Aws::Utils::DateTime& value) { SetLastModifiedTime(value); return *this;} /** *

The date and time that the status of the tuning job was modified.

*/ inline DescribeHyperParameterTuningJobResult& WithLastModifiedTime(Aws::Utils::DateTime&& value) { SetLastModifiedTime(std::move(value)); return *this;} /** *

The TrainingJobStatusCounters object that specifies the number of * training jobs, categorized by status, that this tuning job launched.

*/ inline const TrainingJobStatusCounters& GetTrainingJobStatusCounters() const{ return m_trainingJobStatusCounters; } /** *

The TrainingJobStatusCounters object that specifies the number of * training jobs, categorized by status, that this tuning job launched.

*/ inline void SetTrainingJobStatusCounters(const TrainingJobStatusCounters& value) { m_trainingJobStatusCounters = value; } /** *

The TrainingJobStatusCounters object that specifies the number of * training jobs, categorized by status, that this tuning job launched.

*/ inline void SetTrainingJobStatusCounters(TrainingJobStatusCounters&& value) { m_trainingJobStatusCounters = std::move(value); } /** *

The TrainingJobStatusCounters object that specifies the number of * training jobs, categorized by status, that this tuning job launched.

*/ inline DescribeHyperParameterTuningJobResult& WithTrainingJobStatusCounters(const TrainingJobStatusCounters& value) { SetTrainingJobStatusCounters(value); return *this;} /** *

The TrainingJobStatusCounters object that specifies the number of * training jobs, categorized by status, that this tuning job launched.

*/ inline DescribeHyperParameterTuningJobResult& WithTrainingJobStatusCounters(TrainingJobStatusCounters&& value) { SetTrainingJobStatusCounters(std::move(value)); return *this;} /** *

The ObjectiveStatusCounters object that specifies the number of * training jobs, categorized by the status of their final objective metric, that * this tuning job launched.

*/ inline const ObjectiveStatusCounters& GetObjectiveStatusCounters() const{ return m_objectiveStatusCounters; } /** *

The ObjectiveStatusCounters object that specifies the number of * training jobs, categorized by the status of their final objective metric, that * this tuning job launched.

*/ inline void SetObjectiveStatusCounters(const ObjectiveStatusCounters& value) { m_objectiveStatusCounters = value; } /** *

The ObjectiveStatusCounters object that specifies the number of * training jobs, categorized by the status of their final objective metric, that * this tuning job launched.

*/ inline void SetObjectiveStatusCounters(ObjectiveStatusCounters&& value) { m_objectiveStatusCounters = std::move(value); } /** *

The ObjectiveStatusCounters object that specifies the number of * training jobs, categorized by the status of their final objective metric, that * this tuning job launched.

*/ inline DescribeHyperParameterTuningJobResult& WithObjectiveStatusCounters(const ObjectiveStatusCounters& value) { SetObjectiveStatusCounters(value); return *this;} /** *

The ObjectiveStatusCounters object that specifies the number of * training jobs, categorized by the status of their final objective metric, that * this tuning job launched.

*/ inline DescribeHyperParameterTuningJobResult& WithObjectiveStatusCounters(ObjectiveStatusCounters&& value) { SetObjectiveStatusCounters(std::move(value)); return *this;} /** *

A TrainingJobSummary object that describes the training job that * completed with the best current HyperParameterTuningJobObjective.

*/ inline const HyperParameterTrainingJobSummary& GetBestTrainingJob() const{ return m_bestTrainingJob; } /** *

A TrainingJobSummary object that describes the training job that * completed with the best current HyperParameterTuningJobObjective.

*/ inline void SetBestTrainingJob(const HyperParameterTrainingJobSummary& value) { m_bestTrainingJob = value; } /** *

A TrainingJobSummary object that describes the training job that * completed with the best current HyperParameterTuningJobObjective.

*/ inline void SetBestTrainingJob(HyperParameterTrainingJobSummary&& value) { m_bestTrainingJob = std::move(value); } /** *

A TrainingJobSummary object that describes the training job that * completed with the best current HyperParameterTuningJobObjective.

*/ inline DescribeHyperParameterTuningJobResult& WithBestTrainingJob(const HyperParameterTrainingJobSummary& value) { SetBestTrainingJob(value); return *this;} /** *

A TrainingJobSummary object that describes the training job that * completed with the best current HyperParameterTuningJobObjective.

*/ inline DescribeHyperParameterTuningJobResult& WithBestTrainingJob(HyperParameterTrainingJobSummary&& value) { SetBestTrainingJob(std::move(value)); return *this;} /** *

If the hyperparameter tuning job is an warm start tuning job with a * WarmStartType of IDENTICAL_DATA_AND_ALGORITHM, this is * the TrainingJobSummary for the training job with the best objective * metric value of all training jobs launched by this tuning job and all parent * jobs specified for the warm start tuning job.

*/ inline const HyperParameterTrainingJobSummary& GetOverallBestTrainingJob() const{ return m_overallBestTrainingJob; } /** *

If the hyperparameter tuning job is an warm start tuning job with a * WarmStartType of IDENTICAL_DATA_AND_ALGORITHM, this is * the TrainingJobSummary for the training job with the best objective * metric value of all training jobs launched by this tuning job and all parent * jobs specified for the warm start tuning job.

*/ inline void SetOverallBestTrainingJob(const HyperParameterTrainingJobSummary& value) { m_overallBestTrainingJob = value; } /** *

If the hyperparameter tuning job is an warm start tuning job with a * WarmStartType of IDENTICAL_DATA_AND_ALGORITHM, this is * the TrainingJobSummary for the training job with the best objective * metric value of all training jobs launched by this tuning job and all parent * jobs specified for the warm start tuning job.

*/ inline void SetOverallBestTrainingJob(HyperParameterTrainingJobSummary&& value) { m_overallBestTrainingJob = std::move(value); } /** *

If the hyperparameter tuning job is an warm start tuning job with a * WarmStartType of IDENTICAL_DATA_AND_ALGORITHM, this is * the TrainingJobSummary for the training job with the best objective * metric value of all training jobs launched by this tuning job and all parent * jobs specified for the warm start tuning job.

*/ inline DescribeHyperParameterTuningJobResult& WithOverallBestTrainingJob(const HyperParameterTrainingJobSummary& value) { SetOverallBestTrainingJob(value); return *this;} /** *

If the hyperparameter tuning job is an warm start tuning job with a * WarmStartType of IDENTICAL_DATA_AND_ALGORITHM, this is * the TrainingJobSummary for the training job with the best objective * metric value of all training jobs launched by this tuning job and all parent * jobs specified for the warm start tuning job.

*/ inline DescribeHyperParameterTuningJobResult& WithOverallBestTrainingJob(HyperParameterTrainingJobSummary&& value) { SetOverallBestTrainingJob(std::move(value)); return *this;} /** *

The configuration for starting the hyperparameter parameter tuning job using * one or more previous tuning jobs as a starting point. The results of previous * tuning jobs are used to inform which combinations of hyperparameters to search * over in the new tuning job.

*/ inline const HyperParameterTuningJobWarmStartConfig& GetWarmStartConfig() const{ return m_warmStartConfig; } /** *

The configuration for starting the hyperparameter parameter tuning job using * one or more previous tuning jobs as a starting point. The results of previous * tuning jobs are used to inform which combinations of hyperparameters to search * over in the new tuning job.

*/ inline void SetWarmStartConfig(const HyperParameterTuningJobWarmStartConfig& value) { m_warmStartConfig = value; } /** *

The configuration for starting the hyperparameter parameter tuning job using * one or more previous tuning jobs as a starting point. The results of previous * tuning jobs are used to inform which combinations of hyperparameters to search * over in the new tuning job.

*/ inline void SetWarmStartConfig(HyperParameterTuningJobWarmStartConfig&& value) { m_warmStartConfig = std::move(value); } /** *

The configuration for starting the hyperparameter parameter tuning job using * one or more previous tuning jobs as a starting point. The results of previous * tuning jobs are used to inform which combinations of hyperparameters to search * over in the new tuning job.

*/ inline DescribeHyperParameterTuningJobResult& WithWarmStartConfig(const HyperParameterTuningJobWarmStartConfig& value) { SetWarmStartConfig(value); return *this;} /** *

The configuration for starting the hyperparameter parameter tuning job using * one or more previous tuning jobs as a starting point. The results of previous * tuning jobs are used to inform which combinations of hyperparameters to search * over in the new tuning job.

*/ inline DescribeHyperParameterTuningJobResult& WithWarmStartConfig(HyperParameterTuningJobWarmStartConfig&& value) { SetWarmStartConfig(std::move(value)); return *this;} /** *

If the tuning job failed, the reason it failed.

*/ inline const Aws::String& GetFailureReason() const{ return m_failureReason; } /** *

If the tuning job failed, the reason it failed.

*/ inline void SetFailureReason(const Aws::String& value) { m_failureReason = value; } /** *

If the tuning job failed, the reason it failed.

*/ inline void SetFailureReason(Aws::String&& value) { m_failureReason = std::move(value); } /** *

If the tuning job failed, the reason it failed.

*/ inline void SetFailureReason(const char* value) { m_failureReason.assign(value); } /** *

If the tuning job failed, the reason it failed.

*/ inline DescribeHyperParameterTuningJobResult& WithFailureReason(const Aws::String& value) { SetFailureReason(value); return *this;} /** *

If the tuning job failed, the reason it failed.

*/ inline DescribeHyperParameterTuningJobResult& WithFailureReason(Aws::String&& value) { SetFailureReason(std::move(value)); return *this;} /** *

If the tuning job failed, the reason it failed.

*/ inline DescribeHyperParameterTuningJobResult& WithFailureReason(const char* value) { SetFailureReason(value); return *this;} private: Aws::String m_hyperParameterTuningJobName; Aws::String m_hyperParameterTuningJobArn; HyperParameterTuningJobConfig m_hyperParameterTuningJobConfig; HyperParameterTrainingJobDefinition m_trainingJobDefinition; Aws::Vector m_trainingJobDefinitions; HyperParameterTuningJobStatus m_hyperParameterTuningJobStatus; Aws::Utils::DateTime m_creationTime; Aws::Utils::DateTime m_hyperParameterTuningEndTime; Aws::Utils::DateTime m_lastModifiedTime; TrainingJobStatusCounters m_trainingJobStatusCounters; ObjectiveStatusCounters m_objectiveStatusCounters; HyperParameterTrainingJobSummary m_bestTrainingJob; HyperParameterTrainingJobSummary m_overallBestTrainingJob; HyperParameterTuningJobWarmStartConfig m_warmStartConfig; Aws::String m_failureReason; }; } // namespace Model } // namespace SageMaker } // namespace Aws