I want to create a Sagemaker endpoint where the model will be regularly retrained and updated.
resource "aws_sagemaker_endpoint_configuration" "endpoint_configuration" {
name = "sagemaker-endpoint-configuration"
production_variants {
initial_instance_count = 1
instance_type = "ml.t2.medium"
model_name = "classification_model_name"
variant_name = "AllTraffic"
}
}
resource "aws_sagemaker_endpoint" "sagemaker_endpoint" {
name = "sagemaker-endpoint"
endpoint_config_name = aws_sagemaker_endpoint_configuration.sagemaker_endpoint_configuration.name
}
I want to update the model using the below python script, where container_list references the newly trained model_package_arn:
sagemaker_client.delete_model(
ModelName = "classification_model_name"
)
sagemaker_client.create_model(
ModelName = "classification_model_name",
ExecutionRoleArn = sagemaker_role,
Containers = container_list
)
When I recreate the model as per above, does that new model get automatically cascaded to the sagemaker-endpoint-configuration and sagemaker-endpoint? Does recreating the model as per above result in any downtime of the endpoint?