빠른 시작: Studio에서 Amazon EMR 클러스터를 시작할 SageMaker 샌드박스 도메인 생성 - Amazon SageMaker

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

빠른 시작: Studio에서 Amazon EMR 클러스터를 시작할 SageMaker 샌드박스 도메인 생성

이 섹션에서는 Amazon SageMaker Studio에서 전체 테스트 환경을 빠르게 설정하는 방법을 안내합니다. 사용자가 Studio에서 직접 새 Amazon EMR 클러스터를 시작할 수 있는 새 Studio 도메인을 생성합니다. 이 단계에서는 Amazon EMR 클러스터에 연결하여 실행을 시작할 수 있는 예제 노트북을 제공합니다.Spark 워크로드. 이 노트북을 사용하면 Amazon EMR Spark 분산 처리 및 OpenSearch 벡터 데이터베이스를 사용하여 Retrieval Augmented Generation System(RAG)을 빌드할 수 있습니다.

참고

시작하려면 관리자 권한이 있는 AWS Identity and Access Management (IAM) 사용자 계정을 사용하여 AWS Management Console에 로그인합니다. 계정에 가입하고 관리 액세스 권한이 있는 사용자를 생성하는 방법에 대한 AWS 자세한 내용은 섹션을 참조하세요Amazon SageMaker 사전 조건 완료.

1단계: Studio에서 Amazon EMR 클러스터를 시작하기 위한 SageMaker 도메인 생성

다음 단계에서 AWS CloudFormation 스택을 적용하여 새 SageMaker 도메인을 자동으로 생성합니다. 또한 스택은 사용자 프로필을 생성하고 필요한 환경 및 권한을 구성합니다. SageMaker 도메인은 Studio에서 Amazon EMR 클러스터를 직접 시작할 수 있도록 구성됩니다. 이 예제에서는 Amazon EMR 클러스터가 인증 SageMaker 이 없는 계정과 동일한 AWS 계정에 생성됩니다. get_started GitHub 리포지토리에서 Kerberos와 같은 다양한 인증 방법을 지원하는 추가 AWS CloudFormation 스택을 찾을 수 있습니다.

참고

SageMaker 는 AWS 계정당 5개의 Studio 도메인을 AWS 리전 기본적으로 허용합니다. 스택을 생성하기 전에 계정에 리전에 도메인이 4개 이하인지 확인하세요.

Studio에서 Amazon EMR 클러스터를 시작하기 위한 SageMaker 도메인을 설정하려면 다음 단계를 따르세요.
  1. sagemaker-studio-emr GitHub 리포지토리에서 이 AWS CloudFormation 템플릿의 원시 파일을 다운로드합니다.

  2. AWS CloudFormation 콘솔로 이동: https://console.aws.amazon.com/cloudformation

  3. 스택 생성을 선택하고 드롭다운 메뉴에서 새 리소스 사용(표준)을 선택합니다.

  4. 1단계:

    1. 템플릿 준비 섹션에서 기존 템플릿 선택을 선택합니다.

    2. 템플릿 지정 섹션에서 템플릿 파일 업로드를 선택합니다.

    3. 다운로드한 AWS CloudFormation 템플릿을 업로드하고 다음 를 선택합니다.

  5. 2단계에서 스택 이름을 입력한 SageMakerDomainName 다음 다음을 선택합니다.

  6. 3단계에서 모든 기본값을 유지하고 다음을 선택합니다.

  7. 4단계에서 확인란을 선택하여 리소스 생성을 확인하고 스택 생성을 선택합니다. 이렇게 하면 계정 및 리전에 Studio 도메인이 생성됩니다.

2단계: Studio UI에서 새 Amazon EMR 클러스터 시작

