/** * 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 namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SageMaker { namespace Model { /** *

Provides summary information about a hyperparameter tuning job.

See * Also:

AWS * API Reference

*/ class HyperParameterTuningJobSummary { public: AWS_SAGEMAKER_API HyperParameterTuningJobSummary(); AWS_SAGEMAKER_API HyperParameterTuningJobSummary(Aws::Utils::Json::JsonView jsonValue); AWS_SAGEMAKER_API HyperParameterTuningJobSummary& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The name of the tuning job.

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

The name of the tuning job.

*/ inline bool HyperParameterTuningJobNameHasBeenSet() const { return m_hyperParameterTuningJobNameHasBeenSet; } /** *

The name of the tuning job.

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

The name of the tuning job.

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

The name of the tuning job.

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

The name of the tuning job.

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

The name of the tuning job.

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

The name of the tuning job.

*/ inline HyperParameterTuningJobSummary& 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 bool HyperParameterTuningJobArnHasBeenSet() const { return m_hyperParameterTuningJobArnHasBeenSet; } /** *

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

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

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

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

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

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

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

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

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

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

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

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

The status of the tuning job.

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

The status of the tuning job.

*/ inline bool HyperParameterTuningJobStatusHasBeenSet() const { return m_hyperParameterTuningJobStatusHasBeenSet; } /** *

The status of the tuning job.

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

The status of the tuning job.

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

The status of the tuning job.

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

The status of the tuning job.

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

Specifies the search strategy hyperparameter tuning uses to choose which * hyperparameters to evaluate at each iteration.

*/ inline const HyperParameterTuningJobStrategyType& GetStrategy() const{ return m_strategy; } /** *

Specifies the search strategy hyperparameter tuning uses to choose which * hyperparameters to evaluate at each iteration.

*/ inline bool StrategyHasBeenSet() const { return m_strategyHasBeenSet; } /** *

Specifies the search strategy hyperparameter tuning uses to choose which * hyperparameters to evaluate at each iteration.

*/ inline void SetStrategy(const HyperParameterTuningJobStrategyType& value) { m_strategyHasBeenSet = true; m_strategy = value; } /** *

Specifies the search strategy hyperparameter tuning uses to choose which * hyperparameters to evaluate at each iteration.

*/ inline void SetStrategy(HyperParameterTuningJobStrategyType&& value) { m_strategyHasBeenSet = true; m_strategy = std::move(value); } /** *

Specifies the search strategy hyperparameter tuning uses to choose which * hyperparameters to evaluate at each iteration.

*/ inline HyperParameterTuningJobSummary& WithStrategy(const HyperParameterTuningJobStrategyType& value) { SetStrategy(value); return *this;} /** *

Specifies the search strategy hyperparameter tuning uses to choose which * hyperparameters to evaluate at each iteration.

*/ inline HyperParameterTuningJobSummary& WithStrategy(HyperParameterTuningJobStrategyType&& value) { SetStrategy(std::move(value)); return *this;} /** *

The date and time that the tuning job was created.

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

The date and time that the tuning job was created.

*/ inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; } /** *

The date and time that the tuning job was created.

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

The date and time that the tuning job was created.

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

The date and time that the tuning job was created.

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

The date and time that the tuning job was created.

*/ inline HyperParameterTuningJobSummary& 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 bool HyperParameterTuningEndTimeHasBeenSet() const { return m_hyperParameterTuningEndTimeHasBeenSet; } /** *

The date and time that the tuning job ended.

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

The date and time that the tuning job ended.

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

The date and time that the tuning job ended.

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

The date and time that the tuning job ended.

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

The date and time that the tuning job was modified.

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

The date and time that the tuning job was modified.

*/ inline bool LastModifiedTimeHasBeenSet() const { return m_lastModifiedTimeHasBeenSet; } /** *

The date and time that the tuning job was modified.

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

The date and time that the tuning job was modified.

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

The date and time that the tuning job was modified.

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

The date and time that the tuning job was modified.

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

The TrainingJobStatusCounters * object that specifies the numbers 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 numbers of training jobs, categorized by status, that * this tuning job launched.

*/ inline bool TrainingJobStatusCountersHasBeenSet() const { return m_trainingJobStatusCountersHasBeenSet; } /** *

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

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

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

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

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

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

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

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

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

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

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

*/ inline bool ObjectiveStatusCountersHasBeenSet() const { return m_objectiveStatusCountersHasBeenSet; } /** *

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

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

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

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

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

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

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

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

The ResourceLimits * object that specifies the maximum number of training jobs and parallel training * jobs allowed for this tuning job.

*/ inline const ResourceLimits& GetResourceLimits() const{ return m_resourceLimits; } /** *

The ResourceLimits * object that specifies the maximum number of training jobs and parallel training * jobs allowed for this tuning job.

*/ inline bool ResourceLimitsHasBeenSet() const { return m_resourceLimitsHasBeenSet; } /** *

The ResourceLimits * object that specifies the maximum number of training jobs and parallel training * jobs allowed for this tuning job.

*/ inline void SetResourceLimits(const ResourceLimits& value) { m_resourceLimitsHasBeenSet = true; m_resourceLimits = value; } /** *

The ResourceLimits * object that specifies the maximum number of training jobs and parallel training * jobs allowed for this tuning job.

*/ inline void SetResourceLimits(ResourceLimits&& value) { m_resourceLimitsHasBeenSet = true; m_resourceLimits = std::move(value); } /** *

The ResourceLimits * object that specifies the maximum number of training jobs and parallel training * jobs allowed for this tuning job.

*/ inline HyperParameterTuningJobSummary& WithResourceLimits(const ResourceLimits& value) { SetResourceLimits(value); return *this;} /** *

The ResourceLimits * object that specifies the maximum number of training jobs and parallel training * jobs allowed for this tuning job.

*/ inline HyperParameterTuningJobSummary& WithResourceLimits(ResourceLimits&& value) { SetResourceLimits(std::move(value)); return *this;} private: Aws::String m_hyperParameterTuningJobName; bool m_hyperParameterTuningJobNameHasBeenSet = false; Aws::String m_hyperParameterTuningJobArn; bool m_hyperParameterTuningJobArnHasBeenSet = false; HyperParameterTuningJobStatus m_hyperParameterTuningJobStatus; bool m_hyperParameterTuningJobStatusHasBeenSet = false; HyperParameterTuningJobStrategyType m_strategy; bool m_strategyHasBeenSet = false; Aws::Utils::DateTime m_creationTime; bool m_creationTimeHasBeenSet = false; Aws::Utils::DateTime m_hyperParameterTuningEndTime; bool m_hyperParameterTuningEndTimeHasBeenSet = false; Aws::Utils::DateTime m_lastModifiedTime; bool m_lastModifiedTimeHasBeenSet = false; TrainingJobStatusCounters m_trainingJobStatusCounters; bool m_trainingJobStatusCountersHasBeenSet = false; ObjectiveStatusCounters m_objectiveStatusCounters; bool m_objectiveStatusCountersHasBeenSet = false; ResourceLimits m_resourceLimits; bool m_resourceLimitsHasBeenSet = false; }; } // namespace Model } // namespace SageMaker } // namespace Aws