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

A list of recommendations made by Amazon SageMaker Inference * Recommender.

See Also:

AWS * API Reference

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

The metrics used to decide what recommendation to make.

*/ inline const RecommendationMetrics& GetMetrics() const{ return m_metrics; } /** *

The metrics used to decide what recommendation to make.

*/ inline bool MetricsHasBeenSet() const { return m_metricsHasBeenSet; } /** *

The metrics used to decide what recommendation to make.

*/ inline void SetMetrics(const RecommendationMetrics& value) { m_metricsHasBeenSet = true; m_metrics = value; } /** *

The metrics used to decide what recommendation to make.

*/ inline void SetMetrics(RecommendationMetrics&& value) { m_metricsHasBeenSet = true; m_metrics = std::move(value); } /** *

The metrics used to decide what recommendation to make.

*/ inline InferenceRecommendation& WithMetrics(const RecommendationMetrics& value) { SetMetrics(value); return *this;} /** *

The metrics used to decide what recommendation to make.

*/ inline InferenceRecommendation& WithMetrics(RecommendationMetrics&& value) { SetMetrics(std::move(value)); return *this;} /** *

Defines the endpoint configuration parameters.

*/ inline const EndpointOutputConfiguration& GetEndpointConfiguration() const{ return m_endpointConfiguration; } /** *

Defines the endpoint configuration parameters.

*/ inline bool EndpointConfigurationHasBeenSet() const { return m_endpointConfigurationHasBeenSet; } /** *

Defines the endpoint configuration parameters.

*/ inline void SetEndpointConfiguration(const EndpointOutputConfiguration& value) { m_endpointConfigurationHasBeenSet = true; m_endpointConfiguration = value; } /** *

Defines the endpoint configuration parameters.

*/ inline void SetEndpointConfiguration(EndpointOutputConfiguration&& value) { m_endpointConfigurationHasBeenSet = true; m_endpointConfiguration = std::move(value); } /** *

Defines the endpoint configuration parameters.

*/ inline InferenceRecommendation& WithEndpointConfiguration(const EndpointOutputConfiguration& value) { SetEndpointConfiguration(value); return *this;} /** *

Defines the endpoint configuration parameters.

*/ inline InferenceRecommendation& WithEndpointConfiguration(EndpointOutputConfiguration&& value) { SetEndpointConfiguration(std::move(value)); return *this;} /** *

Defines the model configuration.

*/ inline const ModelConfiguration& GetModelConfiguration() const{ return m_modelConfiguration; } /** *

Defines the model configuration.

*/ inline bool ModelConfigurationHasBeenSet() const { return m_modelConfigurationHasBeenSet; } /** *

Defines the model configuration.

*/ inline void SetModelConfiguration(const ModelConfiguration& value) { m_modelConfigurationHasBeenSet = true; m_modelConfiguration = value; } /** *

Defines the model configuration.

*/ inline void SetModelConfiguration(ModelConfiguration&& value) { m_modelConfigurationHasBeenSet = true; m_modelConfiguration = std::move(value); } /** *

Defines the model configuration.

*/ inline InferenceRecommendation& WithModelConfiguration(const ModelConfiguration& value) { SetModelConfiguration(value); return *this;} /** *

Defines the model configuration.

*/ inline InferenceRecommendation& WithModelConfiguration(ModelConfiguration&& value) { SetModelConfiguration(std::move(value)); return *this;} /** *

The recommendation ID which uniquely identifies each recommendation.

*/ inline const Aws::String& GetRecommendationId() const{ return m_recommendationId; } /** *

The recommendation ID which uniquely identifies each recommendation.

*/ inline bool RecommendationIdHasBeenSet() const { return m_recommendationIdHasBeenSet; } /** *

The recommendation ID which uniquely identifies each recommendation.

*/ inline void SetRecommendationId(const Aws::String& value) { m_recommendationIdHasBeenSet = true; m_recommendationId = value; } /** *

The recommendation ID which uniquely identifies each recommendation.

*/ inline void SetRecommendationId(Aws::String&& value) { m_recommendationIdHasBeenSet = true; m_recommendationId = std::move(value); } /** *

The recommendation ID which uniquely identifies each recommendation.

*/ inline void SetRecommendationId(const char* value) { m_recommendationIdHasBeenSet = true; m_recommendationId.assign(value); } /** *

The recommendation ID which uniquely identifies each recommendation.

*/ inline InferenceRecommendation& WithRecommendationId(const Aws::String& value) { SetRecommendationId(value); return *this;} /** *

The recommendation ID which uniquely identifies each recommendation.

*/ inline InferenceRecommendation& WithRecommendationId(Aws::String&& value) { SetRecommendationId(std::move(value)); return *this;} /** *

The recommendation ID which uniquely identifies each recommendation.

*/ inline InferenceRecommendation& WithRecommendationId(const char* value) { SetRecommendationId(value); return *this;} /** *

A timestamp that shows when the benchmark completed.

*/ inline const Aws::Utils::DateTime& GetInvocationEndTime() const{ return m_invocationEndTime; } /** *

A timestamp that shows when the benchmark completed.

*/ inline bool InvocationEndTimeHasBeenSet() const { return m_invocationEndTimeHasBeenSet; } /** *

A timestamp that shows when the benchmark completed.

*/ inline void SetInvocationEndTime(const Aws::Utils::DateTime& value) { m_invocationEndTimeHasBeenSet = true; m_invocationEndTime = value; } /** *

A timestamp that shows when the benchmark completed.

*/ inline void SetInvocationEndTime(Aws::Utils::DateTime&& value) { m_invocationEndTimeHasBeenSet = true; m_invocationEndTime = std::move(value); } /** *

A timestamp that shows when the benchmark completed.

*/ inline InferenceRecommendation& WithInvocationEndTime(const Aws::Utils::DateTime& value) { SetInvocationEndTime(value); return *this;} /** *

A timestamp that shows when the benchmark completed.

*/ inline InferenceRecommendation& WithInvocationEndTime(Aws::Utils::DateTime&& value) { SetInvocationEndTime(std::move(value)); return *this;} /** *

A timestamp that shows when the benchmark started.

*/ inline const Aws::Utils::DateTime& GetInvocationStartTime() const{ return m_invocationStartTime; } /** *

A timestamp that shows when the benchmark started.

*/ inline bool InvocationStartTimeHasBeenSet() const { return m_invocationStartTimeHasBeenSet; } /** *

A timestamp that shows when the benchmark started.

*/ inline void SetInvocationStartTime(const Aws::Utils::DateTime& value) { m_invocationStartTimeHasBeenSet = true; m_invocationStartTime = value; } /** *

A timestamp that shows when the benchmark started.

*/ inline void SetInvocationStartTime(Aws::Utils::DateTime&& value) { m_invocationStartTimeHasBeenSet = true; m_invocationStartTime = std::move(value); } /** *

A timestamp that shows when the benchmark started.

*/ inline InferenceRecommendation& WithInvocationStartTime(const Aws::Utils::DateTime& value) { SetInvocationStartTime(value); return *this;} /** *

A timestamp that shows when the benchmark started.

*/ inline InferenceRecommendation& WithInvocationStartTime(Aws::Utils::DateTime&& value) { SetInvocationStartTime(std::move(value)); return *this;} private: RecommendationMetrics m_metrics; bool m_metricsHasBeenSet = false; EndpointOutputConfiguration m_endpointConfiguration; bool m_endpointConfigurationHasBeenSet = false; ModelConfiguration m_modelConfiguration; bool m_modelConfigurationHasBeenSet = false; Aws::String m_recommendationId; bool m_recommendationIdHasBeenSet = false; Aws::Utils::DateTime m_invocationEndTime; bool m_invocationEndTimeHasBeenSet = false; Aws::Utils::DateTime m_invocationStartTime; bool m_invocationStartTimeHasBeenSet = false; }; } // namespace Model } // namespace SageMaker } // namespace Aws