/** * 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 #include #include #include #include namespace Aws { namespace SageMaker { namespace Model { /** */ class CreateModelPackageRequest : public SageMakerRequest { public: AWS_SAGEMAKER_API CreateModelPackageRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "CreateModelPackage"; } AWS_SAGEMAKER_API Aws::String SerializePayload() const override; AWS_SAGEMAKER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The name of the model package. The name must have 1 to 63 characters. Valid * characters are a-z, A-Z, 0-9, and - (hyphen).

This parameter is required * for unversioned models. It is not applicable to versioned models.

*/ inline const Aws::String& GetModelPackageName() const{ return m_modelPackageName; } /** *

The name of the model package. The name must have 1 to 63 characters. Valid * characters are a-z, A-Z, 0-9, and - (hyphen).

This parameter is required * for unversioned models. It is not applicable to versioned models.

*/ inline bool ModelPackageNameHasBeenSet() const { return m_modelPackageNameHasBeenSet; } /** *

The name of the model package. The name must have 1 to 63 characters. Valid * characters are a-z, A-Z, 0-9, and - (hyphen).

This parameter is required * for unversioned models. It is not applicable to versioned models.

*/ inline void SetModelPackageName(const Aws::String& value) { m_modelPackageNameHasBeenSet = true; m_modelPackageName = value; } /** *

The name of the model package. The name must have 1 to 63 characters. Valid * characters are a-z, A-Z, 0-9, and - (hyphen).

This parameter is required * for unversioned models. It is not applicable to versioned models.

*/ inline void SetModelPackageName(Aws::String&& value) { m_modelPackageNameHasBeenSet = true; m_modelPackageName = std::move(value); } /** *

The name of the model package. The name must have 1 to 63 characters. Valid * characters are a-z, A-Z, 0-9, and - (hyphen).

This parameter is required * for unversioned models. It is not applicable to versioned models.

*/ inline void SetModelPackageName(const char* value) { m_modelPackageNameHasBeenSet = true; m_modelPackageName.assign(value); } /** *

The name of the model package. The name must have 1 to 63 characters. Valid * characters are a-z, A-Z, 0-9, and - (hyphen).

This parameter is required * for unversioned models. It is not applicable to versioned models.

*/ inline CreateModelPackageRequest& WithModelPackageName(const Aws::String& value) { SetModelPackageName(value); return *this;} /** *

The name of the model package. The name must have 1 to 63 characters. Valid * characters are a-z, A-Z, 0-9, and - (hyphen).

This parameter is required * for unversioned models. It is not applicable to versioned models.

*/ inline CreateModelPackageRequest& WithModelPackageName(Aws::String&& value) { SetModelPackageName(std::move(value)); return *this;} /** *

The name of the model package. The name must have 1 to 63 characters. Valid * characters are a-z, A-Z, 0-9, and - (hyphen).

This parameter is required * for unversioned models. It is not applicable to versioned models.

*/ inline CreateModelPackageRequest& WithModelPackageName(const char* value) { SetModelPackageName(value); return *this;} /** *

The name or Amazon Resource Name (ARN) of the model package group that this * model version belongs to.

This parameter is required for versioned * models, and does not apply to unversioned models.

*/ inline const Aws::String& GetModelPackageGroupName() const{ return m_modelPackageGroupName; } /** *

The name or Amazon Resource Name (ARN) of the model package group that this * model version belongs to.

This parameter is required for versioned * models, and does not apply to unversioned models.

*/ inline bool ModelPackageGroupNameHasBeenSet() const { return m_modelPackageGroupNameHasBeenSet; } /** *

The name or Amazon Resource Name (ARN) of the model package group that this * model version belongs to.

This parameter is required for versioned * models, and does not apply to unversioned models.

*/ inline void SetModelPackageGroupName(const Aws::String& value) { m_modelPackageGroupNameHasBeenSet = true; m_modelPackageGroupName = value; } /** *

The name or Amazon Resource Name (ARN) of the model package group that this * model version belongs to.

This parameter is required for versioned * models, and does not apply to unversioned models.

*/ inline void SetModelPackageGroupName(Aws::String&& value) { m_modelPackageGroupNameHasBeenSet = true; m_modelPackageGroupName = std::move(value); } /** *

The name or Amazon Resource Name (ARN) of the model package group that this * model version belongs to.

This parameter is required for versioned * models, and does not apply to unversioned models.

*/ inline void SetModelPackageGroupName(const char* value) { m_modelPackageGroupNameHasBeenSet = true; m_modelPackageGroupName.assign(value); } /** *

The name or Amazon Resource Name (ARN) of the model package group that this * model version belongs to.

This parameter is required for versioned * models, and does not apply to unversioned models.

*/ inline CreateModelPackageRequest& WithModelPackageGroupName(const Aws::String& value) { SetModelPackageGroupName(value); return *this;} /** *

The name or Amazon Resource Name (ARN) of the model package group that this * model version belongs to.

This parameter is required for versioned * models, and does not apply to unversioned models.

*/ inline CreateModelPackageRequest& WithModelPackageGroupName(Aws::String&& value) { SetModelPackageGroupName(std::move(value)); return *this;} /** *

The name or Amazon Resource Name (ARN) of the model package group that this * model version belongs to.

This parameter is required for versioned * models, and does not apply to unversioned models.

*/ inline CreateModelPackageRequest& WithModelPackageGroupName(const char* value) { SetModelPackageGroupName(value); return *this;} /** *

A description of the model package.

*/ inline const Aws::String& GetModelPackageDescription() const{ return m_modelPackageDescription; } /** *

A description of the model package.

*/ inline bool ModelPackageDescriptionHasBeenSet() const { return m_modelPackageDescriptionHasBeenSet; } /** *

A description of the model package.

*/ inline void SetModelPackageDescription(const Aws::String& value) { m_modelPackageDescriptionHasBeenSet = true; m_modelPackageDescription = value; } /** *

A description of the model package.

*/ inline void SetModelPackageDescription(Aws::String&& value) { m_modelPackageDescriptionHasBeenSet = true; m_modelPackageDescription = std::move(value); } /** *

A description of the model package.

*/ inline void SetModelPackageDescription(const char* value) { m_modelPackageDescriptionHasBeenSet = true; m_modelPackageDescription.assign(value); } /** *

A description of the model package.

*/ inline CreateModelPackageRequest& WithModelPackageDescription(const Aws::String& value) { SetModelPackageDescription(value); return *this;} /** *

A description of the model package.

*/ inline CreateModelPackageRequest& WithModelPackageDescription(Aws::String&& value) { SetModelPackageDescription(std::move(value)); return *this;} /** *

A description of the model package.

*/ inline CreateModelPackageRequest& WithModelPackageDescription(const char* value) { SetModelPackageDescription(value); return *this;} /** *

Specifies details about inference jobs that can be run with models based on * this model package, including the following:

  • The Amazon ECR * paths of containers that contain the inference code and model artifacts.

    *
  • The instance types that the model package supports for transform * jobs and real-time endpoints used for inference.

  • The input and * output content formats that the model package supports for inference.

  • *
*/ inline const InferenceSpecification& GetInferenceSpecification() const{ return m_inferenceSpecification; } /** *

Specifies details about inference jobs that can be run with models based on * this model package, including the following:

  • The Amazon ECR * paths of containers that contain the inference code and model artifacts.

    *
  • The instance types that the model package supports for transform * jobs and real-time endpoints used for inference.

  • The input and * output content formats that the model package supports for inference.

  • *
*/ inline bool InferenceSpecificationHasBeenSet() const { return m_inferenceSpecificationHasBeenSet; } /** *

Specifies details about inference jobs that can be run with models based on * this model package, including the following:

  • The Amazon ECR * paths of containers that contain the inference code and model artifacts.

    *
  • The instance types that the model package supports for transform * jobs and real-time endpoints used for inference.

  • The input and * output content formats that the model package supports for inference.

  • *
*/ inline void SetInferenceSpecification(const InferenceSpecification& value) { m_inferenceSpecificationHasBeenSet = true; m_inferenceSpecification = value; } /** *

Specifies details about inference jobs that can be run with models based on * this model package, including the following:

  • The Amazon ECR * paths of containers that contain the inference code and model artifacts.

    *
  • The instance types that the model package supports for transform * jobs and real-time endpoints used for inference.

  • The input and * output content formats that the model package supports for inference.

  • *
*/ inline void SetInferenceSpecification(InferenceSpecification&& value) { m_inferenceSpecificationHasBeenSet = true; m_inferenceSpecification = std::move(value); } /** *

Specifies details about inference jobs that can be run with models based on * this model package, including the following:

  • The Amazon ECR * paths of containers that contain the inference code and model artifacts.

    *
  • The instance types that the model package supports for transform * jobs and real-time endpoints used for inference.

  • The input and * output content formats that the model package supports for inference.

  • *
*/ inline CreateModelPackageRequest& WithInferenceSpecification(const InferenceSpecification& value) { SetInferenceSpecification(value); return *this;} /** *

Specifies details about inference jobs that can be run with models based on * this model package, including the following:

  • The Amazon ECR * paths of containers that contain the inference code and model artifacts.

    *
  • The instance types that the model package supports for transform * jobs and real-time endpoints used for inference.

  • The input and * output content formats that the model package supports for inference.

  • *
*/ inline CreateModelPackageRequest& WithInferenceSpecification(InferenceSpecification&& value) { SetInferenceSpecification(std::move(value)); return *this;} /** *

Specifies configurations for one or more transform jobs that SageMaker runs * to test the model package.

*/ inline const ModelPackageValidationSpecification& GetValidationSpecification() const{ return m_validationSpecification; } /** *

Specifies configurations for one or more transform jobs that SageMaker runs * to test the model package.

*/ inline bool ValidationSpecificationHasBeenSet() const { return m_validationSpecificationHasBeenSet; } /** *

Specifies configurations for one or more transform jobs that SageMaker runs * to test the model package.

*/ inline void SetValidationSpecification(const ModelPackageValidationSpecification& value) { m_validationSpecificationHasBeenSet = true; m_validationSpecification = value; } /** *

Specifies configurations for one or more transform jobs that SageMaker runs * to test the model package.

*/ inline void SetValidationSpecification(ModelPackageValidationSpecification&& value) { m_validationSpecificationHasBeenSet = true; m_validationSpecification = std::move(value); } /** *

Specifies configurations for one or more transform jobs that SageMaker runs * to test the model package.

*/ inline CreateModelPackageRequest& WithValidationSpecification(const ModelPackageValidationSpecification& value) { SetValidationSpecification(value); return *this;} /** *

Specifies configurations for one or more transform jobs that SageMaker runs * to test the model package.

*/ inline CreateModelPackageRequest& WithValidationSpecification(ModelPackageValidationSpecification&& value) { SetValidationSpecification(std::move(value)); return *this;} /** *

Details about the algorithm that was used to create the model package.

*/ inline const SourceAlgorithmSpecification& GetSourceAlgorithmSpecification() const{ return m_sourceAlgorithmSpecification; } /** *

Details about the algorithm that was used to create the model package.

*/ inline bool SourceAlgorithmSpecificationHasBeenSet() const { return m_sourceAlgorithmSpecificationHasBeenSet; } /** *

Details about the algorithm that was used to create the model package.

*/ inline void SetSourceAlgorithmSpecification(const SourceAlgorithmSpecification& value) { m_sourceAlgorithmSpecificationHasBeenSet = true; m_sourceAlgorithmSpecification = value; } /** *

Details about the algorithm that was used to create the model package.

*/ inline void SetSourceAlgorithmSpecification(SourceAlgorithmSpecification&& value) { m_sourceAlgorithmSpecificationHasBeenSet = true; m_sourceAlgorithmSpecification = std::move(value); } /** *

Details about the algorithm that was used to create the model package.

*/ inline CreateModelPackageRequest& WithSourceAlgorithmSpecification(const SourceAlgorithmSpecification& value) { SetSourceAlgorithmSpecification(value); return *this;} /** *

Details about the algorithm that was used to create the model package.

*/ inline CreateModelPackageRequest& WithSourceAlgorithmSpecification(SourceAlgorithmSpecification&& value) { SetSourceAlgorithmSpecification(std::move(value)); return *this;} /** *

Whether to certify the model package for listing on Amazon Web Services * Marketplace.

This parameter is optional for unversioned models, and does * not apply to versioned models.

*/ inline bool GetCertifyForMarketplace() const{ return m_certifyForMarketplace; } /** *

Whether to certify the model package for listing on Amazon Web Services * Marketplace.

This parameter is optional for unversioned models, and does * not apply to versioned models.

*/ inline bool CertifyForMarketplaceHasBeenSet() const { return m_certifyForMarketplaceHasBeenSet; } /** *

Whether to certify the model package for listing on Amazon Web Services * Marketplace.

This parameter is optional for unversioned models, and does * not apply to versioned models.

*/ inline void SetCertifyForMarketplace(bool value) { m_certifyForMarketplaceHasBeenSet = true; m_certifyForMarketplace = value; } /** *

Whether to certify the model package for listing on Amazon Web Services * Marketplace.

This parameter is optional for unversioned models, and does * not apply to versioned models.

*/ inline CreateModelPackageRequest& WithCertifyForMarketplace(bool value) { SetCertifyForMarketplace(value); return *this;} /** *

A list of key value pairs associated with the model. For more information, * see Tagging * Amazon Web Services resources in the Amazon Web Services General * Reference Guide.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

A list of key value pairs associated with the model. For more information, * see Tagging * Amazon Web Services resources in the Amazon Web Services General * Reference Guide.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

A list of key value pairs associated with the model. For more information, * see Tagging * Amazon Web Services resources in the Amazon Web Services General * Reference Guide.

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

A list of key value pairs associated with the model. For more information, * see Tagging * Amazon Web Services resources in the Amazon Web Services General * Reference Guide.

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

A list of key value pairs associated with the model. For more information, * see Tagging * Amazon Web Services resources in the Amazon Web Services General * Reference Guide.

*/ inline CreateModelPackageRequest& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