다음 단계에서는 Studio UI에서 새 Amazon EMR 클러스터를 생성합니다.

  1. 의 SageMaker 콘솔로 이동하여 왼쪽 메뉴에서 도메인을 https://console.aws.amazon.com/sagemaker/ 선택합니다.

  2. 도메인 이름 GenerativeAIDomain를 클릭하여 도메인 세부 정보 페이지를 엽니다.

  3. 사용자 프로필 에서 Studio를 시작합니다genai-user.

  4. 왼쪽 탐색 창에서 데이터로 이동한 다음 Amazon EMR 클러스터로 이동합니다.

  5. Amazon EMR 클러스터 페이지에서 생성을 선택합니다. AWS CloudFormation 스택에서 생성한 SageMaker Studio 도메인 인증 없음 EMR 템플릿을 선택한 다음 다음을 선택합니다.

  6. 새 Amazon EMR 클러스터의 이름을 입력합니다. 선택적으로 코어 및 마스터 노드의 인스턴스 유형, 유휴 제한 시간 또는 코어 노드 수와 같은 다른 파라미터를 업데이트합니다.

  7. 리소스 생성을 선택하여 새 Amazon EMR 클러스터를 시작합니다.

    Amazon EMR 클러스터를 생성한 후 EMR 클러스터 페이지의 상태를 따릅니다. 상태가 로 변경되면 Amazon EMR 클러스터를 Studio에서 사용할 준비가 된 Running/Waiting것입니다.

3단계: Amazon EMR 클러스터에 JupyterLab 노트북 연결

다음 단계에서는 의 노트북을 실행 중인 Amazon EMR 클러스터 JupyterLab 에 연결합니다. 이 예제에서는 Amazon EMR Spark 분산 처리 및 OpenSearch 벡터 데이터베이스를 사용하여 Retrieval Augmented Generation(RAG) 시스템을 구축할 수 있는 노트북을 가져옵니다.

  1. 시작 JupyterLab

    Studio에서 JupyterLab 애플리케이션을 시작합니다.

  2. 프라이빗 스페이스 생성

    JupyterLab 애플리케이션에 대한 공간을 생성하지 않은 경우 JupyterLab 공간 생성을 선택합니다. 공백의 이름을 입력하고 공백을 프라이빗 로 유지합니다. 다른 모든 설정을 기본값으로 두고 공간 생성 을 선택합니다.

    그렇지 않으면 JupyterLab 공간을 실행하여 애플리케이션을 시작합니다 JupyterLab.

  3. 추론을 위한 LLM 및 임베딩 모델 배포
    • 상단 메뉴에서 파일 , 새로 만들기 , 터미널 을 차례로 선택합니다.

    • 터미널에서 다음 명령을 실행합니다.

      wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-00-setup/Lab_0_Warm_Up_Deploy_EmbeddingModel_Llama2_on_Nvidia.ipynb mkdir AWSGuides cd AWSGuides wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-03-rag/AWSGuides/AmazonSageMakerDeveloperGuide.pdf wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-03-rag/AWSGuides/EC2DeveloperGuide.pdf wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-03-rag/AWSGuides/S3DeveloperGuide.pdf

      이렇게 하면 Lab_0_Warm_Up_Deploy_EmbeddingModel_Llama2_on_Nvidia.ipynb 노트북이 로컬 디렉터리로 검색되고 3개의 PDF 파일이 로컬 AWSGuides 폴더에 다운로드됩니다.

    • 를 열고lab-00-setup/Lab_0_Warm_Up_Deploy_EmbeddingModel_Llama2_on_Nvidia.ipynb, Python 3 (ipykernel) 커널을 유지하고, 각 셀을 실행합니다.

      주의

      Llama 2 라이선스 계약 섹션에서 계속하기 EULA 전에 Llama2를 수락해야 합니다.

      노트북은 추론을 ml.g5.2xlarge 위해 에 두 개의 모델 Llama 2all-MiniLM-L6-v2 Models를 배포합니다.

      모델을 배포하고 엔드포인트를 생성하는 데 시간이 걸릴 수 있습니다.

  4. 기본 노트북 열기

    에서 터미널을 JupyterLab열고 다음 명령을 실행합니다.

    cd .. wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-03-rag/Lab_3_RAG_on_SageMaker_Studio_using_EMR.ipynb

    의 왼쪽 패널에 추가 Lab_3_RAG_on_SageMaker_Studio_using_EMR.ipynb 노트북이 표시됩니다 JupyterLab.

  5. PySpark 커널 선택

    Lab_3_RAG_on_SageMaker_Studio_using_EMR.ipynb 노트북을 열고 SparkMagic PySpark 커널을 사용하고 있는지 확인합니다. 노트북의 오른쪽 상단에서 커널을 전환할 수 있습니다. 현재 커널 이름을 선택하여 커널 선택 모달을 연 다음 를 선택합니다SparkMagic PySpark.

  6. 노트북을 클러스터에 연결
    1. 노트북 오른쪽 상단에서 클러스터 를 선택합니다. 이 작업을 수행하면 액세스 권한이 있는 실행 중인 모든 클러스터를 나열하는 모달 창이 열립니다.

    2. 클러스터를 선택한 다음 연결을 선택합니다. 새 자격 증명 유형 선택 모달 창이 열립니다.

    3. 자격 증명 없음을 선택한 다음 연결 을 선택합니다.

      노트북에 대한 JupyterLab Amazon EMR 자격 증명 선택을 보여주는 모달입니다.
    4. 노트북 셀이 자동으로 채워지고 실행됩니다. 노트북 셀은 Amazon EMR 클러스터에 연결하는 기능을 제공하는 sagemaker_studio_analytics_extension.magics 확장을 로드합니다. 그런 다음 %sm_analytics 매직 명령을 사용하여 Amazon EMR 클러스터 및 Spark 애플리케이션에 대한 연결을 시작합니다.

      참고

      Amazon EMR 클러스터에 대한 연결 문자열에 인증 유형이 로 설정되어 있는지 확인합니다None. 이는 --auth-type None 다음 예제의 값으로 표시됩니다. 필요한 경우 필드를 수정할 수 있습니다.

      %load_ext sagemaker_studio_analytics_extension.magics %sm_analytics emr connect --verify-certificate False --cluster-id your-cluster-id --auth-type None --language python
    5. 연결을 성공적으로 설정하면 연결 셀 출력 메시지에 클러스터 ID, YARN 애플리케이션 ID 및 에 대한 링크를 포함한 SparkSession 세부 정보가 표시됩니다.Spark 를 모니터링하기 위한 UI Spark 작업.

