AWS Certified Machine Learning Engineer – Associate (MLA-C01) — Question 35
A company has trained an ML model in Amazon SageMaker. The company needs to host the model to provide inferences in a production environment.
The model must be highly available and must respond with minimum latency. The size of each request will be between 1 KB and 3 MB. The model will receive unpredictable bursts of requests during the day. The inferences must adapt proportionally to the changes in demand.
How should the company deploy the model into production to meet these requirements?
Answer options
- A. Create a SageMaker real-time inference endpoint. Configure auto scaling. Configure the endpoint to present the existing model.
- B. Deploy the model on an Amazon Elastic Container Service (Amazon ECS) cluster. Use ECS scheduled scaling that is based on the CPU of the ECS cluster.
- C. Install SageMaker Operator on an Amazon Elastic Kubernetes Service (Amazon EKS) cluster. Deploy the model in Amazon EKS. Set horizontal pod auto scaling to scale replicas based on the memory metric.
- D. Use Spot Instances with a Spot Fleet behind an Application Load Balancer (ALB) for inferences. Use the ALBRequestCountPerTarget metric as the metric for auto scaling.
Correct answer: A
Explanation
The correct answer is A because a SageMaker real-time inference endpoint is designed for low-latency, high-availability inferences and can automatically scale to handle varying request loads. Option B is less suitable as ECS scheduled scaling based on CPU may not respond quickly enough to unpredictable demand. Option C, while using EKS, does not leverage SageMaker's built-in optimizations for real-time inference. Option D involves using Spot Instances, which may lead to availability issues during high demand periods.