메뉴 닫기

Amazon SageMaker 엔드포인트 부하 테스트 자동화 및 최적화를 위한 OLAF 활용 가이드

아마존 SageMaker AI 엔드포인트의 성능 최적화, OLAF로 자동화된 부하 테스트 활용하기

머신러닝과 생성형 AI 서비스의 상용화가 가속화되는 가운데, 모델을 실제 서비스에 배포한 뒤 성능을 정교하게 테스트하고 최적화하는 과정이 점차 중요해지고 있습니다. 특히 Amazon SageMaker를 사용해 LLM과 같은 대형 AI 모델을 배포할 경우, 다양한 GPU 인스턴스 조합과 테스트 환경을 실전처럼 구성하는 것이 핵심입니다.

이번 포스팅에서는 Observe.AI의 대화형 지능 플랫폼 사례를 통해 공개된 One Load Audit Framework(OLAF)이라는 오픈소스 도구를 활용해 SageMaker 엔드포인트의 성능을 효율적으로 테스트하고, 대규모 사용자 환경에서도 안정적인 동작을 확인하는 방법을 자세히 알아봅니다.

OLAF의 역할과 주요 기능

OLAF는 Locust 기반의 부하 테스트 프레임워크와 SageMaker API 연동 기능을 결합한 자동화 툴입니다. 복잡한 스크립트 작성이나 환경 구성 없이도 실시간 부하 테스트, 성능 모니터링, 시각화 대시보드, 그리고 테스트 이력 분석 CSV 파일 생성까지 한 번에 수행할 수 있습니다.

다음은 SageMaker에서 OLAF를 사용하는 아키텍처 개요입니다.
SageMaker와 OLAF를 연동한 전체 테스트 아키텍처 다이어그램

OLAF의 핵심 구성요소는 다음과 같습니다:

  • Locust: 동시 사용자 요청을 시뮬레이션하는 부하 생성 도구
  • Boto3: AWS SDK를 통해 SageMaker 엔드포인트로 요청 전송
  • 테스트 UI: 직관적인 웹 인터페이스로 테스트 구성 및 실행 제어
  • 대시보드: 서버 응답 시간, 메모리, CPU 사용률 실시간 시각화

Observe.AI는 OLAF를 도입한 이후 테스트 소요 시간을 수일에서 수시간으로 단축하고, GPU 인프라 선택 자동화, 테스트 리포트 백업 자동화까지 포함된 ML 배포 파이프라인을 구축했습니다.

OLAF 설치부터 배포 가이드까지

  1. AWS 접근 권한 생성

부하 테스트 실행 시, SageMaker API 호출을 위한 임시 자격 증명이 필요합니다. AWS CLI로 다음 명령어를 실행해 임시 cred를 받아야 합니다:

aws sts assume-role --role-arn <SageMaker Role ARN> --role-session-name olaf_session --duration-seconds 1800
  1. SageMaker 엔드포인트 배포

CloudFormation 템플릿을 활용하면 Google FLAN-T5 모델을 SageMaker에 신속히 업로드하고 배포할 수 있습니다. 이 자동화는 모델 이름, 엔드포인트, GPU 인스턴스 유형을 커스터마이징해 다양한 테스트 시나리오를 구성할 수 있게 해줍니다.

SageMaker AI 콘솔에 배포된 엔드포인트 상태 화면

  1. OLAF 설치와 실행

로컬 환경 또는 AWS EC2 인스턴스에 Docker 설치 후, 다음 단계를 실행합니다:

git clone https://github.com/Observeai-Research/olaf.git
cd olaf
docker build -t olaf .
docker run -p 80:8000 olaf

이후 브라우저에서 http://localhost 로 접속해 OLAF 대시보드에 로그인합니다(기본 ID/PW: olaf).

OLAF 초기화면과 엔드포인트 선택 인터페이스

  1. 부하 테스트 구성 및 실행

좌측 메뉴에서 SageMaker를 선택한 뒤,

  • SageMaker 엔드포인트 이름
  • AWS 자격 증명 (Access Key, Secret, Session Token)
  • 입력 쿼리 JSON (예: 프랑스어 번역 테스트 프롬프트)

를 입력하고, START LOAD SESSION을 클릭하여 테스트를 시작합니다.

엔드포인트 부하 테스트 설정 UI 화면

  1. 실시간 모니터링 및 응답 분석

LOAF는 Locust 대시보드를 통해 테스트 중 응답 지연시간(p50, p95), 총 요청 수, 실패율, 메모리/CPU 사용량 등을 즉시 확인할 수 있게 해줍니다.

응답 시간과 리소스 사용률 시각화 페이지

추가로 데이터 다운로드 옵션을 선택하면 CSV 파일로 리포트를 내보낼 수 있고, Amazon S3 자동 업로드 기능을 활용해 기록 보관 및 자동화된 백업도 가능합니다.

활용 시 고려사항 및 비용 효율성

부하 테스트는 SageMaker 엔드포인트에 따라 비용이 발생할 수 있으며, 테스트 환경(로컬 vs EC2)에 따라 네트워크 지연이 성능 지표에 영향을 줄 수 있습니다. 따라서 실제 서비스와 유사한 환경에서 테스트를 표준화하는 것이 중요합니다.

테스트 종료 후에는 다음 명령어로 리소스 정리도 필수입니다:

aws cloudformation delete-stack --stack-name flan-t5-endpoint-stack
docker stop <container_id>

마무리하며

OLAF는 Amazon SageMaker에서 머신러닝 모델을 자동화하고 배포 후 성능 최적화를 수행하는 데 있어서 매우 강력한 도구입니다. 복잡한 테스트 환경 구축 없이도 손쉽게 성능을 분석하고 비용 대비 최적의 인프라를 선택할 수 있게 도와줍니다.

이러한 테스트 자동화는 대규모 고객사 지원, 다양한 모델 배포 환경을 운영하는 기업에게 매우 중요한 경쟁력을 제공합니다. 이제는 단지 모델을 만드는 것을 넘어서, 어떻게 실전 서비스에 효율적으로 운영할지를 고민해야 할 시점입니다.

OLAF GitHub 저장소에서 설치 파일과 상세 문서를 확인하고, 여러분만의 SageMaker 최적화 자동 테스트를 시작해보세요.

https://aws.amazon.com/blogs/machine-learning/speed-meets-scale-load-testing-sagemakerai-endpoints-with-observe-ais-testing-tool/

AI, Cloud 관련한 문의는 아래 연락처로 연락주세요!

(주)에이클라우드
이메일 : acloud@a-cloud.co.kr
회사 번호 : 02-538-3988
회사 홈페이지 : https://www.a-cloud.co.kr/
문의하기


AI, Cloud 도입 상담 배너