Amazon SageMaker AI는 MLflow와의 통합을 강화하면서, 인프라 관리가 필요 없는 서버리스 MLflow 기능을 제공하여 AI 실험을 빠르게 시작할 수 있도록 지원합니다. 이 문서는 실제로 SageMaker Studio에서 서버리스 MLflow를 생성하고 사용하는 방법을 단계별로 정리한 기술 가이드입니다.

개요
Amazon SageMaker AI에서 제공하는 서버리스 MLflow는 다음과 같은 특성을 갖습니다:
- 인프라 서버 관리 및 용량 계획 불필요
- 자동 스케일링
- MLflow App 형태로 단순화된 실험 추적
- SageMaker AI 도구와 통합(MLOps, 파이프라인, 모델 레지스트리 등)
- MLflow 3.4와 향상된 추적 기능 제공
이 가이드는 SageMaker Studio 콘솔을 기준으로 설명합니다.
1. 사전 준비
요구 사항
- AWS 계정 및 결제 활성화
- SageMaker Studio가 설정된 도메인
- IAM 역할(Permissions)
- SageMaker 실행 권한
- S3 읽기/쓰기 권한
- MLflow App 생성 권한
- Amazon S3 버킷
- MLflow 아티팩트 저장 용도
아직 SageMaker Studio가 없다면 먼저 SageMaker Studio 도메인을 생성하고 권한이 올바른 IAM 역할이 연결되어 있어야 합니다.
2. 서버리스 MLflow App 생성
1) SageMaker Studio 콘솔 접속
AWS 관리 콘솔 → Amazon SageMaker → SageMaker Studio로 이동합니다.
2) MLflow 앱 선택
Studio 왼쪽 메뉴에서 Applications → MLflow를 선택합니다.
기존의 추적 서버보다는 MLflow App이라는 UI가 나타납니다.
3) MLflow App 생성

- Create MLflow App 버튼 클릭
- Name 입력 (예: mlflow-serverless-demo)
- IAM 역할 선택 또는 입력
- S3 버킷 경로 지정 (예: s3://your-bucket/mlflow/)
- 필요한 경우 Advanced settings에서 설정 조정
설정 후 생성하면 약 2분 이내에 생성이 완료됩니다.

생성 확인
생성이 완료되면 MLflow App의 Amazon Resource Name(ARN)이 표시됩니다.
이 ARN은 이후 Notebook이나 로컬 환경에서 MLflow 추적 URI로 활용합니다.
3. MLflow 연결 및 실험 추적 설정
1) MLflow Python SDK 설치
SageMaker Studio 노트북 또는 로컬 환경의 터미널에서 다음 명령으로 설치합니다:
pip install mlflow==3.4 sagemaker-mlflow
버전은 SageMaker에서 기본 지원하는 3.4 기준이며 자동 업그레이드가 가능합니다.
2) MLflow Tracking URI 설정
생성된 MLflow App ARN을 활용해 연결합니다:
import mlflow
mlflow.set_tracking_uri("arn:aws:sagemaker:<region>:<account-id>:mlflow-app/<your-mlflow-name>")
mlflow.set_experiment("my_experiment")
이제 MLflow API를 통해 실험 데이터를 기록하고 사용할 준비가 완료됩니다.
4. 실험 실행 및 기록
MLflow를 활용해 다음과 같이 매개변수, 메트릭, 아티팩트 등을 기록할 수 있습니다:
with mlflow.start_run():
mlflow.log_param("learning_rate", 0.01)
mlflow.log_metric("accuracy", 0.85)
이후 SageMaker Studio의 MLflow App UI에서 기록된 실험 데이터를 시각적으로 확인할 수 있습니다.

5. SageMaker 파이프라인 통합
서버리스 MLflow는 SageMaker Pipelines와 통합되어, 파이프라인 실행마다 자동으로 MLflow App이 생성되거나 연동되도록 설정할 수 있습니다.
이렇게 되면 파이프라인 성능 데이터도 자동으로 MLflow에 기록됩니다.
6. 중요 설정 옵션
| 옵션 | 설명 |
| IAM 역할 | SageMaker가 리소스에 접근할 수 있는 권한 |
| S3 버킷 | MLflow 아티팩트 및 로그 저장 |
| MLflow Version | 현재 서버리스는 MLflow 3.4를 기본 제공 |
| Cross-account sharing | AWS RAM을 통해 다른 계정과 MLflow 공유까지 가능 |
| Automatic scaling | 실험 부하에 따라 자동으로 서버리스 자원 조정 |
이 중 IAM 정책과 S3 버킷 경로는 실험 환경에 맞게 반드시 사전에 검토해야 합니다.
7. 운영 및 주의 사항
자동 업그레이드
- MLflow는 서비스 레벨에서 자동 업그레이드가 적용됩니다.
- 버전 호환성으로 인한 수동 마이그레이션 작업이 줄어듭니다.
비용
- 서버리스 MLflow 자체는 추가 요금 없음으로 발표되었지만 SageMaker 사용량, S3 저장 비용은 별도 청구됩니다.
리전 지원
- 여러 AWS 리전에서 지원되며 필요한 리전에서 활성화 상태인지 확인이 필요합니다.