{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--aws-sagemaker-endpointconfig.json",
  "title": "AWSSageMakerEndpointConfigProperties",
  "description": "Resource Type definition for AWS::SageMaker::EndpointConfig. Source:- No source definition found, add manually please",
  "x-lintel": {
    "source": "https://raw.githubusercontent.com/lalcebo/json-schema/master/serverless/resources/cloudformation-modified/aws-sagemaker-endpointconfig.json",
    "sourceSha256": "b8e8a4f18ff7d1b903632a71bd6f61bd509c9fd24fdfd28bb43d33c24e47ea64"
  },
  "type": "object",
  "properties": {
    "ShadowProductionVariants": {
      "type": "array",
      "uniqueItems": false,
      "items": {
        "$ref": "#/$defs/ProductionVariant"
      }
    },
    "DataCaptureConfig": {
      "$ref": "#/$defs/DataCaptureConfig"
    },
    "ProductionVariants": {
      "type": "array",
      "uniqueItems": false,
      "items": {
        "$ref": "#/$defs/ProductionVariant"
      }
    },
    "KmsKeyId": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "AsyncInferenceConfig": {
      "$ref": "#/$defs/AsyncInferenceConfig"
    },
    "EndpointConfigName": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "ExplainerConfig": {
      "$ref": "#/$defs/ExplainerConfig"
    },
    "Tags": {
      "type": "array",
      "uniqueItems": false,
      "items": {
        "$ref": "#/$defs/Tag"
      }
    }
  },
  "typeName": "AWS::SageMaker::EndpointConfig",
  "readOnlyProperties": [
    "/properties/Id"
  ],
  "$defs": {
    "AsyncInferenceNotificationConfig": {
      "type": "object",
      "title": "AWSSageMakerEndpointConfigAsyncInferenceNotificationConfigDefinition",
      "properties": {
        "IncludeInferenceResponseIn": {
          "type": "array",
          "uniqueItems": false,
          "items": {
            "type": "string"
          }
        },
        "SuccessTopic": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "ErrorTopic": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "ClarifyHeader": {
      "type": "object",
      "title": "AWSSageMakerEndpointConfigClarifyHeaderDefinition",
      "additionalProperties": false
    },
    "ProductionVariant": {
      "type": "object",
      "title": "AWSSageMakerEndpointConfigProductionVariantDefinition",
      "properties": {
        "ModelDataDownloadTimeoutInSeconds": {
          "type": "integer"
        },
        "ModelName": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "VolumeSizeInGB": {
          "type": "integer"
        },
        "EnableSSMAccess": {
          "type": "boolean"
        },
        "VariantName": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "ContainerStartupHealthCheckTimeoutInSeconds": {
          "type": "integer"
        },
        "InitialInstanceCount": {
          "type": "integer"
        },
        "ServerlessConfig": {
          "$ref": "#/$defs/ServerlessConfig"
        },
        "InstanceType": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "AcceleratorType": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "InitialVariantWeight": {
          "type": "number"
        }
      },
      "required": [
        "ModelName",
        "VariantName",
        "InitialVariantWeight"
      ],
      "additionalProperties": false
    },
    "ClarifyInferenceConfig": {
      "type": "object",
      "title": "AWSSageMakerEndpointConfigClarifyInferenceConfigDefinition",
      "properties": {
        "ContentTemplate": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "LabelHeaders": {
          "type": "array",
          "uniqueItems": false,
          "items": {
            "$ref": "#/$defs/ClarifyHeader"
          }
        },
        "MaxPayloadInMB": {
          "type": "integer"
        },
        "ProbabilityIndex": {
          "type": "integer"
        },
        "LabelAttribute": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "FeatureTypes": {
          "type": "array",
          "uniqueItems": false,
          "items": {
            "$ref": "#/$defs/ClarifyFeatureType"
          }
        },
        "FeatureHeaders": {
          "type": "array",
          "uniqueItems": false,
          "items": {
            "$ref": "#/$defs/ClarifyHeader"
          }
        },
        "LabelIndex": {
          "type": "integer"
        },
        "ProbabilityAttribute": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "FeaturesAttribute": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "MaxRecordCount": {
          "type": "integer"
        }
      },
      "additionalProperties": false
    },
    "ExplainerConfig": {
      "type": "object",
      "title": "AWSSageMakerEndpointConfigExplainerConfigDefinition",
      "properties": {
        "ClarifyExplainerConfig": {
          "$ref": "#/$defs/ClarifyExplainerConfig"
        }
      },
      "additionalProperties": false
    },
    "ClarifyFeatureType": {
      "type": "object",
      "title": "AWSSageMakerEndpointConfigClarifyFeatureTypeDefinition",
      "additionalProperties": false
    },
    "CaptureContentTypeHeader": {
      "type": "object",
      "title": "AWSSageMakerEndpointConfigCaptureContentTypeHeaderDefinition",
      "properties": {
        "CsvContentTypes": {
          "type": "array",
          "uniqueItems": false,
          "items": {
            "type": "string"
          }
        },
        "JsonContentTypes": {
          "type": "array",
          "uniqueItems": false,
          "items": {
            "type": "string"
          }
        }
      },
      "additionalProperties": false
    },
    "ClarifyTextConfig": {
      "type": "object",
      "title": "AWSSageMakerEndpointConfigClarifyTextConfigDefinition",
      "properties": {
        "Language": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Granularity": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "Language",
        "Granularity"
      ],
      "additionalProperties": false
    },
    "DataCaptureConfig": {
      "type": "object",
      "title": "AWSSageMakerEndpointConfigDataCaptureConfigDefinition",
      "properties": {
        "CaptureOptions": {
          "type": "array",
          "uniqueItems": false,
          "items": {
            "$ref": "#/$defs/CaptureOption"
          }
        },
        "KmsKeyId": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "DestinationS3Uri": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "InitialSamplingPercentage": {
          "type": "integer"
        },
        "CaptureContentTypeHeader": {
          "$ref": "#/$defs/CaptureContentTypeHeader"
        },
        "EnableCapture": {
          "type": "boolean"
        }
      },
      "required": [
        "CaptureOptions",
        "DestinationS3Uri",
        "InitialSamplingPercentage"
      ],
      "additionalProperties": false
    },
    "AsyncInferenceConfig": {
      "type": "object",
      "title": "AWSSageMakerEndpointConfigAsyncInferenceConfigDefinition",
      "properties": {
        "ClientConfig": {
          "$ref": "#/$defs/AsyncInferenceClientConfig"
        },
        "OutputConfig": {
          "$ref": "#/$defs/AsyncInferenceOutputConfig"
        }
      },
      "required": [
        "OutputConfig"
      ],
      "additionalProperties": false
    },
    "AsyncInferenceClientConfig": {
      "type": "object",
      "title": "AWSSageMakerEndpointConfigAsyncInferenceClientConfigDefinition",
      "properties": {
        "MaxConcurrentInvocationsPerInstance": {
          "type": "integer"
        }
      },
      "additionalProperties": false
    },
    "ClarifyShapBaselineConfig": {
      "type": "object",
      "title": "AWSSageMakerEndpointConfigClarifyShapBaselineConfigDefinition",
      "properties": {
        "MimeType": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "ShapBaseline": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "ShapBaselineUri": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "ServerlessConfig": {
      "type": "object",
      "title": "AWSSageMakerEndpointConfigServerlessConfigDefinition",
      "properties": {
        "MaxConcurrency": {
          "type": "integer"
        },
        "MemorySizeInMB": {
          "type": "integer"
        },
        "ProvisionedConcurrency": {
          "type": "integer"
        }
      },
      "required": [
        "MaxConcurrency",
        "MemorySizeInMB"
      ],
      "additionalProperties": false
    },
    "ClarifyShapConfig": {
      "type": "object",
      "title": "AWSSageMakerEndpointConfigClarifyShapConfigDefinition",
      "properties": {
        "TextConfig": {
          "$ref": "#/$defs/ClarifyTextConfig"
        },
        "UseLogit": {
          "type": "boolean"
        },
        "Seed": {
          "type": "integer"
        },
        "ShapBaselineConfig": {
          "$ref": "#/$defs/ClarifyShapBaselineConfig"
        },
        "NumberOfSamples": {
          "type": "integer"
        }
      },
      "required": [
        "ShapBaselineConfig"
      ],
      "additionalProperties": false
    },
    "ClarifyExplainerConfig": {
      "type": "object",
      "title": "AWSSageMakerEndpointConfigClarifyExplainerConfigDefinition",
      "properties": {
        "EnableExplanations": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "ShapConfig": {
          "$ref": "#/$defs/ClarifyShapConfig"
        },
        "InferenceConfig": {
          "$ref": "#/$defs/ClarifyInferenceConfig"
        }
      },
      "required": [
        "ShapConfig"
      ],
      "additionalProperties": false
    },
    "CaptureOption": {
      "type": "object",
      "title": "AWSSageMakerEndpointConfigCaptureOptionDefinition",
      "properties": {
        "CaptureMode": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "CaptureMode"
      ],
      "additionalProperties": false
    },
    "Tag": {
      "type": "object",
      "title": "AWSSageMakerEndpointConfigTagDefinition",
      "properties": {
        "Value": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Key": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "Value",
        "Key"
      ],
      "additionalProperties": false
    },
    "AsyncInferenceOutputConfig": {
      "type": "object",
      "title": "AWSSageMakerEndpointConfigAsyncInferenceOutputConfigDefinition",
      "properties": {
        "NotificationConfig": {
          "$ref": "#/$defs/AsyncInferenceNotificationConfig"
        },
        "KmsKeyId": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "S3OutputPath": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "S3FailurePath": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "additionalProperties": false
    }
  },
  "primaryIdentifier": [
    "/properties/Id"
  ],
  "additionalProperties": false,
  "required": [
    "ProductionVariants"
  ],
  "createOnlyProperties": [
    "/properties/KmsKeyId",
    "/properties/AsyncInferenceConfig",
    "/properties/ShadowProductionVariants",
    "/properties/ProductionVariants",
    "/properties/DataCaptureConfig",
    "/properties/ExplainerConfig",
    "/properties/EndpointConfigName"
  ]
}