A list of key value pairs associated with the model. For more information, * see Tagging * Amazon Web Services resources in the Amazon Web Services General * Reference Guide.

*/ inline CreateModelPackageRequest& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

A list of key value pairs associated with the model. For more information, * see Tagging * Amazon Web Services resources in the Amazon Web Services General * Reference Guide.

*/ inline CreateModelPackageRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

A list of key value pairs associated with the model. For more information, * see Tagging * Amazon Web Services resources in the Amazon Web Services General * Reference Guide.

*/ inline CreateModelPackageRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } /** *

Whether the model is approved for deployment.

This parameter is * optional for versioned models, and does not apply to unversioned models.

*

For versioned models, the value of this parameter must be set to * Approved to deploy the model.

*/ inline const ModelApprovalStatus& GetModelApprovalStatus() const{ return m_modelApprovalStatus; } /** *

Whether the model is approved for deployment.

This parameter is * optional for versioned models, and does not apply to unversioned models.

*

For versioned models, the value of this parameter must be set to * Approved to deploy the model.

*/ inline bool ModelApprovalStatusHasBeenSet() const { return m_modelApprovalStatusHasBeenSet; } /** *

Whether the model is approved for deployment.

This parameter is * optional for versioned models, and does not apply to unversioned models.

*

For versioned models, the value of this parameter must be set to * Approved to deploy the model.

*/ inline void SetModelApprovalStatus(const ModelApprovalStatus& value) { m_modelApprovalStatusHasBeenSet = true; m_modelApprovalStatus = value; } /** *

Whether the model is approved for deployment.

This parameter is * optional for versioned models, and does not apply to unversioned models.

*

For versioned models, the value of this parameter must be set to * Approved to deploy the model.

*/ inline void SetModelApprovalStatus(ModelApprovalStatus&& value) { m_modelApprovalStatusHasBeenSet = true; m_modelApprovalStatus = std::move(value); } /** *

Whether the model is approved for deployment.

This parameter is * optional for versioned models, and does not apply to unversioned models.

*

For versioned models, the value of this parameter must be set to * Approved to deploy the model.

*/ inline CreateModelPackageRequest& WithModelApprovalStatus(const ModelApprovalStatus& value) { SetModelApprovalStatus(value); return *this;} /** *

Whether the model is approved for deployment.

This parameter is * optional for versioned models, and does not apply to unversioned models.

*

For versioned models, the value of this parameter must be set to * Approved to deploy the model.

*/ inline CreateModelPackageRequest& WithModelApprovalStatus(ModelApprovalStatus&& value) { SetModelApprovalStatus(std::move(value)); return *this;} inline const MetadataProperties& GetMetadataProperties() const{ return m_metadataProperties; } inline bool MetadataPropertiesHasBeenSet() const { return m_metadataPropertiesHasBeenSet; } inline void SetMetadataProperties(const MetadataProperties& value) { m_metadataPropertiesHasBeenSet = true; m_metadataProperties = value; } inline void SetMetadataProperties(MetadataProperties&& value) { m_metadataPropertiesHasBeenSet = true; m_metadataProperties = std::move(value); } inline CreateModelPackageRequest& WithMetadataProperties(const MetadataProperties& value) { SetMetadataProperties(value); return *this;} inline CreateModelPackageRequest& WithMetadataProperties(MetadataProperties&& value) { SetMetadataProperties(std::move(value)); return *this;} /** *

A structure that contains model metrics reports.

*/ inline const ModelMetrics& GetModelMetrics() const{ return m_modelMetrics; } /** *

A structure that contains model metrics reports.

*/ inline bool ModelMetricsHasBeenSet() const { return m_modelMetricsHasBeenSet; } /** *

A structure that contains model metrics reports.

*/ inline void SetModelMetrics(const ModelMetrics& value) { m_modelMetricsHasBeenSet = true; m_modelMetrics = value; } /** *

A structure that contains model metrics reports.

*/ inline void SetModelMetrics(ModelMetrics&& value) { m_modelMetricsHasBeenSet = true; m_modelMetrics = std::move(value); } /** *

A structure that contains model metrics reports.

*/ inline CreateModelPackageRequest& WithModelMetrics(const ModelMetrics& value) { SetModelMetrics(value); return *this;} /** *

A structure that contains model metrics reports.

*/ inline CreateModelPackageRequest& WithModelMetrics(ModelMetrics&& value) { SetModelMetrics(std::move(value)); return *this;} /** *

A unique token that guarantees that the call to this API is idempotent.

*/ inline const Aws::String& GetClientToken() const{ return m_clientToken; } /** *

A unique token that guarantees that the call to this API is idempotent.

*/ inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; } /** *

A unique token that guarantees that the call to this API is idempotent.

*/ inline void SetClientToken(const Aws::String& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; } /** *

A unique token that guarantees that the call to this API is idempotent.

*/ inline void SetClientToken(Aws::String&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::move(value); } /** *

A unique token that guarantees that the call to this API is idempotent.

*/ inline void SetClientToken(const char* value) { m_clientTokenHasBeenSet = true; m_clientToken.assign(value); } /** *

A unique token that guarantees that the call to this API is idempotent.

*/ inline CreateModelPackageRequest& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;} /** *

A unique token that guarantees that the call to this API is idempotent.

*/ inline CreateModelPackageRequest& WithClientToken(Aws::String&& value) { SetClientToken(std::move(value)); return *this;} /** *

A unique token that guarantees that the call to this API is idempotent.

*/ inline CreateModelPackageRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;} /** *

The metadata properties associated with the model package versions.

*/ inline const Aws::Map& GetCustomerMetadataProperties() const{ return m_customerMetadataProperties; } /** *

The metadata properties associated with the model package versions.

*/ inline bool CustomerMetadataPropertiesHasBeenSet() const { return m_customerMetadataPropertiesHasBeenSet; } /** *

The metadata properties associated with the model package versions.

*/ inline void SetCustomerMetadataProperties(const Aws::Map& value) { m_customerMetadataPropertiesHasBeenSet = true; m_customerMetadataProperties = value; } /** *

The metadata properties associated with the model package versions.

*/ inline void SetCustomerMetadataProperties(Aws::Map&& value) { m_customerMetadataPropertiesHasBeenSet = true; m_customerMetadataProperties = std::move(value); } /** *

The metadata properties associated with the model package versions.

*/ inline CreateModelPackageRequest& WithCustomerMetadataProperties(const Aws::Map& value) { SetCustomerMetadataProperties(value); return *this;} /** *

The metadata properties associated with the model package versions.

*/ inline CreateModelPackageRequest& WithCustomerMetadataProperties(Aws::Map&& value) { SetCustomerMetadataProperties(std::move(value)); return *this;} /** *

The metadata properties associated with the model package versions.

*/ inline CreateModelPackageRequest& AddCustomerMetadataProperties(const Aws::String& key, const Aws::String& value) { m_customerMetadataPropertiesHasBeenSet = true; m_customerMetadataProperties.emplace(key, value); return *this; } /** *

The metadata properties associated with the model package versions.

*/ inline CreateModelPackageRequest& AddCustomerMetadataProperties(Aws::String&& key, const Aws::String& value) { m_customerMetadataPropertiesHasBeenSet = true; m_customerMetadataProperties.emplace(std::move(key), value); return *this; } /** *

The metadata properties associated with the model package versions.

*/ inline CreateModelPackageRequest& AddCustomerMetadataProperties(const Aws::String& key, Aws::String&& value) { m_customerMetadataPropertiesHasBeenSet = true; m_customerMetadataProperties.emplace(key, std::move(value)); return *this; } /** *

The metadata properties associated with the model package versions.

*/ inline CreateModelPackageRequest& AddCustomerMetadataProperties(Aws::String&& key, Aws::String&& value) { m_customerMetadataPropertiesHasBeenSet = true; m_customerMetadataProperties.emplace(std::move(key), std::move(value)); return *this; } /** *

The metadata properties associated with the model package versions.

*/ inline CreateModelPackageRequest& AddCustomerMetadataProperties(const char* key, Aws::String&& value) { m_customerMetadataPropertiesHasBeenSet = true; m_customerMetadataProperties.emplace(key, std::move(value)); return *this; } /** *

The metadata properties associated with the model package versions.

*/ inline CreateModelPackageRequest& AddCustomerMetadataProperties(Aws::String&& key, const char* value) { m_customerMetadataPropertiesHasBeenSet = true; m_customerMetadataProperties.emplace(std::move(key), value); return *this; } /** *

The metadata properties associated with the model package versions.

*/ inline CreateModelPackageRequest& AddCustomerMetadataProperties(const char* key, const char* value) { m_customerMetadataPropertiesHasBeenSet = true; m_customerMetadataProperties.emplace(key, value); return *this; } /** *

Represents the drift check baselines that can be used when the model monitor * is set using the model package. For more information, see the topic on Drift * Detection against Previous Baselines in SageMaker Pipelines in the Amazon * SageMaker Developer Guide.

*/ inline const DriftCheckBaselines& GetDriftCheckBaselines() const{ return m_driftCheckBaselines; } /** *

Represents the drift check baselines that can be used when the model monitor * is set using the model package. For more information, see the topic on Drift * Detection against Previous Baselines in SageMaker Pipelines in the Amazon * SageMaker Developer Guide.

*/ inline bool DriftCheckBaselinesHasBeenSet() const { return m_driftCheckBaselinesHasBeenSet; } /** *

Represents the drift check baselines that can be used when the model monitor * is set using the model package. For more information, see the topic on Drift * Detection against Previous Baselines in SageMaker Pipelines in the Amazon * SageMaker Developer Guide.

*/ inline void SetDriftCheckBaselines(const DriftCheckBaselines& value) { m_driftCheckBaselinesHasBeenSet = true; m_driftCheckBaselines = value; } /** *

Represents the drift check baselines that can be used when the model monitor * is set using the model package. For more information, see the topic on Drift * Detection against Previous Baselines in SageMaker Pipelines in the Amazon * SageMaker Developer Guide.

*/ inline void SetDriftCheckBaselines(DriftCheckBaselines&& value) { m_driftCheckBaselinesHasBeenSet = true; m_driftCheckBaselines = std::move(value); } /** *

Represents the drift check baselines that can be used when the model monitor * is set using the model package. For more information, see the topic on Drift * Detection against Previous Baselines in SageMaker Pipelines in the Amazon * SageMaker Developer Guide.

*/ inline CreateModelPackageRequest& WithDriftCheckBaselines(const DriftCheckBaselines& value) { SetDriftCheckBaselines(value); return *this;} /** *

Represents the drift check baselines that can be used when the model monitor * is set using the model package. For more information, see the topic on Drift * Detection against Previous Baselines in SageMaker Pipelines in the Amazon * SageMaker Developer Guide.

*/ inline CreateModelPackageRequest& WithDriftCheckBaselines(DriftCheckBaselines&& value) { SetDriftCheckBaselines(std::move(value)); return *this;} /** *

The machine learning domain of your model package and its components. Common * machine learning domains include computer vision and natural language * processing.

*/ inline const Aws::String& GetDomain() const{ return m_domain; } /** *

The machine learning domain of your model package and its components. Common * machine learning domains include computer vision and natural language * processing.

*/ inline bool DomainHasBeenSet() const { return m_domainHasBeenSet; } /** *

The machine learning domain of your model package and its components. Common * machine learning domains include computer vision and natural language * processing.

*/ inline void SetDomain(const Aws::String& value) { m_domainHasBeenSet = true; m_domain = value; } /** *

The machine learning domain of your model package and its components. Common * machine learning domains include computer vision and natural language * processing.

*/ inline void SetDomain(Aws::String&& value) { m_domainHasBeenSet = true; m_domain = std::move(value); } /** *

The machine learning domain of your model package and its components. Common * machine learning domains include computer vision and natural language * processing.

*/ inline void SetDomain(const char* value) { m_domainHasBeenSet = true; m_domain.assign(value); } /** *

The machine learning domain of your model package and its components. Common * machine learning domains include computer vision and natural language * processing.

*/ inline CreateModelPackageRequest& WithDomain(const Aws::String& value) { SetDomain(value); return *this;} /** *

The machine learning domain of your model package and its components. Common * machine learning domains include computer vision and natural language * processing.

*/ inline CreateModelPackageRequest& WithDomain(Aws::String&& value) { SetDomain(std::move(value)); return *this;} /** *

The machine learning domain of your model package and its components. Common * machine learning domains include computer vision and natural language * processing.

*/ inline CreateModelPackageRequest& WithDomain(const char* value) { SetDomain(value); return *this;} /** *

The machine learning task your model package accomplishes. Common machine * learning tasks include object detection and image classification. The following * tasks are supported by Inference Recommender: * "IMAGE_CLASSIFICATION" | "OBJECT_DETECTION" | * "TEXT_GENERATION" |"IMAGE_SEGMENTATION" | * "FILL_MASK" | "CLASSIFICATION" | * "REGRESSION" | "OTHER".

Specify "OTHER" if none * of the tasks listed fit your use case.

*/ inline const Aws::String& GetTask() const{ return m_task; } /** *

The machine learning task your model package accomplishes. Common machine * learning tasks include object detection and image classification. The following * tasks are supported by Inference Recommender: * "IMAGE_CLASSIFICATION" | "OBJECT_DETECTION" | * "TEXT_GENERATION" |"IMAGE_SEGMENTATION" | * "FILL_MASK" | "CLASSIFICATION" | * "REGRESSION" | "OTHER".

Specify "OTHER" if none * of the tasks listed fit your use case.

*/ inline bool TaskHasBeenSet() const { return m_taskHasBeenSet; } /** *

The machine learning task your model package accomplishes. Common machine * learning tasks include object detection and image classification. The following * tasks are supported by Inference Recommender: * "IMAGE_CLASSIFICATION" | "OBJECT_DETECTION" | * "TEXT_GENERATION" |"IMAGE_SEGMENTATION" | * "FILL_MASK" | "CLASSIFICATION" | * "REGRESSION" | "OTHER".

Specify "OTHER" if none * of the tasks listed fit your use case.

*/ inline void SetTask(const Aws::String& value) { m_taskHasBeenSet = true; m_task = value; } /** *

The machine learning task your model package accomplishes. Common machine * learning tasks include object detection and image classification. The following * tasks are supported by Inference Recommender: * "IMAGE_CLASSIFICATION" | "OBJECT_DETECTION" | * "TEXT_GENERATION" |"IMAGE_SEGMENTATION" | * "FILL_MASK" | "CLASSIFICATION" | * "REGRESSION" | "OTHER".

Specify "OTHER" if none * of the tasks listed fit your use case.

*/ inline void SetTask(Aws::String&& value) { m_taskHasBeenSet = true; m_task = std::move(value); } /** *

The machine learning task your model package accomplishes. Common machine * learning tasks include object detection and image classification. The following * tasks are supported by Inference Recommender: * "IMAGE_CLASSIFICATION" | "OBJECT_DETECTION" | * "TEXT_GENERATION" |"IMAGE_SEGMENTATION" | * "FILL_MASK" | "CLASSIFICATION" | * "REGRESSION" | "OTHER".

Specify "OTHER" if none * of the tasks listed fit your use case.

*/ inline void SetTask(const char* value) { m_taskHasBeenSet = true; m_task.assign(value); } /** *

The machine learning task your model package accomplishes. Common machine * learning tasks include object detection and image classification. The following * tasks are supported by Inference Recommender: * "IMAGE_CLASSIFICATION" | "OBJECT_DETECTION" | * "TEXT_GENERATION" |"IMAGE_SEGMENTATION" | * "FILL_MASK" | "CLASSIFICATION" | * "REGRESSION" | "OTHER".

Specify "OTHER" if none * of the tasks listed fit your use case.

*/ inline CreateModelPackageRequest& WithTask(const Aws::String& value) { SetTask(value); return *this;} /** *

The machine learning task your model package accomplishes. Common machine * learning tasks include object detection and image classification. The following * tasks are supported by Inference Recommender: * "IMAGE_CLASSIFICATION" | "OBJECT_DETECTION" | * "TEXT_GENERATION" |"IMAGE_SEGMENTATION" | * "FILL_MASK" | "CLASSIFICATION" | * "REGRESSION" | "OTHER".

Specify "OTHER" if none * of the tasks listed fit your use case.

*/ inline CreateModelPackageRequest& WithTask(Aws::String&& value) { SetTask(std::move(value)); return *this;} /** *

The machine learning task your model package accomplishes. Common machine * learning tasks include object detection and image classification. The following * tasks are supported by Inference Recommender: * "IMAGE_CLASSIFICATION" | "OBJECT_DETECTION" | * "TEXT_GENERATION" |"IMAGE_SEGMENTATION" | * "FILL_MASK" | "CLASSIFICATION" | * "REGRESSION" | "OTHER".

Specify "OTHER" if none * of the tasks listed fit your use case.

*/ inline CreateModelPackageRequest& WithTask(const char* value) { SetTask(value); return *this;} /** *

The Amazon Simple Storage Service (Amazon S3) path where the sample payload * is stored. This path must point to a single gzip compressed tar archive (.tar.gz * suffix). This archive can hold multiple files that are all equally used in the * load test. Each file in the archive must satisfy the size constraints of the InvokeEndpoint * call.

*/ inline const Aws::String& GetSamplePayloadUrl() const{ return m_samplePayloadUrl; } /** *

The Amazon Simple Storage Service (Amazon S3) path where the sample payload * is stored. This path must point to a single gzip compressed tar archive (.tar.gz * suffix). This archive can hold multiple files that are all equally used in the * load test. Each file in the archive must satisfy the size constraints of the InvokeEndpoint * call.

*/ inline bool SamplePayloadUrlHasBeenSet() const { return m_samplePayloadUrlHasBeenSet; } /** *

The Amazon Simple Storage Service (Amazon S3) path where the sample payload * is stored. This path must point to a single gzip compressed tar archive (.tar.gz * suffix). This archive can hold multiple files that are all equally used in the * load test. Each file in the archive must satisfy the size constraints of the InvokeEndpoint * call.

*/ inline void SetSamplePayloadUrl(const Aws::String& value) { m_samplePayloadUrlHasBeenSet = true; m_samplePayloadUrl = value; } /** *

The Amazon Simple Storage Service (Amazon S3) path where the sample payload * is stored. This path must point to a single gzip compressed tar archive (.tar.gz * suffix). This archive can hold multiple files that are all equally used in the * load test. Each file in the archive must satisfy the size constraints of the InvokeEndpoint * call.

*/ inline void SetSamplePayloadUrl(Aws::String&& value) { m_samplePayloadUrlHasBeenSet = true; m_samplePayloadUrl = std::move(value); } /** *

The Amazon Simple Storage Service (Amazon S3) path where the sample payload * is stored. This path must point to a single gzip compressed tar archive (.tar.gz * suffix). This archive can hold multiple files that are all equally used in the * load test. Each file in the archive must satisfy the size constraints of the InvokeEndpoint * call.

*/ inline void SetSamplePayloadUrl(const char* value) { m_samplePayloadUrlHasBeenSet = true; m_samplePayloadUrl.assign(value); } /** *

The Amazon Simple Storage Service (Amazon S3) path where the sample payload * is stored. This path must point to a single gzip compressed tar archive (.tar.gz * suffix). This archive can hold multiple files that are all equally used in the * load test. Each file in the archive must satisfy the size constraints of the InvokeEndpoint * call.

*/ inline CreateModelPackageRequest& WithSamplePayloadUrl(const Aws::String& value) { SetSamplePayloadUrl(value); return *this;} /** *

The Amazon Simple Storage Service (Amazon S3) path where the sample payload * is stored. This path must point to a single gzip compressed tar archive (.tar.gz * suffix). This archive can hold multiple files that are all equally used in the * load test. Each file in the archive must satisfy the size constraints of the InvokeEndpoint * call.

*/ inline CreateModelPackageRequest& WithSamplePayloadUrl(Aws::String&& value) { SetSamplePayloadUrl(std::move(value)); return *this;} /** *

The Amazon Simple Storage Service (Amazon S3) path where the sample payload * is stored. This path must point to a single gzip compressed tar archive (.tar.gz * suffix). This archive can hold multiple files that are all equally used in the * load test. Each file in the archive must satisfy the size constraints of the InvokeEndpoint * call.

*/ inline CreateModelPackageRequest& WithSamplePayloadUrl(const char* value) { SetSamplePayloadUrl(value); return *this;} /** *

An array of additional Inference Specification objects. Each additional * Inference Specification specifies artifacts based on this model package that can * be used on inference endpoints. Generally used with SageMaker Neo to store the * compiled artifacts.

*/ inline const Aws::Vector& GetAdditionalInferenceSpecifications() const{ return m_additionalInferenceSpecifications; } /** *

An array of additional Inference Specification objects. Each additional * Inference Specification specifies artifacts based on this model package that can * be used on inference endpoints. Generally used with SageMaker Neo to store the * compiled artifacts.

*/ inline bool AdditionalInferenceSpecificationsHasBeenSet() const { return m_additionalInferenceSpecificationsHasBeenSet; } /** *

An array of additional Inference Specification objects. Each additional * Inference Specification specifies artifacts based on this model package that can * be used on inference endpoints. Generally used with SageMaker Neo to store the * compiled artifacts.

*/ inline void SetAdditionalInferenceSpecifications(const Aws::Vector& value) { m_additionalInferenceSpecificationsHasBeenSet = true; m_additionalInferenceSpecifications = value; } /** *

An array of additional Inference Specification objects. Each additional * Inference Specification specifies artifacts based on this model package that can * be used on inference endpoints. Generally used with SageMaker Neo to store the * compiled artifacts.

*/ inline void SetAdditionalInferenceSpecifications(Aws::Vector&& value) { m_additionalInferenceSpecificationsHasBeenSet = true; m_additionalInferenceSpecifications = std::move(value); } /** *

An array of additional Inference Specification objects. Each additional * Inference Specification specifies artifacts based on this model package that can * be used on inference endpoints. Generally used with SageMaker Neo to store the * compiled artifacts.

*/ inline CreateModelPackageRequest& WithAdditionalInferenceSpecifications(const Aws::Vector& value) { SetAdditionalInferenceSpecifications(value); return *this;} /** *

An array of additional Inference Specification objects. Each additional * Inference Specification specifies artifacts based on this model package that can * be used on inference endpoints. Generally used with SageMaker Neo to store the * compiled artifacts.

*/ inline CreateModelPackageRequest& WithAdditionalInferenceSpecifications(Aws::Vector&& value) { SetAdditionalInferenceSpecifications(std::move(value)); return *this;} /** *

An array of additional Inference Specification objects. Each additional * Inference Specification specifies artifacts based on this model package that can * be used on inference endpoints. Generally used with SageMaker Neo to store the * compiled artifacts.

*/ inline CreateModelPackageRequest& AddAdditionalInferenceSpecifications(const AdditionalInferenceSpecificationDefinition& value) { m_additionalInferenceSpecificationsHasBeenSet = true; m_additionalInferenceSpecifications.push_back(value); return *this; } /** *

An array of additional Inference Specification objects. Each additional * Inference Specification specifies artifacts based on this model package that can * be used on inference endpoints. Generally used with SageMaker Neo to store the * compiled artifacts.

*/ inline CreateModelPackageRequest& AddAdditionalInferenceSpecifications(AdditionalInferenceSpecificationDefinition&& value) { m_additionalInferenceSpecificationsHasBeenSet = true; m_additionalInferenceSpecifications.push_back(std::move(value)); return *this; } private: Aws::String m_modelPackageName; bool m_modelPackageNameHasBeenSet = false; Aws::String m_modelPackageGroupName; bool m_modelPackageGroupNameHasBeenSet = false; Aws::String m_modelPackageDescription; bool m_modelPackageDescriptionHasBeenSet = false; InferenceSpecification m_inferenceSpecification; bool m_inferenceSpecificationHasBeenSet = false; ModelPackageValidationSpecification m_validationSpecification; bool m_validationSpecificationHasBeenSet = false; SourceAlgorithmSpecification m_sourceAlgorithmSpecification; bool m_sourceAlgorithmSpecificationHasBeenSet = false; bool m_certifyForMarketplace; bool m_certifyForMarketplaceHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; ModelApprovalStatus m_modelApprovalStatus; bool m_modelApprovalStatusHasBeenSet = false; MetadataProperties m_metadataProperties; bool m_metadataPropertiesHasBeenSet = false; ModelMetrics m_modelMetrics; bool m_modelMetricsHasBeenSet = false; Aws::String m_clientToken; bool m_clientTokenHasBeenSet = false; Aws::Map m_customerMetadataProperties; bool m_customerMetadataPropertiesHasBeenSet = false; DriftCheckBaselines m_driftCheckBaselines; bool m_driftCheckBaselinesHasBeenSet = false; Aws::String m_domain; bool m_domainHasBeenSet = false; Aws::String m_task; bool m_taskHasBeenSet = false; Aws::String m_samplePayloadUrl; bool m_samplePayloadUrlHasBeenSet = false; Aws::Vector m_additionalInferenceSpecifications; bool m_additionalInferenceSpecificationsHasBeenSet = false; }; } // namespace Model } // namespace SageMaker } // namespace Aws