메뉴 닫기

Amazon SageMaker HyperPod로 대규모 AI 모델 훈련과 배포 자동화하기

Amazon SageMaker HyperPod CLI와 SDK를 활용한 대규모 AI 모델 훈련 및 배포 자동화 가이드

<h3>소개</h3>
<p>
    AI 모델의 성능 발전에 따라 수십억 개 파라미터를 포함한 대규모 언어 모델(LLM)의 훈련과 배포가 필수가 되고 있습니다.
    그러나 이를 위한 분산 훈련 환경 구성은 복잡한 인프라 구성 및 작업자동화가 요구되어 ML 엔지니어 및 데이터 사이언티스트에게 큰 부담으로 작용하곤 했습니다.
    Amazon SageMaker HyperPod는 이러한 부담을 줄이기 위한 분산 훈련 및 모델 추론 전용 환경으로, 최근 출시된 SageMaker HyperPod CLI와 SDK를 활용하면 대규모 모델의 훈련과 배포 과정을 단순화 및 자동화할 수 있습니다.
</p>

<h3>본론</h3>

<h4>HyperPod CLI와 SDK 개요</h4>
<p>
    SageMaker HyperPod는 CPU 및 GPU 리소스를 클러스터 형태로 제공하고, 여기에 최적화된 분산 학습 및 추론 기능을 CLI(Command Line Interface)와 Python SDK로 손쉽게 제어할 수 있도록 구성되어 있어,
    인프라 지식이 부족한 사용자도 빠르게 실험하고 반복이 가능합니다.
</p>

<h4>도입 사전 요건</h4>
<ul>
    <li>AWS 계정 및 SageMaker HyperPod, S3, FSx for Lustre에 대한 권한</li>
    <li>8개의 ml.g5.8xlarge 인스턴스로 구성된 EKS 기반 HyperPod 클러스터</li>
    <li>로컬 환경에 Python (3.8~3.11), AWS CLI, sagemaker-hyperpod 패키지 설치</li>
    <li>훈련/추론 오퍼레이터의 클러스터 내 설치</li>
</ul>

<h4>HyperPod CLI 설치 및 확인</h4>
<code>pip install sagemaker-hyperpod</code><br>
<code>hyp</code> 명령어로 CLI 설치 여부를 확인할 수 있습니다.

<h4>클러스터 연결 및 설정</h4>
<p>특정 클러스터를 사용하기 위해 다음 명령어로 연결합니다:</p>
<code>hyp list-cluster</code><br>
<code>hyp set-cluster-context --cluster-name ml-cluster</code>

<h4>CLI를 이용한 FSDP 기반 Meta Llama 3.1 모델 훈련 자동화</h4>
<p>
    PyTorch 기반의 모델 훈련 작업을 CLI 명령어로 제출하며, Fully Sharded Data Parallel(FSDP) 전략으로 효과적인 분산 학습을 실현합니다.
    이미지 빌드 → Amazon ECR 푸시 → CLI 명령어로 훈련 작업 제출 단계를 거칩니다.
</p>

<p>Docker 이미지 생성:</p>
<code>
    docker build -f Dockerfile -t ${REGISTRY}fsdp:pytorch2.7.1 .
</code>

<p>훈련 작업 제출:</p>
<code>
    hyp create hyp-pytorch-job --job-name fsdp-llama3-1-8b ...
</code>

<p>모델 학습이 완료되면 다음과 같은 결과가 출력됩니다:</p>
<pre>
    Successfully submitted HyperPodPytorchJob 'fsdp-llama3-1-8b'!
</pre>

<p>훈련 상태 및 로그 확인도 CLI 상에서 간단히 가능합니다.</p>

<h4>SDK를 활용한 훈련 환경 구성 예시</h4>
<p>보다 유연한 워크플로우가 필요한 경우, Python SDK를 이용해 객체지향적으로 훈련 작업을 구성할 수 있습니다.</p>

<p>예시 코드:</p>
<pre>
    from sagemaker.hyperpod.training import HyperPodPytorchJob
    ...
    pytorch_job.create()
</pre>

<h4>모델 배포 자동화 (JumpStart 및 커스텀 모델)</h4>
<p>
    훈련 완료 모델은 CLI 또는 SDK를 이용해 추론용으로 간편하게 배포할 수 있습니다.
    CLI의 경우 JumpStart 모델 또는 Amazon S3, FSx로부터 커스텀 모델을 불러올 수 있습니다.
</p>

<p>JumpStart 모델 배포 예시:</p>
<code>
    hyp create hyp-jumpstart-endpoint --model-id deepseek-llm-r1-distill-qwen-1-5b --endpoint-name ...
</code>

<img src="https://upload.wikimedia.org/wikipedia/commons/f/f5/Amazon_SageMaker_HyperPod_Diagram.png" alt="SageMaker HyperPod 아키텍처 다이어그램">

<p>커스텀 모델 배포 예시:</p>
<code>
    hyp create hyp-custom-endpoint --model-name tinyllama --model-source-type s3 ...
</code>

<p>
    배포 이후에는 hyp invoke 명령어를 통해 손쉽게 추론 테스트를 수행할 수 있으며, GPU 자원 모니터링, 배포 파드 자동 로그 확인 등도 CLI로 대응 가능합니다.
</p>

<h4>디버깅 및 모니터링 기능</h4>
<p>
    CLI 및 SDK는 훈련/배포 작업에 대해 다양한 디버깅 기능을 제공합니다. 로그 확인, Grafana/Prometheus 기반 메트릭 시각화,
    운영자 로그 접근 등 현업 운영에 필요한 모니터링과 문제 분석이 가능합니다.
</p>

<h3>결론</h3>
<p>
    SageMaker HyperPod CLI와 SDK는 대규모 분산 모델 학습 및 배포를 단순화하며, 자동화된 실험에서부터
    프로덕션 시스템 구축까지 이어지는 워크플로우를 완성합니다.
    배포 가이드, 운영 툴, 그리고 직관적인 CLI는 AI, LLM 시대의 필수 인프라로 자리매김하고 있습니다. 즉시 사용할 수 있고,
    구성 유연성이 높으며, 오픈소스 기반 예제까지 제공되어 AI 모델 개발의 생산성을 급격히 향상시켜줄 수 있습니다.
</p>

[1] https://aws.amazon.com/blogs/machine-learning/train-and-deploy-models-on-amazon-sagemaker-hyperpod-using-the-new-hyperpod-cli-and-sdk/

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

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


AI, Cloud 도입 상담 배너