

This is the new *CloudFormation Template Reference Guide*. Please update your bookmarks and links. For help getting started with CloudFormation, see the [AWS CloudFormation User Guide](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html).

# AWS::SageMaker::EndpointConfig
<a name="aws-resource-sagemaker-endpointconfig"></a>

The `AWS::SageMaker::EndpointConfig` resource creates a configuration for an Amazon SageMaker endpoint. For more information, see [CreateEndpointConfig](https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateEndpointConfig.html) in the *SageMaker Developer Guide*.

## Syntax
<a name="aws-resource-sagemaker-endpointconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-sagemaker-endpointconfig-syntax.json"></a>

```
{
  "Type" : "AWS::SageMaker::EndpointConfig",
  "Properties" : {
      "[AsyncInferenceConfig](#cfn-sagemaker-endpointconfig-asyncinferenceconfig)" : AsyncInferenceConfig,
      "[DataCaptureConfig](#cfn-sagemaker-endpointconfig-datacaptureconfig)" : DataCaptureConfig,
      "[EndpointConfigName](#cfn-sagemaker-endpointconfig-endpointconfigname)" : String,
      "[ExplainerConfig](#cfn-sagemaker-endpointconfig-explainerconfig)" : ExplainerConfig,
      "[KmsKeyId](#cfn-sagemaker-endpointconfig-kmskeyid)" : String,
      "[ProductionVariants](#cfn-sagemaker-endpointconfig-productionvariants)" : [ ProductionVariant, ... ],
      "[ShadowProductionVariants](#cfn-sagemaker-endpointconfig-shadowproductionvariants)" : [ ProductionVariant, ... ],
      "[Tags](#cfn-sagemaker-endpointconfig-tags)" : [ Tag, ... ]
    }
}
```

### YAML
<a name="aws-resource-sagemaker-endpointconfig-syntax.yaml"></a>

```
Type: AWS::SageMaker::EndpointConfig
Properties:
  [AsyncInferenceConfig](#cfn-sagemaker-endpointconfig-asyncinferenceconfig): 
    AsyncInferenceConfig
  [DataCaptureConfig](#cfn-sagemaker-endpointconfig-datacaptureconfig): 
    DataCaptureConfig
  [EndpointConfigName](#cfn-sagemaker-endpointconfig-endpointconfigname): String
  [ExplainerConfig](#cfn-sagemaker-endpointconfig-explainerconfig): 
    ExplainerConfig
  [KmsKeyId](#cfn-sagemaker-endpointconfig-kmskeyid): String
  [ProductionVariants](#cfn-sagemaker-endpointconfig-productionvariants): 
    - ProductionVariant
  [ShadowProductionVariants](#cfn-sagemaker-endpointconfig-shadowproductionvariants): 
    - ProductionVariant
  [Tags](#cfn-sagemaker-endpointconfig-tags): 
    - Tag
```

## Properties
<a name="aws-resource-sagemaker-endpointconfig-properties"></a>