Lab_3_RAG_on_SageMaker_Studio_using_EMR.ipynb 노트북을 사용할 준비가 되었습니다. 이 예제 노트북은 LangChain 및 를 사용하여 RAG 시스템을 구축하기 위해 분산 PySpark 워크로드를 실행합니다 OpenSearch.

4단계: AWS CloudFormation 스택 정리

완료 후에는 두 엔드포인트를 종료하고 AWS CloudFormation 스택을 삭제하여 지속적인 요금을 방지해야 합니다. 스택을 삭제하면 스택에서 프로비저닝한 모든 리소스가 정리됩니다.

AWS CloudFormation 스택 작업을 마쳤을 때 스택을 삭제하려면
  1. AWS CloudFormation 콘솔로 이동: https://console.aws.amazon.com/cloudformation

  2. 삭제할 스택을 선택합니다. 이름으로 검색하거나 스택 목록에서 찾을 수 있습니다.

  3. 삭제 버튼을 클릭하여 스택 삭제를 완료한 다음 삭제를 다시 클릭하여 스택에서 생성된 모든 리소스가 삭제됨을 확인합니다.

    스택 삭제가 완료될 때까지 기다립니다. 몇 분 정도 걸릴 수 있습니다. AWS CloudFormation 는 스택 템플릿에 정의된 모든 리소스를 자동으로 정리합니다.

  4. 스택에서 생성된 모든 리소스가 삭제되었는지 확인합니다. 예를 들어 남은 Amazon EMR 클러스터가 있는지 확인합니다.

모델의 API 엔드포인트를 제거하려면
  1. SageMaker 콘솔로 이동합니다https://console.aws.amazon.com/sagemaker/.

  2. 왼쪽 탐색 창에서 추론을 선택한 다음 엔드포인트를 선택합니다.

  3. 엔드포인트를 선택한 hf-allminil6v2-embedding-ep 다음 작업 드롭다운 목록에서 삭제를 선택합니다. 엔드포인트 에 대해 단계를 반복합니다meta-llama2-7b-chat-tg-ep.