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

The configuration for the SHAP * baseline (also called the background or reference dataset) of the Kernal * SHAP algorithm.

  • The number of records in the baseline * data determines the size of the synthetic dataset, which has an impact on * latency of explainability requests. For more information, see the Synthetic * data of Configure * and create an endpoint.

  • ShapBaseline and * ShapBaselineUri are mutually exclusive parameters. One or the * either is required to configure a SHAP baseline.

*

See Also:

AWS * API Reference

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

The MIME type of the baseline data. Choose from 'text/csv' or * 'application/jsonlines'. Defaults to 'text/csv'.

*/ inline const Aws::String& GetMimeType() const{ return m_mimeType; } /** *

The MIME type of the baseline data. Choose from 'text/csv' or * 'application/jsonlines'. Defaults to 'text/csv'.

*/ inline bool MimeTypeHasBeenSet() const { return m_mimeTypeHasBeenSet; } /** *

The MIME type of the baseline data. Choose from 'text/csv' or * 'application/jsonlines'. Defaults to 'text/csv'.

*/ inline void SetMimeType(const Aws::String& value) { m_mimeTypeHasBeenSet = true; m_mimeType = value; } /** *

The MIME type of the baseline data. Choose from 'text/csv' or * 'application/jsonlines'. Defaults to 'text/csv'.

*/ inline void SetMimeType(Aws::String&& value) { m_mimeTypeHasBeenSet = true; m_mimeType = std::move(value); } /** *

The MIME type of the baseline data. Choose from 'text/csv' or * 'application/jsonlines'. Defaults to 'text/csv'.

*/ inline void SetMimeType(const char* value) { m_mimeTypeHasBeenSet = true; m_mimeType.assign(value); } /** *

The MIME type of the baseline data. Choose from 'text/csv' or * 'application/jsonlines'. Defaults to 'text/csv'.

*/ inline ClarifyShapBaselineConfig& WithMimeType(const Aws::String& value) { SetMimeType(value); return *this;} /** *

The MIME type of the baseline data. Choose from 'text/csv' or * 'application/jsonlines'. Defaults to 'text/csv'.

*/ inline ClarifyShapBaselineConfig& WithMimeType(Aws::String&& value) { SetMimeType(std::move(value)); return *this;} /** *

The MIME type of the baseline data. Choose from 'text/csv' or * 'application/jsonlines'. Defaults to 'text/csv'.

*/ inline ClarifyShapBaselineConfig& WithMimeType(const char* value) { SetMimeType(value); return *this;} /** *

The inline SHAP baseline data in string format. ShapBaseline can * have one or multiple records to be used as the baseline dataset. The format of * the SHAP baseline file should be the same format as the training dataset. For * example, if the training dataset is in CSV format and each record contains four * features, and all features are numerical, then the format of the baseline data * should also share these characteristics. For natural language processing (NLP) * of text columns, the baseline value should be the value used to replace the unit * of text specified by the Granularity of the TextConfig * parameter. The size limit for ShapBasline is 4 KB. Use the * ShapBaselineUri parameter if you want to provide more than 4 KB of * baseline data.

*/ inline const Aws::String& GetShapBaseline() const{ return m_shapBaseline; } /** *

The inline SHAP baseline data in string format. ShapBaseline can * have one or multiple records to be used as the baseline dataset. The format of * the SHAP baseline file should be the same format as the training dataset. For * example, if the training dataset is in CSV format and each record contains four * features, and all features are numerical, then the format of the baseline data * should also share these characteristics. For natural language processing (NLP) * of text columns, the baseline value should be the value used to replace the unit * of text specified by the Granularity of the TextConfig * parameter. The size limit for ShapBasline is 4 KB. Use the * ShapBaselineUri parameter if you want to provide more than 4 KB of * baseline data.

*/ inline bool ShapBaselineHasBeenSet() const { return m_shapBaselineHasBeenSet; } /** *

The inline SHAP baseline data in string format. ShapBaseline can * have one or multiple records to be used as the baseline dataset. The format of * the SHAP baseline file should be the same format as the training dataset. For * example, if the training dataset is in CSV format and each record contains four * features, and all features are numerical, then the format of the baseline data * should also share these characteristics. For natural language processing (NLP) * of text columns, the baseline value should be the value used to replace the unit * of text specified by the Granularity of the TextConfig * parameter. The size limit for ShapBasline is 4 KB. Use the * ShapBaselineUri parameter if you want to provide more than 4 KB of * baseline data.

*/ inline void SetShapBaseline(const Aws::String& value) { m_shapBaselineHasBeenSet = true; m_shapBaseline = value; } /** *

The inline SHAP baseline data in string format. ShapBaseline can * have one or multiple records to be used as the baseline dataset. The format of * the SHAP baseline file should be the same format as the training dataset. For * example, if the training dataset is in CSV format and each record contains four * features, and all features are numerical, then the format of the baseline data * should also share these characteristics. For natural language processing (NLP) * of text columns, the baseline value should be the value used to replace the unit * of text specified by the Granularity of the TextConfig * parameter. The size limit for ShapBasline is 4 KB. Use the * ShapBaselineUri parameter if you want to provide more than 4 KB of * baseline data.

*/ inline void SetShapBaseline(Aws::String&& value) { m_shapBaselineHasBeenSet = true; m_shapBaseline = std::move(value); } /** *

The inline SHAP baseline data in string format. ShapBaseline can * have one or multiple records to be used as the baseline dataset. The format of * the SHAP baseline file should be the same format as the training dataset. For * example, if the training dataset is in CSV format and each record contains four * features, and all features are numerical, then the format of the baseline data * should also share these characteristics. For natural language processing (NLP) * of text columns, the baseline value should be the value used to replace the unit * of text specified by the Granularity of the TextConfig * parameter. The size limit for ShapBasline is 4 KB. Use the * ShapBaselineUri parameter if you want to provide more than 4 KB of * baseline data.

*/ inline void SetShapBaseline(const char* value) { m_shapBaselineHasBeenSet = true; m_shapBaseline.assign(value); } /** *

The inline SHAP baseline data in string format. ShapBaseline can * have one or multiple records to be used as the baseline dataset. The format of * the SHAP baseline file should be the same format as the training dataset. For * example, if the training dataset is in CSV format and each record contains four * features, and all features are numerical, then the format of the baseline data * should also share these characteristics. For natural language processing (NLP) * of text columns, the baseline value should be the value used to replace the unit * of text specified by the Granularity of the TextConfig * parameter. The size limit for ShapBasline is 4 KB. Use the * ShapBaselineUri parameter if you want to provide more than 4 KB of * baseline data.

*/ inline ClarifyShapBaselineConfig& WithShapBaseline(const Aws::String& value) { SetShapBaseline(value); return *this;} /** *

The inline SHAP baseline data in string format. ShapBaseline can * have one or multiple records to be used as the baseline dataset. The format of * the SHAP baseline file should be the same format as the training dataset. For * example, if the training dataset is in CSV format and each record contains four * features, and all features are numerical, then the format of the baseline data * should also share these characteristics. For natural language processing (NLP) * of text columns, the baseline value should be the value used to replace the unit * of text specified by the Granularity of the TextConfig * parameter. The size limit for ShapBasline is 4 KB. Use the * ShapBaselineUri parameter if you want to provide more than 4 KB of * baseline data.

*/ inline ClarifyShapBaselineConfig& WithShapBaseline(Aws::String&& value) { SetShapBaseline(std::move(value)); return *this;} /** *

The inline SHAP baseline data in string format. ShapBaseline can * have one or multiple records to be used as the baseline dataset. The format of * the SHAP baseline file should be the same format as the training dataset. For * example, if the training dataset is in CSV format and each record contains four * features, and all features are numerical, then the format of the baseline data * should also share these characteristics. For natural language processing (NLP) * of text columns, the baseline value should be the value used to replace the unit * of text specified by the Granularity of the TextConfig * parameter. The size limit for ShapBasline is 4 KB. Use the * ShapBaselineUri parameter if you want to provide more than 4 KB of * baseline data.

*/ inline ClarifyShapBaselineConfig& WithShapBaseline(const char* value) { SetShapBaseline(value); return *this;} /** *

The uniform resource identifier (URI) of the S3 bucket where the SHAP * baseline file is stored. The format of the SHAP baseline file should be the same * format as the format of the training dataset. For example, if the training * dataset is in CSV format, and each record in the training dataset has four * features, and all features are numerical, then the baseline file should also * have this same format. Each record should contain only the features. If you are * using a virtual private cloud (VPC), the ShapBaselineUri should be * accessible to the VPC. For more information about setting up endpoints with * Amazon Virtual Private Cloud, see Give * SageMaker access to Resources in your Amazon Virtual Private Cloud.

*/ inline const Aws::String& GetShapBaselineUri() const{ return m_shapBaselineUri; } /** *

The uniform resource identifier (URI) of the S3 bucket where the SHAP * baseline file is stored. The format of the SHAP baseline file should be the same * format as the format of the training dataset. For example, if the training * dataset is in CSV format, and each record in the training dataset has four * features, and all features are numerical, then the baseline file should also * have this same format. Each record should contain only the features. If you are * using a virtual private cloud (VPC), the ShapBaselineUri should be * accessible to the VPC. For more information about setting up endpoints with * Amazon Virtual Private Cloud, see Give * SageMaker access to Resources in your Amazon Virtual Private Cloud.

*/ inline bool ShapBaselineUriHasBeenSet() const { return m_shapBaselineUriHasBeenSet; } /** *

The uniform resource identifier (URI) of the S3 bucket where the SHAP * baseline file is stored. The format of the SHAP baseline file should be the same * format as the format of the training dataset. For example, if the training * dataset is in CSV format, and each record in the training dataset has four * features, and all features are numerical, then the baseline file should also * have this same format. Each record should contain only the features. If you are * using a virtual private cloud (VPC), the ShapBaselineUri should be * accessible to the VPC. For more information about setting up endpoints with * Amazon Virtual Private Cloud, see Give * SageMaker access to Resources in your Amazon Virtual Private Cloud.

*/ inline void SetShapBaselineUri(const Aws::String& value) { m_shapBaselineUriHasBeenSet = true; m_shapBaselineUri = value; } /** *

The uniform resource identifier (URI) of the S3 bucket where the SHAP * baseline file is stored. The format of the SHAP baseline file should be the same * format as the format of the training dataset. For example, if the training * dataset is in CSV format, and each record in the training dataset has four * features, and all features are numerical, then the baseline file should also * have this same format. Each record should contain only the features. If you are * using a virtual private cloud (VPC), the ShapBaselineUri should be * accessible to the VPC. For more information about setting up endpoints with * Amazon Virtual Private Cloud, see Give * SageMaker access to Resources in your Amazon Virtual Private Cloud.

*/ inline void SetShapBaselineUri(Aws::String&& value) { m_shapBaselineUriHasBeenSet = true; m_shapBaselineUri = std::move(value); } /** *

The uniform resource identifier (URI) of the S3 bucket where the SHAP * baseline file is stored. The format of the SHAP baseline file should be the same * format as the format of the training dataset. For example, if the training * dataset is in CSV format, and each record in the training dataset has four * features, and all features are numerical, then the baseline file should also * have this same format. Each record should contain only the features. If you are * using a virtual private cloud (VPC), the ShapBaselineUri should be * accessible to the VPC. For more information about setting up endpoints with * Amazon Virtual Private Cloud, see Give * SageMaker access to Resources in your Amazon Virtual Private Cloud.

*/ inline void SetShapBaselineUri(const char* value) { m_shapBaselineUriHasBeenSet = true; m_shapBaselineUri.assign(value); } /** *

The uniform resource identifier (URI) of the S3 bucket where the SHAP * baseline file is stored. The format of the SHAP baseline file should be the same * format as the format of the training dataset. For example, if the training * dataset is in CSV format, and each record in the training dataset has four * features, and all features are numerical, then the baseline file should also * have this same format. Each record should contain only the features. If you are * using a virtual private cloud (VPC), the ShapBaselineUri should be * accessible to the VPC. For more information about setting up endpoints with * Amazon Virtual Private Cloud, see Give * SageMaker access to Resources in your Amazon Virtual Private Cloud.

*/ inline ClarifyShapBaselineConfig& WithShapBaselineUri(const Aws::String& value) { SetShapBaselineUri(value); return *this;} /** *

The uniform resource identifier (URI) of the S3 bucket where the SHAP * baseline file is stored. The format of the SHAP baseline file should be the same * format as the format of the training dataset. For example, if the training * dataset is in CSV format, and each record in the training dataset has four * features, and all features are numerical, then the baseline file should also * have this same format. Each record should contain only the features. If you are * using a virtual private cloud (VPC), the ShapBaselineUri should be * accessible to the VPC. For more information about setting up endpoints with * Amazon Virtual Private Cloud, see Give * SageMaker access to Resources in your Amazon Virtual Private Cloud.

*/ inline ClarifyShapBaselineConfig& WithShapBaselineUri(Aws::String&& value) { SetShapBaselineUri(std::move(value)); return *this;} /** *

The uniform resource identifier (URI) of the S3 bucket where the SHAP * baseline file is stored. The format of the SHAP baseline file should be the same * format as the format of the training dataset. For example, if the training * dataset is in CSV format, and each record in the training dataset has four * features, and all features are numerical, then the baseline file should also * have this same format. Each record should contain only the features. If you are * using a virtual private cloud (VPC), the ShapBaselineUri should be * accessible to the VPC. For more information about setting up endpoints with * Amazon Virtual Private Cloud, see Give * SageMaker access to Resources in your Amazon Virtual Private Cloud.

*/ inline ClarifyShapBaselineConfig& WithShapBaselineUri(const char* value) { SetShapBaselineUri(value); return *this;} private: Aws::String m_mimeType; bool m_mimeTypeHasBeenSet = false; Aws::String m_shapBaseline; bool m_shapBaselineHasBeenSet = false; Aws::String m_shapBaselineUri; bool m_shapBaselineUriHasBeenSet = false; }; } // namespace Model } // namespace SageMaker } // namespace Aws