아마존 SageMaker Canvas 모델의 서버리스 배포 가이드
머신러닝(ML) 모델을 프로덕션 환경에 배포하는 과정은 종종 복잡하고 리소스를 많이 요구합니다. 특히 ML이나 DevOps 전문성이 부족한 조직에게 배포는 가장 큰 허들 중 하나입니다. 아마존 SageMaker Canvas는 이러한 문제를 해결하기 위해 코드 작성 없이 고정밀 ML 모델을 구축할 수 있도록 지원하며, Amazon SageMaker Serverless Inference를 활용하면 인프라 관리 없이도 손쉽게 모델 배포가 가능합니다. 이번 포스팅에서는 SageMaker Canvas에서 생성한 모델을 SageMaker Serverless Inference를 통해 자동화 및 서버리스 방식으로 배포하는 방법에 대해 소개합니다.
SageMaker Canvas 모델을 서버리스로 배포하는 방법
SageMaker Canvas에서 모델을 생성한 후 실제 예측 서비스를 제공하기 위한 배포까지 이어지는 주요 단계는 다음과 같습니다.
- 모델을 SageMaker Model Registry에 등록합니다.
- 해당 모델을 기반으로 새로운 SageMaker 모델을 생성합니다.
- Serverless 엔드포인트 구성을 생성합니다.
- 앞서 만든 구성과 모델을 기반으로 서버리스 엔드포인트를 구축합니다.
다음 이미지는 위 과정을 자동화한 전체 아키텍처를 보여줍니다.
실제 예제: 회귀 모델 서버리스 배포
이 예제에서는 SageMaker Canvas에서 훈련한 분류 모델을 서버리스 엔드포인트에 배포합니다. 해당 모델은 canvas-sample-shipping-logs.csv 데이터셋을 기반으로 훈련되었으며, 예측 요청은 텍스트/CSV 형식으로 엔드포인트에 전달됩니다.
모델 등록 및 승인
- SageMaker Studio에서 모델을 찾은 다음, 'Model Registry에 추가'를 선택합니다.
- 'Models' 탭에서 등록된 모델을 선택하고 클릭하여 '배포 승인' 상태로 변경하세요.
- 해당 모델에 포함된 컨테이너와 환경 변수는 추후 모델 생성에 사용됩니다.
모델 생성과 환경 변수 적용
모델 생성 시 Amazon ECR 이미지, 모델 아티팩트의 S3 URI, 환경 변수를 입력해야 합니다. 모든 환경 변수는 개별 줄로 설정되어야 하며 예시는 다음과 같습니다:
SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT: text/csv
SAGEMAKER_INFERENCE_OUTPUT: predicted_label
서버리스 엔드포인트 구성 및 생성
- Endpoint Configurations에서 서버리스를 선택하고 모델을 연결합니다.
- 이후 SageMaker 콘솔의 Endpoints 메뉴에서 새로운 엔드포인트를 생성하고 준비된 구성을 선택합니다.
API 호출 예시를 통한 활용
Jupyter Notebook에서 Python을 통해 배포된 엔드포인트에 예측 요청을 보낼 수 있으며, CSV 형식으로 데이터를 전달해 예측값과 확률을 수신할 수 있습니다. 이처럼 운영 자동화 수준에 상관없이, SageMaker Canvas 모델이 실시간 또는 변수 트래픽에서도 유연하게 서비스를 제공할 수 있도록 합니다.
자동화된 배포: AWS CloudFormation 템플릿 활용
또한 Amazon에서는 CloudFormation 템플릿을 통해 SageMaker 모델의 상태가 승인(Approved)으로 변경될 때 서버리스 엔드포인트를 자동 생성하도록 설정할 수 있습니다. 이 자동화 템플릿에는 IAM 역할, Lambda 함수 및 EventBridge 규칙이 포함되어 있어, 새로운 모델이 승인될 때마다 서버리스 환경으로 자동 배포됩니다.
운영비용 최적화 및 종료 설정
Canvas나 Jupyter 환경은 사용하지 않을 때 자동 종료 설정을 통해 비용을 최소화할 수 있습니다. 특히 실험이 끝난 후 Canvas 로그아웃 및 자동 중지 설정을 반드시 확인하세요.
결론
아마존 SageMaker Canvas와 Serverless Inference를 활용하면, 인프라에 대한 복잡한 설정 없이도 고성능 ML 모델을 빠르게 배포하여 실시간 또는 이벤트 기반 예측 서비스를 제공할 수 있습니다. 이 솔루션은 특히 비개발자나 소규모 팀에도 접근성을 크게 향상시키며, 자동화와 운영 편의성을 동시에 만족시켜줍니다. 앞으로도 Amazon SageMaker의 다양한 구성 요소를 활용해 노코드 모델 개발에서 코드 기반 전환까지 유연하게 활용해 보세요.
AI, Cloud 관련한 문의는 아래 연락처로 연락주세요!
(주)에이클라우드
이메일 : acloud@a-cloud.co.kr
회사 번호 : 02-538-3988
회사 홈페이지 : https://www.a-cloud.co.kr/
문의하기