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

Specifies the serverless configuration for an endpoint variant.

See * Also:

AWS * API Reference

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

The memory size of your serverless endpoint. Valid values are in 1 GB * increments: 1024 MB, 2048 MB, 3072 MB, 4096 MB, 5120 MB, or 6144 MB.

*/ inline int GetMemorySizeInMB() const{ return m_memorySizeInMB; } /** *

The memory size of your serverless endpoint. Valid values are in 1 GB * increments: 1024 MB, 2048 MB, 3072 MB, 4096 MB, 5120 MB, or 6144 MB.

*/ inline bool MemorySizeInMBHasBeenSet() const { return m_memorySizeInMBHasBeenSet; } /** *

The memory size of your serverless endpoint. Valid values are in 1 GB * increments: 1024 MB, 2048 MB, 3072 MB, 4096 MB, 5120 MB, or 6144 MB.

*/ inline void SetMemorySizeInMB(int value) { m_memorySizeInMBHasBeenSet = true; m_memorySizeInMB = value; } /** *

The memory size of your serverless endpoint. Valid values are in 1 GB * increments: 1024 MB, 2048 MB, 3072 MB, 4096 MB, 5120 MB, or 6144 MB.

*/ inline ProductionVariantServerlessConfig& WithMemorySizeInMB(int value) { SetMemorySizeInMB(value); return *this;} /** *

The maximum number of concurrent invocations your serverless endpoint can * process.

*/ inline int GetMaxConcurrency() const{ return m_maxConcurrency; } /** *

The maximum number of concurrent invocations your serverless endpoint can * process.

*/ inline bool MaxConcurrencyHasBeenSet() const { return m_maxConcurrencyHasBeenSet; } /** *

The maximum number of concurrent invocations your serverless endpoint can * process.

*/ inline void SetMaxConcurrency(int value) { m_maxConcurrencyHasBeenSet = true; m_maxConcurrency = value; } /** *

The maximum number of concurrent invocations your serverless endpoint can * process.

*/ inline ProductionVariantServerlessConfig& WithMaxConcurrency(int value) { SetMaxConcurrency(value); return *this;} /** *

The amount of provisioned concurrency to allocate for the serverless * endpoint. Should be less than or equal to MaxConcurrency.

*

This field is not supported for serverless endpoint recommendations * for Inference Recommender jobs. For more information about creating an Inference * Recommender job, see CreateInferenceRecommendationsJobs.

* */ inline int GetProvisionedConcurrency() const{ return m_provisionedConcurrency; } /** *

The amount of provisioned concurrency to allocate for the serverless * endpoint. Should be less than or equal to MaxConcurrency.

*

This field is not supported for serverless endpoint recommendations * for Inference Recommender jobs. For more information about creating an Inference * Recommender job, see CreateInferenceRecommendationsJobs.

* */ inline bool ProvisionedConcurrencyHasBeenSet() const { return m_provisionedConcurrencyHasBeenSet; } /** *

The amount of provisioned concurrency to allocate for the serverless * endpoint. Should be less than or equal to MaxConcurrency.

*

This field is not supported for serverless endpoint recommendations * for Inference Recommender jobs. For more information about creating an Inference * Recommender job, see CreateInferenceRecommendationsJobs.

* */ inline void SetProvisionedConcurrency(int value) { m_provisionedConcurrencyHasBeenSet = true; m_provisionedConcurrency = value; } /** *

The amount of provisioned concurrency to allocate for the serverless * endpoint. Should be less than or equal to MaxConcurrency.

*

This field is not supported for serverless endpoint recommendations * for Inference Recommender jobs. For more information about creating an Inference * Recommender job, see CreateInferenceRecommendationsJobs.

* */ inline ProductionVariantServerlessConfig& WithProvisionedConcurrency(int value) { SetProvisionedConcurrency(value); return *this;} private: int m_memorySizeInMB; bool m_memorySizeInMBHasBeenSet = false; int m_maxConcurrency; bool m_maxConcurrencyHasBeenSet = false; int m_provisionedConcurrency; bool m_provisionedConcurrencyHasBeenSet = false; }; } // namespace Model } // namespace SageMaker } // namespace Aws