메뉴 닫기

Amazon SageMaker Ground Truth 프라이빗 워크포스를 CDK로 자동 배포하는 방법

아마존 SageMaker Ground Truth에 프라이빗 워크포스를 CDK로 자동 구성하는 방법

최근 기업들은 점차적으로 머신러닝(ML) 데이터 라벨링 파이프라인을 미세 조정하고 있습니다. 특히 보안과 개인정보 보호를 강조하는 환경에서는 외부 작업자보다는 통제 가능한 프라이빗 워크포스를 운영하는 것이 필요합니다. 이번 글에서는 AWS CDK를 활용하여 Amazon SageMaker Ground Truth에서 프라이빗 워크포스를 자동으로 배포하는 방법을 안내합니다. 이 작업은 주로 Amazon Cognito와의 통합을 기반으로 하며, 인프라 코드(IaC)의 장점을 살리면서 높은 확장성과 안정성을 제공합니다.

프라이빗 워크포스 구축 솔루션 개요

Amazon SageMaker Ground Truth는 다양한 워크포스 유형을 지원하지만, 보안 중심의 조직은 자신의 사용자를 등록하고 관리할 수 있는 프라이빗 워크포스를 활용합니다. AWS 콘솔에서도 해당 설정이 가능하나, IaC 방식의 자동화를 하면 다음과 같은 이점이 있습니다.

  • 자동화된 일관 배포
  • 인적 오류 최소화
  • 운영 효율성 향상

하지만 Amazon SageMaker의 프라이빗 워크포스는 Amazon Cognito와의 상호 의존성으로 인해 구성 순서가 복잡합니다. 이 문제를 해결하기 위해 CDK와 CloudFormation 커스텀 리소스를 조합하여 종속성 간의 흐름을 제어하는 것이 핵심입니다.

솔루션 아키텍처 및 활용 흐름

이 솔루션은 하나의 스택에서 복수 리소스를 통해 구성되며 Amazon Cognito 사용자 풀, 앱 클라이언트, WAF, IAM 역할, SageMaker 프라이빗 워크포스 등으로 구성됩니다.

Amazon Cognito와 SageMaker Ground Truth 통합 아키텍처 다이어그램

프라이빗 워크포스 구축 순서 개요

  1. Amazon Cognito 사용자 풀 생성: 사용자의 가입, 로그인, 다단계 인증을 처리하며, 이메일 초대 기능을 통해 사용자 초대를 진행합니다.
  2. 앱 클라이언트 초기 생성: 콜백 URL은 프라이빗 워크포스 생성 이후에만 알 수 있어 임시 URL을 사용합니다.
  3. Parameter Store에 도메인 접두어 저장: 도메인 일관성을 보장하기 위해 전 배포 간 유지해야 합니다.
  4. 사용자 풀 도메인 구성: 변경이 어려우므로 초기에 정확한 도메인을 설정해야 합니다.
  5. IAM 역할 설정: CloudFormation과 SageMaker API 호출을 위해 필요합니다.
  6. 프라이빗 워크포스 생성: 사용자의 라벨링 포털 및 인증 연동을 관리합니다.
    7~10. 사용자 풀 앱 클라이언트 및 도메인, 초대 이메일 업데이트: 커스텀 Lambda 함수로 구성 종속성을 해결합니다.
  7. 사용자 생성 및 초대 자동화: 이메일로 초대장을 발송하고, 사용자는 포털 가입을 통해 라벨링 작업을 시작할 수 있습니다.

사용자 초대 및 인증 흐름

이미 설정된 인프라를 통해 사용자는 이메일 초대를 받고, Cognito 도메인을 통해 인증한 뒤 라벨링 포털에 접근합니다.

초대 이메일 기반 인증과 로그인 프로세스 다이어그램

프라이빗 워크포스 UI 예시

포털에 로그인한 사용자는 자신에게 할당된 라벨링 작업을 실시간으로 확인하고 수행할 수 있습니다.

SageMaker Ground Truth 라벨링 포털 예시 화면

사용 예시: CDK를 통한 배포 가이드

사전 요구 조건:

  • AWS 계정 및 CDK 환경 부트스트랩 완료
  • CDK 2.178.1 이상
  • Python 3.13 이상, AWS CLI 설치
  • 다단계 인증 MFA 앱

배포 방법:

  1. GitHub 리포지토리 클론: https://github.com/aws-samples/sample-sagemaker-workforce-cdk-python
  2. README.md의 가이드를 따라 CDK deploy 실행
  3. AWS CloudFormation 콘솔에서 Workforce 스택 확인

활용 팁 및 베스트 프랙티스

  • 사용자 도메인 커스터마이징: Amazon Cognito 기본 도메인 외에 전용 도메인 사용 가능
  • 보안 강화: MFA, 외부 ID 제공자(Inkognito, Google 등) 연동
  • VPC 설정: 라벨링 시스템을 내부 네트워크로 한정
  • WAF 커스터마이징: 웹 ACL 정책 활용
  • CI/CD 통합: 자동화 및 다중 환경 구성 테스팅 가능

종료 및 리소스 정리 방법

CloudFormation 콘솔에서 Workforce 스택 삭제 또는 CDK CLI의 cdk destroy 명령어로 리소스 정리 가능

결론

ML 프로젝트에서 데이터 라벨링의 품질은 전체 모델 성능에 직접적으로 영향을 줍니다. 본 솔루션은 AWS CDK와 CloudFormation을 이용해 Amazon SageMaker Ground Truth에서 보안 강화된 프라이빗 워크포스를 자동으로 구성하는 방안을 제시하였습니다. 배포 자동화, 구성 일관성 유지 등 구축과 운영 전반에 걸쳐 탁월한 효율성을 높일 수 있습니다. 이제 여러분만의 ML 워크포스를 구축하고 체계적인 라벨링 워크플로우를 시작해보세요.

https://aws.amazon.com/blogs/machine-learning/create-a-private-workforce-on-amazon-sagemaker-ground-truth-with-the-aws-cdk/

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

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


AI, Cloud 도입 상담 배너