`AsyncInferenceConfig`  <a name="cfn-sagemaker-endpointconfig-asyncinferenceconfig"></a>
Specifies configuration for how an endpoint performs asynchronous inference.  
*Required*: No  
*Type*: [AsyncInferenceConfig](aws-properties-sagemaker-endpointconfig-asyncinferenceconfig.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`DataCaptureConfig`  <a name="cfn-sagemaker-endpointconfig-datacaptureconfig"></a>
Specifies how to capture endpoint data for model monitor. The data capture configuration applies to all production variants hosted at the endpoint.  
*Required*: No  
*Type*: [DataCaptureConfig](aws-properties-sagemaker-endpointconfig-datacaptureconfig.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`EndpointConfigName`  <a name="cfn-sagemaker-endpointconfig-endpointconfigname"></a>
The name of the endpoint configuration.  
*Required*: No  
*Type*: String  
*Pattern*: `[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}`  
*Minimum*: `0`  
*Maximum*: `63`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ExplainerConfig`  <a name="cfn-sagemaker-endpointconfig-explainerconfig"></a>
A parameter to activate explainers.  
*Required*: No  
*Type*: [ExplainerConfig](aws-properties-sagemaker-endpointconfig-explainerconfig.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`KmsKeyId`  <a name="cfn-sagemaker-endpointconfig-kmskeyid"></a>
The Amazon Resource Name (ARN) of an AWS Key Management Service key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the endpoint.  
+ Key ID: `1234abcd-12ab-34cd-56ef-1234567890ab`
+ Key ARN: `arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`
+ Alias name: `alias/ExampleAlias`
+ Alias name ARN: `arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias`
The KMS key policy must grant permission to the IAM role that you specify in your `CreateEndpoint`, `UpdateEndpoint` requests. For more information, refer to the AWS Key Management Service section [Using Key Policies in AWS KMS ](https://docs.aws.amazon.com//kms/latest/developerguide/key-policies.html)  
Certain Nitro-based instances include local storage, dependent on the instance type. Local storage volumes are encrypted using a hardware module on the instance. You can't request a `KmsKeyId` when using an instance type with local storage. If any of the models that you specify in the `ProductionVariants` parameter use nitro-based instances with local storage, do not specify a value for the `KmsKeyId` parameter. If you specify a value for `KmsKeyId` when using any nitro-based instances with local storage, the call to `CreateEndpointConfig` fails.  
For a list of instance types that support local instance storage, see [Instance Store Volumes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html#instance-store-volumes).  
For more information about local instance storage encryption, see [SSD Instance Store Volumes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ssd-instance-store.html).
*Required*: No  
*Type*: String  
*Pattern*: `[a-zA-Z0-9:/_-]*`  
*Minimum*: `0`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ProductionVariants`  <a name="cfn-sagemaker-endpointconfig-productionvariants"></a>
A list of `ProductionVariant` objects, one for each model that you want to host at this endpoint.  
*Required*: Yes  
*Type*: Array of [ProductionVariant](aws-properties-sagemaker-endpointconfig-productionvariant.md)  
*Minimum*: `1`  
*Maximum*: `10`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ShadowProductionVariants`  <a name="cfn-sagemaker-endpointconfig-shadowproductionvariants"></a>
Array of `ProductionVariant` objects. There is one for each model that you want to host at this endpoint in shadow mode with production traffic replicated from the model specified on `ProductionVariants`. If you use this field, you can only specify one variant for `ProductionVariants` and one variant for `ShadowProductionVariants`.  
*Required*: No  
*Type*: Array of [ProductionVariant](aws-properties-sagemaker-endpointconfig-productionvariant.md)  
*Minimum*: `1`  
*Maximum*: `10`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Tags`  <a name="cfn-sagemaker-endpointconfig-tags"></a>
A list of key-value pairs to apply to this resource.  
For more information, see [Resource Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) and [Using Cost Allocation Tags](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what).  
*Required*: No  
*Type*: Array of [Tag](aws-properties-sagemaker-endpointconfig-tag.md)  
*Minimum*: `0`  
*Maximum*: `50`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-sagemaker-endpointconfig-return-values"></a>

### Ref
<a name="aws-resource-sagemaker-endpointconfig-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the Amazon Resource Name (ARN) of the endpoint configuration, such as `arn:aws:sagemaker:us-west-2:01234567>8901:endpoint-config/myendpointconfig`

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-sagemaker-endpointconfig-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-sagemaker-endpointconfig-return-values-fn--getatt-fn--getatt"></a>

`EndpointConfigName`  <a name="EndpointConfigName-fn::getatt"></a>
The name of the endpoint configuration, such as `MyEndpointConfiguration`.

## Examples
<a name="aws-resource-sagemaker-endpointconfig--examples"></a>

### SageMaker EndpointConfig Example
<a name="aws-resource-sagemaker-endpointconfig--examples--SageMaker_EndpointConfig_Example"></a>

The following example creates an endpoint configuration from a trained model, and then creates an endpoint.

#### JSON
<a name="aws-resource-sagemaker-endpointconfig--examples--SageMaker_EndpointConfig_Example--json"></a>

```
{
  "Description": "Basic Hosting entities test.  We need models to create endpoint configs.",
  "Mappings": {
    "RegionMap": {
      "us-west-2": {
        "NullTransformer": "12345678901.dkr.ecr.us-west-2.amazonaws.com/mymodel:latest"
      },
      "us-east-2": {
        "NullTransformer": "12345678901.dkr.ecr.us-east-2.amazonaws.com/mymodel:latest"
      },
      "us-east-1": {
        "NullTransformer": "12345678901.dkr.ecr.us-east-1.amazonaws.com/mymodel:latest"
      },
      "eu-west-1": {
        "NullTransformer": "12345678901.dkr.ecr.eu-west-1.amazonaws.com/mymodel:latest"
      },
      "ap-northeast-1": {
        "NullTransformer": "12345678901.dkr.ecr.ap-northeast-1.amazonaws.com/mymodel:latest"
      },
      "ap-northeast-2": {
        "NullTransformer": "12345678901.dkr.ecr.ap-northeast-2.amazonaws.com/mymodel:latest"
      },
      "ap-southeast-2": {
        "NullTransformer": "12345678901.dkr.ecr.ap-southeast-2.amazonaws.com/mymodel:latest"
      },
      "eu-central-1": {
        "NullTransformer": "12345678901.dkr.ecr.eu-central-1.amazonaws.com/mymodel:latest"
      }
    }
  },
  "Resources": {
    "Endpoint": {
      "Type": "AWS::SageMaker::Endpoint",
      "Properties": {
        "EndpointConfigName": { "Fn::GetAtt" : ["EndpointConfig", "EndpointConfigName" ] }
      }
    },
    "EndpointConfig": {
      "Type": "AWS::SageMaker::EndpointConfig",
      "Properties": {
        "ProductionVariants": [
          {
            "InitialInstanceCount": 1,
            "InitialVariantWeight": 1,
            "InstanceType": "ml.t2.large",
            "ModelName": { "Fn::GetAtt" : ["Model", "ModelName" ] },
            "VariantName": { "Fn::GetAtt" : ["Model", "ModelName" ] }
          }
        ]
      }
    },
    "Model": {
      "Type": "AWS::SageMaker::Model",
      "Properties": {
        "PrimaryContainer": {
          "Image": { "Fn::FindInMap" : [ "AWS::Region", "NullTransformer"] }
        },
        "ExecutionRoleArn": { "Fn::GetAtt" : [ "ExecutionRole", "Arn" ] }
      }
    },
    "ExecutionRole": {
      "Type": "AWS::IAM::Role",
      "Properties": {
        "AssumeRolePolicyDocument": {
          "Version": "2012-10-17"		 	 	 ,
          "Statement": [
            {
              "Effect": "Allow",
              "Principal": {
                "Service": [
                  "sagemaker.amazonaws.com"
                ]
              },
              "Action": [
                "sts:AssumeRole"
              ]
            }
          ]
        },
        "Path": "/",
        "Policies": [
          {
            "PolicyName": "root",
            "PolicyDocument": {
              "Version": "2012-10-17"		 	 	 ,
              "Statement": [
                {
                  "Effect": "Allow",
                  "Action": "*",
                  "Resource": "*"
                }
              ]
            }
          }
        ]
      }
    }
  },
  "Outputs": {
    "EndpointId": {
      "Value": { "Ref" : "Endpoint" }
    },
    "EndpointName": {
      "Value": { "Fn::GetAtt" : [ "Endpoint", "EndpointName" ] }
    }
    
  }
  
}
```

#### YAML
<a name="aws-resource-sagemaker-endpointconfig--examples--SageMaker_EndpointConfig_Example--yaml"></a>

```
Description: "Basic Hosting entities test.  We need models to create endpoint configs."
Mappings: 
  RegionMap: 
    "us-west-2":
      "NullTransformer": "123456789012.dkr.ecr.us-west-2.amazonaws.com/mymodel:latest"
    "us-east-2":
      "NullTransformer": "123456789012.dkr.ecr.us-east-2.amazonaws.com/mymodel:latest"
    "us-east-1":
      "NullTransformer": "123456789012.dkr.ecr.us-east-1.amazonaws.com/mymodel:latest"
    "eu-west-1":
      "NullTransformer": "123456789012.dkr.ecr.eu-west-1.amazonaws.com/mymodel:latest"
    "ap-northeast-1":
      "NullTransformer": "123456789012.dkr.ecr.ap-northeast-1.amazonaws.com/mymodel:latest"
    "ap-northeast-2":
      "NullTransformer": "123456789012.dkr.ecr.ap-northeast-2.amazonaws.com/mymodel:latest"
    "ap-southeast-2":
      "NullTransformer": "123456789012.dkr.ecr.ap-southeast-2.amazonaws.com/mymodel:latest"
    "eu-central-1":
      "NullTransformer": "123456789012.dkr.ecr.eu-central-1.amazonaws.com/mymodel:latest"
Resources:
  Endpoint:
    Type: "AWS::SageMaker::Endpoint"
    Properties:
      EndpointConfigName:
        !GetAtt EndpointConfig.EndpointConfigName
  EndpointConfig:
    Type: "AWS::SageMaker::EndpointConfig"
    Properties:
      ProductionVariants:
        - InitialInstanceCount: 1
          InitialVariantWeight: 1.0
          InstanceType: ml.t2.large
          ModelName: !GetAtt Model.ModelName
          VariantName: !GetAtt Model.ModelName
  Model:
    Type: "AWS::SageMaker::Model"
    Properties:
      PrimaryContainer:
        Image: !FindInMap [RegionMap, !Ref "AWS::Region", "NullTransformer"]
      ExecutionRoleArn: !GetAtt ExecutionRole.Arn

  ExecutionRole: 
    Type: "AWS::IAM::Role"
    Properties: 
      AssumeRolePolicyDocument: 
        Version: "2012-10-17"
        Statement: 
          - 
            Effect: "Allow"
            Principal: 
              Service: 
                - "sagemaker.amazonaws.com"
            Action: 
              - "sts:AssumeRole"
      Path: "/"
      Policies: 
        - 
          PolicyName: "root"
          PolicyDocument: 
            Version: "2012-10-17"
            Statement: 
              - 
                Effect: "Allow"
                Action: "*"
                Resource: "*"
Outputs:
  EndpointId:
    Value: !Ref Endpoint
  EndpointName:
    Value: !GetAtt Endpoint.EndpointName
```

# AWS::SageMaker::EndpointConfig AsyncInferenceClientConfig
<a name="aws-properties-sagemaker-endpointconfig-asyncinferenceclientconfig"></a>

Configures the behavior of the client used by SageMaker to interact with the model container during asynchronous inference.

## Syntax
<a name="aws-properties-sagemaker-endpointconfig-asyncinferenceclientconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-endpointconfig-asyncinferenceclientconfig-syntax.json"></a>

```
{
  "[MaxConcurrentInvocationsPerInstance](#cfn-sagemaker-endpointconfig-asyncinferenceclientconfig-maxconcurrentinvocationsperinstance)" : Integer
}
```

### YAML
<a name="aws-properties-sagemaker-endpointconfig-asyncinferenceclientconfig-syntax.yaml"></a>

```
  [MaxConcurrentInvocationsPerInstance](#cfn-sagemaker-endpointconfig-asyncinferenceclientconfig-maxconcurrentinvocationsperinstance): Integer
```

## Properties
<a name="aws-properties-sagemaker-endpointconfig-asyncinferenceclientconfig-properties"></a>

`MaxConcurrentInvocationsPerInstance`  <a name="cfn-sagemaker-endpointconfig-asyncinferenceclientconfig-maxconcurrentinvocationsperinstance"></a>
The maximum number of concurrent requests sent by the SageMaker client to the model container. If no value is provided, SageMaker will choose an optimal value for you.  
*Required*: No  
*Type*: Integer  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::EndpointConfig AsyncInferenceConfig
<a name="aws-properties-sagemaker-endpointconfig-asyncinferenceconfig"></a>

Specifies configuration for how an endpoint performs asynchronous inference.

## Syntax
<a name="aws-properties-sagemaker-endpointconfig-asyncinferenceconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-endpointconfig-asyncinferenceconfig-syntax.json"></a>

```
{
  "[ClientConfig](#cfn-sagemaker-endpointconfig-asyncinferenceconfig-clientconfig)" : AsyncInferenceClientConfig,
  "[OutputConfig](#cfn-sagemaker-endpointconfig-asyncinferenceconfig-outputconfig)" : AsyncInferenceOutputConfig
}
```

### YAML
<a name="aws-properties-sagemaker-endpointconfig-asyncinferenceconfig-syntax.yaml"></a>

```
  [ClientConfig](#cfn-sagemaker-endpointconfig-asyncinferenceconfig-clientconfig): 
    AsyncInferenceClientConfig
  [OutputConfig](#cfn-sagemaker-endpointconfig-asyncinferenceconfig-outputconfig): 
    AsyncInferenceOutputConfig
```

## Properties
<a name="aws-properties-sagemaker-endpointconfig-asyncinferenceconfig-properties"></a>

`ClientConfig`  <a name="cfn-sagemaker-endpointconfig-asyncinferenceconfig-clientconfig"></a>
Configures the behavior of the client used by SageMaker to interact with the model container during asynchronous inference.  
*Required*: No  
*Type*: [AsyncInferenceClientConfig](aws-properties-sagemaker-endpointconfig-asyncinferenceclientconfig.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`OutputConfig`  <a name="cfn-sagemaker-endpointconfig-asyncinferenceconfig-outputconfig"></a>
Specifies the configuration for asynchronous inference invocation outputs.  
*Required*: Yes  
*Type*: [AsyncInferenceOutputConfig](aws-properties-sagemaker-endpointconfig-asyncinferenceoutputconfig.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::EndpointConfig AsyncInferenceNotificationConfig
<a name="aws-properties-sagemaker-endpointconfig-asyncinferencenotificationconfig"></a>

Specifies the configuration for notifications of inference results for asynchronous inference.

## Syntax
<a name="aws-properties-sagemaker-endpointconfig-asyncinferencenotificationconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-endpointconfig-asyncinferencenotificationconfig-syntax.json"></a>

```
{
  "[ErrorTopic](#cfn-sagemaker-endpointconfig-asyncinferencenotificationconfig-errortopic)" : String,
  "[IncludeInferenceResponseIn](#cfn-sagemaker-endpointconfig-asyncinferencenotificationconfig-includeinferenceresponsein)" : [ String, ... ],
  "[SuccessTopic](#cfn-sagemaker-endpointconfig-asyncinferencenotificationconfig-successtopic)" : String
}
```

### YAML
<a name="aws-properties-sagemaker-endpointconfig-asyncinferencenotificationconfig-syntax.yaml"></a>

```
  [ErrorTopic](#cfn-sagemaker-endpointconfig-asyncinferencenotificationconfig-errortopic): String
  [IncludeInferenceResponseIn](#cfn-sagemaker-endpointconfig-asyncinferencenotificationconfig-includeinferenceresponsein): 
    - String
  [SuccessTopic](#cfn-sagemaker-endpointconfig-asyncinferencenotificationconfig-successtopic): String
```

## Properties
<a name="aws-properties-sagemaker-endpointconfig-asyncinferencenotificationconfig-properties"></a>

`ErrorTopic`  <a name="cfn-sagemaker-endpointconfig-asyncinferencenotificationconfig-errortopic"></a>
Amazon SNS topic to post a notification to when an inference fails. If no topic is provided, no notification is sent on failure.  
*Required*: No  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`IncludeInferenceResponseIn`  <a name="cfn-sagemaker-endpointconfig-asyncinferencenotificationconfig-includeinferenceresponsein"></a>
The Amazon SNS topics where you want the inference response to be included.  
The inference response is included only if the response size is less than or equal to 128 KB.
*Required*: No  
*Type*: Array of String  
*Minimum*: `0`  
*Maximum*: `2`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`SuccessTopic`  <a name="cfn-sagemaker-endpointconfig-asyncinferencenotificationconfig-successtopic"></a>
Amazon SNS topic to post a notification to when an inference completes successfully. If no topic is provided, no notification is sent on success.  
*Required*: No  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::EndpointConfig AsyncInferenceOutputConfig
<a name="aws-properties-sagemaker-endpointconfig-asyncinferenceoutputconfig"></a>

Specifies the configuration for asynchronous inference invocation outputs.

## Syntax
<a name="aws-properties-sagemaker-endpointconfig-asyncinferenceoutputconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-endpointconfig-asyncinferenceoutputconfig-syntax.json"></a>

```
{
  "[KmsKeyId](#cfn-sagemaker-endpointconfig-asyncinferenceoutputconfig-kmskeyid)" : String,
  "[NotificationConfig](#cfn-sagemaker-endpointconfig-asyncinferenceoutputconfig-notificationconfig)" : AsyncInferenceNotificationConfig,
  "[S3FailurePath](#cfn-sagemaker-endpointconfig-asyncinferenceoutputconfig-s3failurepath)" : String,
  "[S3OutputPath](#cfn-sagemaker-endpointconfig-asyncinferenceoutputconfig-s3outputpath)" : String
}
```

### YAML
<a name="aws-properties-sagemaker-endpointconfig-asyncinferenceoutputconfig-syntax.yaml"></a>

```
  [KmsKeyId](#cfn-sagemaker-endpointconfig-asyncinferenceoutputconfig-kmskeyid): String
  [NotificationConfig](#cfn-sagemaker-endpointconfig-asyncinferenceoutputconfig-notificationconfig): 
    AsyncInferenceNotificationConfig
  [S3FailurePath](#cfn-sagemaker-endpointconfig-asyncinferenceoutputconfig-s3failurepath): String
  [S3OutputPath](#cfn-sagemaker-endpointconfig-asyncinferenceoutputconfig-s3outputpath): String
```

## Properties
<a name="aws-properties-sagemaker-endpointconfig-asyncinferenceoutputconfig-properties"></a>

`KmsKeyId`  <a name="cfn-sagemaker-endpointconfig-asyncinferenceoutputconfig-kmskeyid"></a>
The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to encrypt the asynchronous inference output in Amazon S3.  
*Required*: No  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`NotificationConfig`  <a name="cfn-sagemaker-endpointconfig-asyncinferenceoutputconfig-notificationconfig"></a>
Specifies the configuration for notifications of inference results for asynchronous inference.  
*Required*: No  
*Type*: [AsyncInferenceNotificationConfig](aws-properties-sagemaker-endpointconfig-asyncinferencenotificationconfig.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`S3FailurePath`  <a name="cfn-sagemaker-endpointconfig-asyncinferenceoutputconfig-s3failurepath"></a>
The Amazon S3 location to upload failure inference responses to.  
*Required*: No  
*Type*: String  
*Pattern*: `(https|s3)://([^/])/?(.*)`  
*Minimum*: `0`  
*Maximum*: `512`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`S3OutputPath`  <a name="cfn-sagemaker-endpointconfig-asyncinferenceoutputconfig-s3outputpath"></a>
The Amazon S3 location to upload inference responses to.  
*Required*: No  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::EndpointConfig CaptureContentTypeHeader
<a name="aws-properties-sagemaker-endpointconfig-capturecontenttypeheader"></a>

Specifies the JSON and CSV content types of the data that the endpoint captures.

## Syntax
<a name="aws-properties-sagemaker-endpointconfig-capturecontenttypeheader-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-endpointconfig-capturecontenttypeheader-syntax.json"></a>

```
{
  "[CsvContentTypes](#cfn-sagemaker-endpointconfig-capturecontenttypeheader-csvcontenttypes)" : [ String, ... ],
  "[JsonContentTypes](#cfn-sagemaker-endpointconfig-capturecontenttypeheader-jsoncontenttypes)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-sagemaker-endpointconfig-capturecontenttypeheader-syntax.yaml"></a>

```
  [CsvContentTypes](#cfn-sagemaker-endpointconfig-capturecontenttypeheader-csvcontenttypes): 
    - String
  [JsonContentTypes](#cfn-sagemaker-endpointconfig-capturecontenttypeheader-jsoncontenttypes): 
    - String
```

## Properties
<a name="aws-properties-sagemaker-endpointconfig-capturecontenttypeheader-properties"></a>

`CsvContentTypes`  <a name="cfn-sagemaker-endpointconfig-capturecontenttypeheader-csvcontenttypes"></a>
A list of the CSV content types of the data that the endpoint captures. For the endpoint to capture the data, you must also specify the content type when you invoke the endpoint.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `10`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`JsonContentTypes`  <a name="cfn-sagemaker-endpointconfig-capturecontenttypeheader-jsoncontenttypes"></a>
A list of the JSON content types of the data that the endpoint captures. For the endpoint to capture the data, you must also specify the content type when you invoke the endpoint.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `10`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::EndpointConfig CaptureOption
<a name="aws-properties-sagemaker-endpointconfig-captureoption"></a>

Specifies whether the endpoint captures input data or output data.

## Syntax
<a name="aws-properties-sagemaker-endpointconfig-captureoption-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-endpointconfig-captureoption-syntax.json"></a>

```
{
  "[CaptureMode](#cfn-sagemaker-endpointconfig-captureoption-capturemode)" : String
}
```

### YAML
<a name="aws-properties-sagemaker-endpointconfig-captureoption-syntax.yaml"></a>

```
  [CaptureMode](#cfn-sagemaker-endpointconfig-captureoption-capturemode): String
```

## Properties
<a name="aws-properties-sagemaker-endpointconfig-captureoption-properties"></a>

`CaptureMode`  <a name="cfn-sagemaker-endpointconfig-captureoption-capturemode"></a>
Specifies whether the endpoint captures input data or output data.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `Input | Output | InputAndOutput`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::EndpointConfig ClarifyExplainerConfig
<a name="aws-properties-sagemaker-endpointconfig-clarifyexplainerconfig"></a>

The configuration parameters for the SageMaker Clarify explainer.

## Syntax
<a name="aws-properties-sagemaker-endpointconfig-clarifyexplainerconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-endpointconfig-clarifyexplainerconfig-syntax.json"></a>

```
{
  "[EnableExplanations](#cfn-sagemaker-endpointconfig-clarifyexplainerconfig-enableexplanations)" : String,
  "[InferenceConfig](#cfn-sagemaker-endpointconfig-clarifyexplainerconfig-inferenceconfig)" : ClarifyInferenceConfig,
  "[ShapConfig](#cfn-sagemaker-endpointconfig-clarifyexplainerconfig-shapconfig)" : ClarifyShapConfig
}
```

### YAML
<a name="aws-properties-sagemaker-endpointconfig-clarifyexplainerconfig-syntax.yaml"></a>

```
  [EnableExplanations](#cfn-sagemaker-endpointconfig-clarifyexplainerconfig-enableexplanations): String
  [InferenceConfig](#cfn-sagemaker-endpointconfig-clarifyexplainerconfig-inferenceconfig): 
    ClarifyInferenceConfig
  [ShapConfig](#cfn-sagemaker-endpointconfig-clarifyexplainerconfig-shapconfig): 
    ClarifyShapConfig
```

## Properties
<a name="aws-properties-sagemaker-endpointconfig-clarifyexplainerconfig-properties"></a>

`EnableExplanations`  <a name="cfn-sagemaker-endpointconfig-clarifyexplainerconfig-enableexplanations"></a>
A JMESPath boolean expression used to filter which records to explain. Explanations are activated by default. See [https://docs.aws.amazon.com/sagemaker/latest/dg/clarify-online-explainability-create-endpoint.html#clarify-online-explainability-create-endpoint-enable](https://docs.aws.amazon.com/sagemaker/latest/dg/clarify-online-explainability-create-endpoint.html#clarify-online-explainability-create-endpoint-enable)for additional information.  
*Required*: No  
*Type*: String  
*Pattern*: `.*`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`InferenceConfig`  <a name="cfn-sagemaker-endpointconfig-clarifyexplainerconfig-inferenceconfig"></a>
The inference configuration parameter for the model container.  
*Required*: No  
*Type*: [ClarifyInferenceConfig](aws-properties-sagemaker-endpointconfig-clarifyinferenceconfig.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ShapConfig`  <a name="cfn-sagemaker-endpointconfig-clarifyexplainerconfig-shapconfig"></a>
The configuration for SHAP analysis.  
*Required*: Yes  
*Type*: [ClarifyShapConfig](aws-properties-sagemaker-endpointconfig-clarifyshapconfig.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::EndpointConfig ClarifyInferenceConfig
<a name="aws-properties-sagemaker-endpointconfig-clarifyinferenceconfig"></a>

The inference configuration parameter for the model container.

## Syntax
<a name="aws-properties-sagemaker-endpointconfig-clarifyinferenceconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-endpointconfig-clarifyinferenceconfig-syntax.json"></a>

```
{
  "[ContentTemplate](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-contenttemplate)" : String,
  "[FeatureHeaders](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-featureheaders)" : [ String, ... ],
  "[FeaturesAttribute](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-featuresattribute)" : String,
  "[FeatureTypes](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-featuretypes)" : [ String, ... ],
  "[LabelAttribute](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-labelattribute)" : String,
  "[LabelHeaders](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-labelheaders)" : [ String, ... ],
  "[LabelIndex](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-labelindex)" : Integer,
  "[MaxPayloadInMB](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-maxpayloadinmb)" : Integer,
  "[MaxRecordCount](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-maxrecordcount)" : Integer,
  "[ProbabilityAttribute](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-probabilityattribute)" : String,
  "[ProbabilityIndex](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-probabilityindex)" : Integer
}
```

### YAML
<a name="aws-properties-sagemaker-endpointconfig-clarifyinferenceconfig-syntax.yaml"></a>

```
  [ContentTemplate](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-contenttemplate): String
  [FeatureHeaders](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-featureheaders): 
    - String
  [FeaturesAttribute](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-featuresattribute): String
  [FeatureTypes](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-featuretypes): 
    - String
  [LabelAttribute](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-labelattribute): String
  [LabelHeaders](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-labelheaders): 
    - String
  [LabelIndex](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-labelindex): Integer
  [MaxPayloadInMB](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-maxpayloadinmb): Integer
  [MaxRecordCount](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-maxrecordcount): Integer
  [ProbabilityAttribute](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-probabilityattribute): String
  [ProbabilityIndex](#cfn-sagemaker-endpointconfig-clarifyinferenceconfig-probabilityindex): Integer
```

## Properties
<a name="aws-properties-sagemaker-endpointconfig-clarifyinferenceconfig-properties"></a>

`ContentTemplate`  <a name="cfn-sagemaker-endpointconfig-clarifyinferenceconfig-contenttemplate"></a>
A template string used to format a JSON record into an acceptable model container input. For example, a `ContentTemplate` string `'{"myfeatures":$features}'` will format a list of features `[1,2,3]` into the record string `'{"myfeatures":[1,2,3]}'`. Required only when the model container input is in JSON Lines format.  
*Required*: No  
*Type*: String  
*Pattern*: `.*`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`FeatureHeaders`  <a name="cfn-sagemaker-endpointconfig-clarifyinferenceconfig-featureheaders"></a>
The names of the features. If provided, these are included in the endpoint response payload to help readability of the `InvokeEndpoint` output. See the [Response](https://docs.aws.amazon.com/sagemaker/latest/dg/clarify-online-explainability-invoke-endpoint.html#clarify-online-explainability-response) section under **Invoke the endpoint** in the Developer Guide for more information.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`FeaturesAttribute`  <a name="cfn-sagemaker-endpointconfig-clarifyinferenceconfig-featuresattribute"></a>
Provides the JMESPath expression to extract the features from a model container input in JSON Lines format. For example, if `FeaturesAttribute` is the JMESPath expression `'myfeatures'`, it extracts a list of features `[1,2,3]` from request data `'{"myfeatures":[1,2,3]}'`.  
*Required*: No  
*Type*: String  
*Pattern*: `.*`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`FeatureTypes`  <a name="cfn-sagemaker-endpointconfig-clarifyinferenceconfig-featuretypes"></a>
A list of data types of the features (optional). Applicable only to NLP explainability. If provided, `FeatureTypes` must have at least one `'text'` string (for example, `['text']`). If `FeatureTypes` is not provided, the explainer infers the feature types based on the baseline data. The feature types are included in the endpoint response payload. For additional information see the [response](https://docs.aws.amazon.com/sagemaker/latest/dg/clarify-online-explainability-invoke-endpoint.html#clarify-online-explainability-response) section under **Invoke the endpoint** in the Developer Guide for more information.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`LabelAttribute`  <a name="cfn-sagemaker-endpointconfig-clarifyinferenceconfig-labelattribute"></a>
A JMESPath expression used to locate the list of label headers in the model container output.  
**Example**: If the model container output of a batch request is `'{"labels":["cat","dog","fish"],"probability":[0.6,0.3,0.1]}'`, then set `LabelAttribute` to `'labels'` to extract the list of label headers `["cat","dog","fish"]`  
*Required*: No  
*Type*: String  
*Pattern*: `.*`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`LabelHeaders`  <a name="cfn-sagemaker-endpointconfig-clarifyinferenceconfig-labelheaders"></a>
For multiclass classification problems, the label headers are the names of the classes. Otherwise, the label header is the name of the predicted label. These are used to help readability for the output of the `InvokeEndpoint` API. See the [response](https://docs.aws.amazon.com/sagemaker/latest/dg/clarify-online-explainability-invoke-endpoint.html#clarify-online-explainability-response) section under **Invoke the endpoint** in the Developer Guide for more information. If there are no label headers in the model container output, provide them manually using this parameter.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `16`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`LabelIndex`  <a name="cfn-sagemaker-endpointconfig-clarifyinferenceconfig-labelindex"></a>
A zero-based index used to extract a label header or list of label headers from model container output in CSV format.  
**Example for a multiclass model:** If the model container output consists of label headers followed by probabilities: `'"[\'cat\',\'dog\',\'fish\']","[0.1,0.6,0.3]"'`, set `LabelIndex` to `0` to select the label headers `['cat','dog','fish']`.  
*Required*: No  
*Type*: Integer  
*Minimum*: `0`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`MaxPayloadInMB`  <a name="cfn-sagemaker-endpointconfig-clarifyinferenceconfig-maxpayloadinmb"></a>
The maximum payload size (MB) allowed of a request from the explainer to the model container. Defaults to `6` MB.  
*Required*: No  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `25`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`MaxRecordCount`  <a name="cfn-sagemaker-endpointconfig-clarifyinferenceconfig-maxrecordcount"></a>
The maximum number of records in a request that the model container can process when querying the model container for the predictions of a [synthetic dataset](https://docs.aws.amazon.com/sagemaker/latest/dg/clarify-online-explainability-create-endpoint.html#clarify-online-explainability-create-endpoint-synthetic). A record is a unit of input data that inference can be made on, for example, a single line in CSV data. If `MaxRecordCount` is `1`, the model container expects one record per request. A value of 2 or greater means that the model expects batch requests, which can reduce overhead and speed up the inferencing process. If this parameter is not provided, the explainer will tune the record count per request according to the model container's capacity at runtime.  
*Required*: No  
*Type*: Integer  
*Minimum*: `1`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ProbabilityAttribute`  <a name="cfn-sagemaker-endpointconfig-clarifyinferenceconfig-probabilityattribute"></a>
A JMESPath expression used to extract the probability (or score) from the model container output if the model container is in JSON Lines format.  
**Example**: If the model container output of a single request is `'{"predicted_label":1,"probability":0.6}'`, then set `ProbabilityAttribute` to `'probability'`.  
*Required*: No  
*Type*: String  
*Pattern*: `.*`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ProbabilityIndex`  <a name="cfn-sagemaker-endpointconfig-clarifyinferenceconfig-probabilityindex"></a>
A zero-based index used to extract a probability value (score) or list from model container output in CSV format. If this value is not provided, the entire model container output will be treated as a probability value (score) or list.  
**Example for a single class model:** If the model container output consists of a string-formatted prediction label followed by its probability: `'1,0.6'`, set `ProbabilityIndex` to `1` to select the probability value `0.6`.  
**Example for a multiclass model:** If the model container output consists of a string-formatted prediction label followed by its probability: `'"[\'cat\',\'dog\',\'fish\']","[0.1,0.6,0.3]"'`, set `ProbabilityIndex` to `1` to select the probability values `[0.1,0.6,0.3]`.  
*Required*: No  
*Type*: Integer  
*Minimum*: `0`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::EndpointConfig ClarifyShapBaselineConfig
<a name="aws-properties-sagemaker-endpointconfig-clarifyshapbaselineconfig"></a>

The configuration for the [SHAP baseline](https://docs.aws.amazon.com/sagemaker/latest/dg/clarify-feature-attribute-shap-baselines.html) (also called the background or reference dataset) of the Kernal SHAP algorithm.

**Note**  
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](https://docs.aws.amazon.com/sagemaker/latest/dg/clarify-online-explainability-create-endpoint.html).
`ShapBaseline` and `ShapBaselineUri` are mutually exclusive parameters. One or the either is required to configure a SHAP baseline. 

## Syntax
<a name="aws-properties-sagemaker-endpointconfig-clarifyshapbaselineconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-endpointconfig-clarifyshapbaselineconfig-syntax.json"></a>

```
{
  "[MimeType](#cfn-sagemaker-endpointconfig-clarifyshapbaselineconfig-mimetype)" : String,
  "[ShapBaseline](#cfn-sagemaker-endpointconfig-clarifyshapbaselineconfig-shapbaseline)" : String,
  "[ShapBaselineUri](#cfn-sagemaker-endpointconfig-clarifyshapbaselineconfig-shapbaselineuri)" : String
}
```

### YAML
<a name="aws-properties-sagemaker-endpointconfig-clarifyshapbaselineconfig-syntax.yaml"></a>

```
  [MimeType](#cfn-sagemaker-endpointconfig-clarifyshapbaselineconfig-mimetype): String
  [ShapBaseline](#cfn-sagemaker-endpointconfig-clarifyshapbaselineconfig-shapbaseline): String
  [ShapBaselineUri](#cfn-sagemaker-endpointconfig-clarifyshapbaselineconfig-shapbaselineuri): String
```

## Properties
<a name="aws-properties-sagemaker-endpointconfig-clarifyshapbaselineconfig-properties"></a>

`MimeType`  <a name="cfn-sagemaker-endpointconfig-clarifyshapbaselineconfig-mimetype"></a>
The MIME type of the baseline data. Choose from `'text/csv'` or `'application/jsonlines'`. Defaults to `'text/csv'`.  
*Required*: No  
*Type*: String  
*Pattern*: `[a-zA-Z0-9](-*[a-zA-Z0-9])*\/[a-zA-Z0-9](-*[a-zA-Z0-9+.])*`  
*Minimum*: `0`  
*Maximum*: `255`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ShapBaseline`  <a name="cfn-sagemaker-endpointconfig-clarifyshapbaselineconfig-shapbaseline"></a>
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.  
*Required*: No  
*Type*: String  
*Pattern*: `[\s\S]+`  
*Minimum*: `1`  
*Maximum*: `4096`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ShapBaselineUri`  <a name="cfn-sagemaker-endpointconfig-clarifyshapbaselineconfig-shapbaselineuri"></a>
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](https://docs.aws.amazon.com/sagemaker/latest/dg/infrastructure-give-access.html).  
*Required*: No  
*Type*: String  
*Pattern*: `(https|s3)://([^/]+)/?(.*)`  
*Minimum*: `0`  
*Maximum*: `1024`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::EndpointConfig ClarifyShapConfig
<a name="aws-properties-sagemaker-endpointconfig-clarifyshapconfig"></a>

The configuration for SHAP analysis using SageMaker Clarify Explainer.

## Syntax
<a name="aws-properties-sagemaker-endpointconfig-clarifyshapconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-endpointconfig-clarifyshapconfig-syntax.json"></a>

```
{
  "[NumberOfSamples](#cfn-sagemaker-endpointconfig-clarifyshapconfig-numberofsamples)" : Integer,
  "[Seed](#cfn-sagemaker-endpointconfig-clarifyshapconfig-seed)" : Integer,
  "[ShapBaselineConfig](#cfn-sagemaker-endpointconfig-clarifyshapconfig-shapbaselineconfig)" : ClarifyShapBaselineConfig,
  "[TextConfig](#cfn-sagemaker-endpointconfig-clarifyshapconfig-textconfig)" : ClarifyTextConfig,
  "[UseLogit](#cfn-sagemaker-endpointconfig-clarifyshapconfig-uselogit)" : Boolean
}
```

### YAML
<a name="aws-properties-sagemaker-endpointconfig-clarifyshapconfig-syntax.yaml"></a>

```
  [NumberOfSamples](#cfn-sagemaker-endpointconfig-clarifyshapconfig-numberofsamples): Integer
  [Seed](#cfn-sagemaker-endpointconfig-clarifyshapconfig-seed): Integer
  [ShapBaselineConfig](#cfn-sagemaker-endpointconfig-clarifyshapconfig-shapbaselineconfig): 
    ClarifyShapBaselineConfig
  [TextConfig](#cfn-sagemaker-endpointconfig-clarifyshapconfig-textconfig): 
    ClarifyTextConfig
  [UseLogit](#cfn-sagemaker-endpointconfig-clarifyshapconfig-uselogit): Boolean
```

## Properties
<a name="aws-properties-sagemaker-endpointconfig-clarifyshapconfig-properties"></a>

`NumberOfSamples`  <a name="cfn-sagemaker-endpointconfig-clarifyshapconfig-numberofsamples"></a>
The number of samples to be used for analysis by the Kernal SHAP algorithm.   
The number of samples 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](https://docs.aws.amazon.com/sagemaker/latest/dg/clarify-online-explainability-create-endpoint.html).
*Required*: No  
*Type*: Integer  
*Minimum*: `1`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Seed`  <a name="cfn-sagemaker-endpointconfig-clarifyshapconfig-seed"></a>
The starting value used to initialize the random number generator in the explainer. Provide a value for this parameter to obtain a deterministic SHAP result.  
*Required*: No  
*Type*: Integer  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ShapBaselineConfig`  <a name="cfn-sagemaker-endpointconfig-clarifyshapconfig-shapbaselineconfig"></a>
The configuration for the SHAP baseline of the Kernal SHAP algorithm.  
*Required*: Yes  
*Type*: [ClarifyShapBaselineConfig](aws-properties-sagemaker-endpointconfig-clarifyshapbaselineconfig.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`TextConfig`  <a name="cfn-sagemaker-endpointconfig-clarifyshapconfig-textconfig"></a>
A parameter that indicates if text features are treated as text and explanations are provided for individual units of text. Required for natural language processing (NLP) explainability only.  
*Required*: No  
*Type*: [ClarifyTextConfig](aws-properties-sagemaker-endpointconfig-clarifytextconfig.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`UseLogit`  <a name="cfn-sagemaker-endpointconfig-clarifyshapconfig-uselogit"></a>
A Boolean toggle to indicate if you want to use the logit function (true) or log-odds units (false) for model predictions. Defaults to false.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::EndpointConfig ClarifyTextConfig
<a name="aws-properties-sagemaker-endpointconfig-clarifytextconfig"></a>

A parameter used to configure the SageMaker Clarify explainer to treat text features as text so that explanations are provided for individual units of text. Required only for natural language processing (NLP) explainability. 

## Syntax
<a name="aws-properties-sagemaker-endpointconfig-clarifytextconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-endpointconfig-clarifytextconfig-syntax.json"></a>

```
{
  "[Granularity](#cfn-sagemaker-endpointconfig-clarifytextconfig-granularity)" : String,
  "[Language](#cfn-sagemaker-endpointconfig-clarifytextconfig-language)" : String
}
```

### YAML
<a name="aws-properties-sagemaker-endpointconfig-clarifytextconfig-syntax.yaml"></a>

```
  [Granularity](#cfn-sagemaker-endpointconfig-clarifytextconfig-granularity): String
  [Language](#cfn-sagemaker-endpointconfig-clarifytextconfig-language): String
```

## Properties
<a name="aws-properties-sagemaker-endpointconfig-clarifytextconfig-properties"></a>

`Granularity`  <a name="cfn-sagemaker-endpointconfig-clarifytextconfig-granularity"></a>
The unit of granularity for the analysis of text features. For example, if the unit is `'token'`, then each token (like a word in English) of the text is treated as a feature. SHAP values are computed for each unit/feature.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `token | sentence | paragraph`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Language`  <a name="cfn-sagemaker-endpointconfig-clarifytextconfig-language"></a>
Specifies the language of the text features in [ISO 639-1]( https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) or [ISO 639-3](https://en.wikipedia.org/wiki/ISO_639-3) code of a supported language.   
For a mix of multiple languages, use code `'xx'`.
*Required*: Yes  
*Type*: String  
*Allowed values*: `af | sq | ar | hy | eu | bn | bg | ca | zh | hr | cs | da | nl | en | et | fi | fr | de | el | gu | he | hi | hu | is | id | ga | it | kn | ky | lv | lt | lb | mk | ml | mr | ne | nb | fa | pl | pt | ro | ru | sa | sr | tn | si | sk | sl | es | sv | tl | ta | tt | te | tr | uk | ur | yo | lij | xx`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::EndpointConfig DataCaptureConfig
<a name="aws-properties-sagemaker-endpointconfig-datacaptureconfig"></a>

Specifies the configuration of your endpoint for model monitor data capture. 

## Syntax
<a name="aws-properties-sagemaker-endpointconfig-datacaptureconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-endpointconfig-datacaptureconfig-syntax.json"></a>

```
{
  "[CaptureContentTypeHeader](#cfn-sagemaker-endpointconfig-datacaptureconfig-capturecontenttypeheader)" : CaptureContentTypeHeader,
  "[CaptureOptions](#cfn-sagemaker-endpointconfig-datacaptureconfig-captureoptions)" : [ CaptureOption, ... ],
  "[DestinationS3Uri](#cfn-sagemaker-endpointconfig-datacaptureconfig-destinations3uri)" : String,
  "[EnableCapture](#cfn-sagemaker-endpointconfig-datacaptureconfig-enablecapture)" : Boolean,
  "[InitialSamplingPercentage](#cfn-sagemaker-endpointconfig-datacaptureconfig-initialsamplingpercentage)" : Integer,
  "[KmsKeyId](#cfn-sagemaker-endpointconfig-datacaptureconfig-kmskeyid)" : String
}
```

### YAML
<a name="aws-properties-sagemaker-endpointconfig-datacaptureconfig-syntax.yaml"></a>

```
  [CaptureContentTypeHeader](#cfn-sagemaker-endpointconfig-datacaptureconfig-capturecontenttypeheader): 
    CaptureContentTypeHeader
  [CaptureOptions](#cfn-sagemaker-endpointconfig-datacaptureconfig-captureoptions): 
    - CaptureOption
  [DestinationS3Uri](#cfn-sagemaker-endpointconfig-datacaptureconfig-destinations3uri): String
  [EnableCapture](#cfn-sagemaker-endpointconfig-datacaptureconfig-enablecapture): Boolean
  [InitialSamplingPercentage](#cfn-sagemaker-endpointconfig-datacaptureconfig-initialsamplingpercentage): Integer
  [KmsKeyId](#cfn-sagemaker-endpointconfig-datacaptureconfig-kmskeyid): String
```

## Properties
<a name="aws-properties-sagemaker-endpointconfig-datacaptureconfig-properties"></a>

`CaptureContentTypeHeader`  <a name="cfn-sagemaker-endpointconfig-datacaptureconfig-capturecontenttypeheader"></a>
A list of the JSON and CSV content type that the endpoint captures.  
*Required*: No  
*Type*: [CaptureContentTypeHeader](aws-properties-sagemaker-endpointconfig-capturecontenttypeheader.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`CaptureOptions`  <a name="cfn-sagemaker-endpointconfig-datacaptureconfig-captureoptions"></a>
Specifies whether the endpoint captures input data to your model, output data from your model, or both.  
*Required*: Yes  
*Type*: Array of [CaptureOption](aws-properties-sagemaker-endpointconfig-captureoption.md)  
*Minimum*: `1`  
*Maximum*: `32`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`DestinationS3Uri`  <a name="cfn-sagemaker-endpointconfig-datacaptureconfig-destinations3uri"></a>
The S3 bucket where model monitor stores captured data.  
*Required*: Yes  
*Type*: String  
*Pattern*: `(https|s3)://([^/])/?(.*)`  
*Minimum*: `0`  
*Maximum*: `512`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`EnableCapture`  <a name="cfn-sagemaker-endpointconfig-datacaptureconfig-enablecapture"></a>
Set to `True` to enable data capture.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`InitialSamplingPercentage`  <a name="cfn-sagemaker-endpointconfig-datacaptureconfig-initialsamplingpercentage"></a>
The percentage of data to capture.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `0`  
*Maximum*: `100`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`KmsKeyId`  <a name="cfn-sagemaker-endpointconfig-datacaptureconfig-kmskeyid"></a>
The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to encrypt the captured data at rest using Amazon S3 server-side encryption. The KmsKeyId can be any of the following formats: Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab Alias name: alias/ExampleAlias Alias name ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias If you don't provide a KMS key ID, Amazon SageMaker uses the default KMS key for Amazon S3 for your role's account. For more information, see KMS-Managed Encryption Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html) in the Amazon Simple Storage Service Developer Guide. The KMS key policy must grant permission to the IAM role that you specify in your CreateModel (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API\$1CreateModel.html) request. For more information, see Using Key Policies in AWS KMS (http://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) in the AWS Key Management Service Developer Guide.  
*Required*: No  
*Type*: String  
*Pattern*: `[a-zA-Z0-9:/_-]*`  
*Minimum*: `0`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::EndpointConfig ExplainerConfig
<a name="aws-properties-sagemaker-endpointconfig-explainerconfig"></a>

A parameter to activate explainers.

## Syntax
<a name="aws-properties-sagemaker-endpointconfig-explainerconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-endpointconfig-explainerconfig-syntax.json"></a>

```
{
  "[ClarifyExplainerConfig](#cfn-sagemaker-endpointconfig-explainerconfig-clarifyexplainerconfig)" : ClarifyExplainerConfig
}
```

### YAML
<a name="aws-properties-sagemaker-endpointconfig-explainerconfig-syntax.yaml"></a>

```
  [ClarifyExplainerConfig](#cfn-sagemaker-endpointconfig-explainerconfig-clarifyexplainerconfig): 
    ClarifyExplainerConfig
```

## Properties
<a name="aws-properties-sagemaker-endpointconfig-explainerconfig-properties"></a>

`ClarifyExplainerConfig`  <a name="cfn-sagemaker-endpointconfig-explainerconfig-clarifyexplainerconfig"></a>
A member of `ExplainerConfig` that contains configuration parameters for the SageMaker Clarify explainer.  
*Required*: No  
*Type*: [ClarifyExplainerConfig](aws-properties-sagemaker-endpointconfig-clarifyexplainerconfig.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::EndpointConfig ProductionVariant
<a name="aws-properties-sagemaker-endpointconfig-productionvariant"></a>

Specifies a model that you want to host and the resources to deploy for hosting it. If you are deploying multiple models, tell Amazon SageMaker how to distribute traffic among the models by specifying the `InitialVariantWeight` objects. 

## Syntax
<a name="aws-properties-sagemaker-endpointconfig-productionvariant-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-endpointconfig-productionvariant-syntax.json"></a>

```
{
  "[AcceleratorType](#cfn-sagemaker-endpointconfig-productionvariant-acceleratortype)" : String,
  "[ContainerStartupHealthCheckTimeoutInSeconds](#cfn-sagemaker-endpointconfig-productionvariant-containerstartuphealthchecktimeoutinseconds)" : Integer,
  "[EnableSSMAccess](#cfn-sagemaker-endpointconfig-productionvariant-enablessmaccess)" : Boolean,
  "[InitialInstanceCount](#cfn-sagemaker-endpointconfig-productionvariant-initialinstancecount)" : Integer,
  "[InitialVariantWeight](#cfn-sagemaker-endpointconfig-productionvariant-initialvariantweight)" : Number,
  "[InstanceType](#cfn-sagemaker-endpointconfig-productionvariant-instancetype)" : String,
  "[ModelDataDownloadTimeoutInSeconds](#cfn-sagemaker-endpointconfig-productionvariant-modeldatadownloadtimeoutinseconds)" : Integer,
  "[ModelName](#cfn-sagemaker-endpointconfig-productionvariant-modelname)" : String,
  "[ServerlessConfig](#cfn-sagemaker-endpointconfig-productionvariant-serverlessconfig)" : ServerlessConfig,
  "[VariantName](#cfn-sagemaker-endpointconfig-productionvariant-variantname)" : String,
  "[VolumeSizeInGB](#cfn-sagemaker-endpointconfig-productionvariant-volumesizeingb)" : Integer
}
```

### YAML
<a name="aws-properties-sagemaker-endpointconfig-productionvariant-syntax.yaml"></a>

```
  [AcceleratorType](#cfn-sagemaker-endpointconfig-productionvariant-acceleratortype): String
  [ContainerStartupHealthCheckTimeoutInSeconds](#cfn-sagemaker-endpointconfig-productionvariant-containerstartuphealthchecktimeoutinseconds): Integer
  [EnableSSMAccess](#cfn-sagemaker-endpointconfig-productionvariant-enablessmaccess): Boolean
  [InitialInstanceCount](#cfn-sagemaker-endpointconfig-productionvariant-initialinstancecount): Integer
  [InitialVariantWeight](#cfn-sagemaker-endpointconfig-productionvariant-initialvariantweight): Number
  [InstanceType](#cfn-sagemaker-endpointconfig-productionvariant-instancetype): String
  [ModelDataDownloadTimeoutInSeconds](#cfn-sagemaker-endpointconfig-productionvariant-modeldatadownloadtimeoutinseconds): Integer
  [ModelName](#cfn-sagemaker-endpointconfig-productionvariant-modelname): String
  [ServerlessConfig](#cfn-sagemaker-endpointconfig-productionvariant-serverlessconfig): 
    ServerlessConfig
  [VariantName](#cfn-sagemaker-endpointconfig-productionvariant-variantname): String
  [VolumeSizeInGB](#cfn-sagemaker-endpointconfig-productionvariant-volumesizeingb): Integer
```

## Properties
<a name="aws-properties-sagemaker-endpointconfig-productionvariant-properties"></a>

`AcceleratorType`  <a name="cfn-sagemaker-endpointconfig-productionvariant-acceleratortype"></a>
The size of the Elastic Inference (EI) instance to use for the production variant. EI instances provide on-demand GPU computing for inference. For more information, see [Using Elastic Inference in Amazon SageMaker](https://docs.aws.amazon.com/sagemaker/latest/dg/ei.html). For more information, see [Using Elastic Inference in Amazon SageMaker](https://docs.aws.amazon.com/sagemaker/latest/dg/ei.html).  
*Required*: No  
*Type*: String  
*Allowed values*: `ml.eia1.medium | ml.eia1.large | ml.eia1.xlarge | ml.eia2.medium | ml.eia2.large | ml.eia2.xlarge`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ContainerStartupHealthCheckTimeoutInSeconds`  <a name="cfn-sagemaker-endpointconfig-productionvariant-containerstartuphealthchecktimeoutinseconds"></a>
The timeout value, in seconds, for your inference container to pass health check by SageMaker Hosting. For more information about health check, see [How Your Container Should Respond to Health Check (Ping) Requests](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-inference-code.html#your-algorithms-inference-algo-ping-requests).  
*Required*: No  
*Type*: Integer  
*Minimum*: `60`  
*Maximum*: `3600`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`EnableSSMAccess`  <a name="cfn-sagemaker-endpointconfig-productionvariant-enablessmaccess"></a>
 You can use this parameter to turn on native AWS Systems Manager (SSM) access for a production variant behind an endpoint. By default, SSM access is disabled for all production variants behind an endpoint. You can turn on or turn off SSM access for a production variant behind an existing endpoint by creating a new endpoint configuration and calling `UpdateEndpoint`.   
*Required*: No  
*Type*: Boolean  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`InitialInstanceCount`  <a name="cfn-sagemaker-endpointconfig-productionvariant-initialinstancecount"></a>
Number of instances to launch initially.  
*Required*: No  
*Type*: Integer  
*Minimum*: `1`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`InitialVariantWeight`  <a name="cfn-sagemaker-endpointconfig-productionvariant-initialvariantweight"></a>
Determines initial traffic distribution among all of the models that you specify in the endpoint configuration. The traffic to a production variant is determined by the ratio of the `VariantWeight` to the sum of all `VariantWeight` values across all ProductionVariants. If unspecified, it defaults to 1.0.   
*Required*: Yes  
*Type*: Number  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`InstanceType`  <a name="cfn-sagemaker-endpointconfig-productionvariant-instancetype"></a>
The ML compute instance type.  
*Required*: No  
*Type*: String  
*Allowed values*: `ml.t2.medium | ml.t2.large | ml.t2.xlarge | ml.t2.2xlarge | ml.m4.xlarge | ml.m4.2xlarge | ml.m4.4xlarge | ml.m4.10xlarge | ml.m4.16xlarge | ml.m5.large | ml.m5.xlarge | ml.m5.2xlarge | ml.m5.4xlarge | ml.m5.12xlarge | ml.m5.24xlarge | ml.m5d.large | ml.m5d.xlarge | ml.m5d.2xlarge | ml.m5d.4xlarge | ml.m5d.12xlarge | ml.m5d.24xlarge | ml.c4.large | ml.c4.xlarge | ml.c4.2xlarge | ml.c4.4xlarge | ml.c4.8xlarge | ml.p2.xlarge | ml.p2.8xlarge | ml.p2.16xlarge | ml.p3.2xlarge | ml.p3.8xlarge | ml.p3.16xlarge | ml.c5.large | ml.c5.xlarge | ml.c5.2xlarge | ml.c5.4xlarge | ml.c5.9xlarge | ml.c5.18xlarge | ml.c5d.large | ml.c5d.xlarge | ml.c5d.2xlarge | ml.c5d.4xlarge | ml.c5d.9xlarge | ml.c5d.18xlarge | ml.g4dn.xlarge | ml.g4dn.2xlarge | ml.g4dn.4xlarge | ml.g4dn.8xlarge | ml.g4dn.12xlarge | ml.g4dn.16xlarge | ml.r5.large | ml.r5.xlarge | ml.r5.2xlarge | ml.r5.4xlarge | ml.r5.12xlarge | ml.r5.24xlarge | ml.r5d.large | ml.r5d.xlarge | ml.r5d.2xlarge | ml.r5d.4xlarge | ml.r5d.12xlarge | ml.r5d.24xlarge | ml.inf1.xlarge | ml.inf1.2xlarge | ml.inf1.6xlarge | ml.inf1.24xlarge | ml.dl1.24xlarge | ml.c6i.large | ml.c6i.xlarge | ml.c6i.2xlarge | ml.c6i.4xlarge | ml.c6i.8xlarge | ml.c6i.12xlarge | ml.c6i.16xlarge | ml.c6i.24xlarge | ml.c6i.32xlarge | ml.m6i.large | ml.m6i.xlarge | ml.m6i.2xlarge | ml.m6i.4xlarge | ml.m6i.8xlarge | ml.m6i.12xlarge | ml.m6i.16xlarge | ml.m6i.24xlarge | ml.m6i.32xlarge | ml.r6i.large | ml.r6i.xlarge | ml.r6i.2xlarge | ml.r6i.4xlarge | ml.r6i.8xlarge | ml.r6i.12xlarge | ml.r6i.16xlarge | ml.r6i.24xlarge | ml.r6i.32xlarge | ml.g5.xlarge | ml.g5.2xlarge | ml.g5.4xlarge | ml.g5.8xlarge | ml.g5.12xlarge | ml.g5.16xlarge | ml.g5.24xlarge | ml.g5.48xlarge | ml.g6.xlarge | ml.g6.2xlarge | ml.g6.4xlarge | ml.g6.8xlarge | ml.g6.12xlarge | ml.g6.16xlarge | ml.g6.24xlarge | ml.g6.48xlarge | ml.r8g.medium | ml.r8g.large | ml.r8g.xlarge | ml.r8g.2xlarge | ml.r8g.4xlarge | ml.r8g.8xlarge | ml.r8g.12xlarge | ml.r8g.16xlarge | ml.r8g.24xlarge | ml.r8g.48xlarge | ml.g6e.xlarge | ml.g6e.2xlarge | ml.g6e.4xlarge | ml.g6e.8xlarge | ml.g6e.12xlarge | ml.g6e.16xlarge | ml.g6e.24xlarge | ml.g6e.48xlarge | ml.g7e.2xlarge | ml.g7e.4xlarge | ml.g7e.8xlarge | ml.g7e.12xlarge | ml.g7e.24xlarge | ml.g7e.48xlarge | ml.p4d.24xlarge | ml.c7g.large | ml.c7g.xlarge | ml.c7g.2xlarge | ml.c7g.4xlarge | ml.c7g.8xlarge | ml.c7g.12xlarge | ml.c7g.16xlarge | ml.m6g.large | ml.m6g.xlarge | ml.m6g.2xlarge | ml.m6g.4xlarge | ml.m6g.8xlarge | ml.m6g.12xlarge | ml.m6g.16xlarge | ml.m6gd.large | ml.m6gd.xlarge | ml.m6gd.2xlarge | ml.m6gd.4xlarge | ml.m6gd.8xlarge | ml.m6gd.12xlarge | ml.m6gd.16xlarge | ml.c6g.large | ml.c6g.xlarge | ml.c6g.2xlarge | ml.c6g.4xlarge | ml.c6g.8xlarge | ml.c6g.12xlarge | ml.c6g.16xlarge | ml.c6gd.large | ml.c6gd.xlarge | ml.c6gd.2xlarge | ml.c6gd.4xlarge | ml.c6gd.8xlarge | ml.c6gd.12xlarge | ml.c6gd.16xlarge | ml.c6gn.large | ml.c6gn.xlarge | ml.c6gn.2xlarge | ml.c6gn.4xlarge | ml.c6gn.8xlarge | ml.c6gn.12xlarge | ml.c6gn.16xlarge | ml.r6g.large | ml.r6g.xlarge | ml.r6g.2xlarge | ml.r6g.4xlarge | ml.r6g.8xlarge | ml.r6g.12xlarge | ml.r6g.16xlarge | ml.r6gd.large | ml.r6gd.xlarge | ml.r6gd.2xlarge | ml.r6gd.4xlarge | ml.r6gd.8xlarge | ml.r6gd.12xlarge | ml.r6gd.16xlarge | ml.p4de.24xlarge | ml.trn1.2xlarge | ml.trn1.32xlarge | ml.trn1n.32xlarge | ml.trn2.48xlarge | ml.inf2.xlarge | ml.inf2.8xlarge | ml.inf2.24xlarge | ml.inf2.48xlarge | ml.p5.48xlarge | ml.p5e.48xlarge | ml.p5en.48xlarge | ml.m7i.large | ml.m7i.xlarge | ml.m7i.2xlarge | ml.m7i.4xlarge | ml.m7i.8xlarge | ml.m7i.12xlarge | ml.m7i.16xlarge | ml.m7i.24xlarge | ml.m7i.48xlarge | ml.c7i.large | ml.c7i.xlarge | ml.c7i.2xlarge | ml.c7i.4xlarge | ml.c7i.8xlarge | ml.c7i.12xlarge | ml.c7i.16xlarge | ml.c7i.24xlarge | ml.c7i.48xlarge | ml.r7i.large | ml.r7i.xlarge | ml.r7i.2xlarge | ml.r7i.4xlarge | ml.r7i.8xlarge | ml.r7i.12xlarge | ml.r7i.16xlarge | ml.r7i.24xlarge | ml.r7i.48xlarge | ml.c8g.medium | ml.c8g.large | ml.c8g.xlarge | ml.c8g.2xlarge | ml.c8g.4xlarge | ml.c8g.8xlarge | ml.c8g.12xlarge | ml.c8g.16xlarge | ml.c8g.24xlarge | ml.c8g.48xlarge | ml.r7gd.medium | ml.r7gd.large | ml.r7gd.xlarge | ml.r7gd.2xlarge | ml.r7gd.4xlarge | ml.r7gd.8xlarge | ml.r7gd.12xlarge | ml.r7gd.16xlarge | ml.m8g.medium | ml.m8g.large | ml.m8g.xlarge | ml.m8g.2xlarge | ml.m8g.4xlarge | ml.m8g.8xlarge | ml.m8g.12xlarge | ml.m8g.16xlarge | ml.m8g.24xlarge | ml.m8g.48xlarge | ml.c6in.large | ml.c6in.xlarge | ml.c6in.2xlarge | ml.c6in.4xlarge | ml.c6in.8xlarge | ml.c6in.12xlarge | ml.c6in.16xlarge | ml.c6in.24xlarge | ml.c6in.32xlarge | ml.p6-b200.48xlarge | ml.p6-b300.48xlarge | ml.p6e-gb200.36xlarge | ml.p5.4xlarge`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ModelDataDownloadTimeoutInSeconds`  <a name="cfn-sagemaker-endpointconfig-productionvariant-modeldatadownloadtimeoutinseconds"></a>
The timeout value, in seconds, to download and extract the model that you want to host from Amazon S3 to the individual inference instance associated with this production variant.  
*Required*: No  
*Type*: Integer  
*Minimum*: `60`  
*Maximum*: `3600`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ModelName`  <a name="cfn-sagemaker-endpointconfig-productionvariant-modelname"></a>
The name of the model that you want to host. This is the name that you specified when creating the model.  
*Required*: Yes  
*Type*: String  
*Pattern*: `[a-zA-Z0-9]([\-a-zA-Z0-9]*[a-zA-Z0-9])?`  
*Minimum*: `0`  
*Maximum*: `63`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ServerlessConfig`  <a name="cfn-sagemaker-endpointconfig-productionvariant-serverlessconfig"></a>
The serverless configuration for an endpoint. Specifies a serverless endpoint configuration instead of an instance-based endpoint configuration.  
*Required*: No  
*Type*: [ServerlessConfig](aws-properties-sagemaker-endpointconfig-serverlessconfig.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`VariantName`  <a name="cfn-sagemaker-endpointconfig-productionvariant-variantname"></a>
The name of the production variant.  
*Required*: Yes  
*Type*: String  
*Pattern*: `[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}`  
*Minimum*: `0`  
*Maximum*: `63`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`VolumeSizeInGB`  <a name="cfn-sagemaker-endpointconfig-productionvariant-volumesizeingb"></a>
The size, in GB, of the ML storage volume attached to individual inference instance associated with the production variant. Currently only Amazon EBS gp2 storage volumes are supported.  
*Required*: No  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `512`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::EndpointConfig ServerlessConfig
<a name="aws-properties-sagemaker-endpointconfig-serverlessconfig"></a>

Specifies the serverless configuration for an endpoint variant.

## Syntax
<a name="aws-properties-sagemaker-endpointconfig-serverlessconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-endpointconfig-serverlessconfig-syntax.json"></a>

```
{
  "[MaxConcurrency](#cfn-sagemaker-endpointconfig-serverlessconfig-maxconcurrency)" : Integer,
  "[MemorySizeInMB](#cfn-sagemaker-endpointconfig-serverlessconfig-memorysizeinmb)" : Integer,
  "[ProvisionedConcurrency](#cfn-sagemaker-endpointconfig-serverlessconfig-provisionedconcurrency)" : Integer
}
```

### YAML
<a name="aws-properties-sagemaker-endpointconfig-serverlessconfig-syntax.yaml"></a>

```
  [MaxConcurrency](#cfn-sagemaker-endpointconfig-serverlessconfig-maxconcurrency): Integer
  [MemorySizeInMB](#cfn-sagemaker-endpointconfig-serverlessconfig-memorysizeinmb): Integer
  [ProvisionedConcurrency](#cfn-sagemaker-endpointconfig-serverlessconfig-provisionedconcurrency): Integer
```

## Properties
<a name="aws-properties-sagemaker-endpointconfig-serverlessconfig-properties"></a>

`MaxConcurrency`  <a name="cfn-sagemaker-endpointconfig-serverlessconfig-maxconcurrency"></a>
The maximum number of concurrent invocations your serverless endpoint can process.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`MemorySizeInMB`  <a name="cfn-sagemaker-endpointconfig-serverlessconfig-memorysizeinmb"></a>
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.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `1024`  
*Maximum*: `6144`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ProvisionedConcurrency`  <a name="cfn-sagemaker-endpointconfig-serverlessconfig-provisionedconcurrency"></a>
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](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateInferenceRecommendationsJob.html).
*Required*: No  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::EndpointConfig Tag
<a name="aws-properties-sagemaker-endpointconfig-tag"></a>

A tag object that consists of a key and an optional value, used to manage metadata for SageMaker AWS resources.

You can add tags to notebook instances, training jobs, hyperparameter tuning jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, and endpoints. For more information on adding tags to SageMaker resources, see [AddTags](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AddTags.html).

For more information on adding metadata to your AWS resources with tagging, see [Tagging AWS resources](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). For advice on best practices for managing AWS resources with tagging, see [Tagging Best Practices: Implement an Effective AWS Resource Tagging Strategy](https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf).

## Syntax
<a name="aws-properties-sagemaker-endpointconfig-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-endpointconfig-tag-syntax.json"></a>

```
{
  "[Key](#cfn-sagemaker-endpointconfig-tag-key)" : String,
  "[Value](#cfn-sagemaker-endpointconfig-tag-value)" : String
}
```

### YAML
<a name="aws-properties-sagemaker-endpointconfig-tag-syntax.yaml"></a>

```
  [Key](#cfn-sagemaker-endpointconfig-tag-key): String
  [Value](#cfn-sagemaker-endpointconfig-tag-value): String
```

## Properties
<a name="aws-properties-sagemaker-endpointconfig-tag-properties"></a>

`Key`  <a name="cfn-sagemaker-endpointconfig-tag-key"></a>
The tag key. Tag keys must be unique per resource.  
*Required*: Yes  
*Type*: String  
*Pattern*: `([\p{L}\p{Z}\p{N}_.:/=+\-@]*)`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-sagemaker-endpointconfig-tag-value"></a>
The tag value.  
*Required*: Yes  
*Type*: String  
*Pattern*: `([\p{L}\p{Z}\p{N}_.:/=+\-@]*)`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)