/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SageMaker { namespace Model { /** *

Specifies conditions for stopping a job. When a job reaches a stopping * condition limit, SageMaker ends the job.

See Also:

AWS * API Reference

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

The maximum number of requests per minute expected for the endpoint.

*/ inline int GetMaxInvocations() const{ return m_maxInvocations; } /** *

The maximum number of requests per minute expected for the endpoint.

*/ inline bool MaxInvocationsHasBeenSet() const { return m_maxInvocationsHasBeenSet; } /** *

The maximum number of requests per minute expected for the endpoint.

*/ inline void SetMaxInvocations(int value) { m_maxInvocationsHasBeenSet = true; m_maxInvocations = value; } /** *

The maximum number of requests per minute expected for the endpoint.

*/ inline RecommendationJobStoppingConditions& WithMaxInvocations(int value) { SetMaxInvocations(value); return *this;} /** *

The interval of time taken by a model to respond as viewed from SageMaker. * The interval includes the local communication time taken to send the request and * to fetch the response from the container of a model and the time taken to * complete the inference in the container.

*/ inline const Aws::Vector& GetModelLatencyThresholds() const{ return m_modelLatencyThresholds; } /** *

The interval of time taken by a model to respond as viewed from SageMaker. * The interval includes the local communication time taken to send the request and * to fetch the response from the container of a model and the time taken to * complete the inference in the container.

*/ inline bool ModelLatencyThresholdsHasBeenSet() const { return m_modelLatencyThresholdsHasBeenSet; } /** *

The interval of time taken by a model to respond as viewed from SageMaker. * The interval includes the local communication time taken to send the request and * to fetch the response from the container of a model and the time taken to * complete the inference in the container.

*/ inline void SetModelLatencyThresholds(const Aws::Vector& value) { m_modelLatencyThresholdsHasBeenSet = true; m_modelLatencyThresholds = value; } /** *

The interval of time taken by a model to respond as viewed from SageMaker. * The interval includes the local communication time taken to send the request and * to fetch the response from the container of a model and the time taken to * complete the inference in the container.

*/ inline void SetModelLatencyThresholds(Aws::Vector&& value) { m_modelLatencyThresholdsHasBeenSet = true; m_modelLatencyThresholds = std::move(value); } /** *

The interval of time taken by a model to respond as viewed from SageMaker. * The interval includes the local communication time taken to send the request and * to fetch the response from the container of a model and the time taken to * complete the inference in the container.

*/ inline RecommendationJobStoppingConditions& WithModelLatencyThresholds(const Aws::Vector& value) { SetModelLatencyThresholds(value); return *this;} /** *

The interval of time taken by a model to respond as viewed from SageMaker. * The interval includes the local communication time taken to send the request and * to fetch the response from the container of a model and the time taken to * complete the inference in the container.

*/ inline RecommendationJobStoppingConditions& WithModelLatencyThresholds(Aws::Vector&& value) { SetModelLatencyThresholds(std::move(value)); return *this;} /** *

The interval of time taken by a model to respond as viewed from SageMaker. * The interval includes the local communication time taken to send the request and * to fetch the response from the container of a model and the time taken to * complete the inference in the container.

*/ inline RecommendationJobStoppingConditions& AddModelLatencyThresholds(const ModelLatencyThreshold& value) { m_modelLatencyThresholdsHasBeenSet = true; m_modelLatencyThresholds.push_back(value); return *this; } /** *

The interval of time taken by a model to respond as viewed from SageMaker. * The interval includes the local communication time taken to send the request and * to fetch the response from the container of a model and the time taken to * complete the inference in the container.

*/ inline RecommendationJobStoppingConditions& AddModelLatencyThresholds(ModelLatencyThreshold&& value) { m_modelLatencyThresholdsHasBeenSet = true; m_modelLatencyThresholds.push_back(std::move(value)); return *this; } private: int m_maxInvocations; bool m_maxInvocationsHasBeenSet = false; Aws::Vector m_modelLatencyThresholds; bool m_modelLatencyThresholdsHasBeenSet = false; }; } // namespace Model } // namespace SageMaker } // namespace Aws