Vertex AI의 Ray 개요

Ray는 AI 및 Python 애플리케이션을 확장하기 위한 오픈소스 프레임워크입니다. Ray는 머신러닝(ML) 워크플로에 대해 분산형 계산과 병렬 처리를 수행하기 위한 인프라를 제공합니다.

Ray 및 Vertex AI 비교

이미 Ray를 사용하고 있으면 같은 오픈소스 Ray 코드를 사용하여 프로그램을 작성하고 최소한의 변경으로 Vertex AI에서 애플리케이션을 개발할 수 있습니다. 그런 다음 Vertex AI를 머신러닝 워크플로의 일부로 Vertex AI PredictionBigQuery와 같은 다른 Google Cloud 서비스와 통합할 수 있습니다.

이미 Vertex AI를 사용 중이고 컴퓨팅 리소스를 관리하는 간단한 방법이 필요한 경우 Ray 코드를 사용하여 학습을 확장할 수 있습니다.

Vertex AI에서 Ray를 사용하기 위한 워크플로

Colab Enterprise 및 Python용 Vertex AI SDK를 사용하여 Ray 클러스터에 연결합니다.

단계 설명
1. Vertex AI의 Ray 설정 Google 프로젝트를 설정하고 Ray 클라이언트의 기능이 포함된 Python용 Vertex AI SDK 버전을 설치하고 VPC 피어링 네트워크를 설정합니다(선택사항).
2. Vertex AI에 Ray 클러스터 만들기 Vertex AI에 Ray 클러스터를 만듭니다. Vertex AI 관리자 역할이 필요합니다.
3. Vertex AI에서 Ray 애플리케이션 개발 Vertex AI의 Ray 클러스터에 연결하고 애플리케이션을 개발합니다. Vertex AI 사용자 역할이 필요합니다.
4. (선택사항) BigQuery와 함께 Vertex AI에서 Ray 사용 BigQuery로 데이터를 읽고 쓰고 변환합니다.
5. (선택사항) Vertex AI에 모델 배포 및 예측 가져오기 모델을 Vertex AI 온라인 엔드포인트에 배포하고 예측을 가져옵니다.
6. Vertex AI에서 Ray 클러스터 모니터링하기 Cloud Logging에서 생성된 로그를 모니터링하고 Cloud Monitoring에서 측정항목을 모니터링합니다.
7. Vertex AI에서 Ray 클러스터 삭제 불필요한 요금 청구를 방지하기 위해 Vertex AI에서 Ray 클러스터를 삭제합니다.

개요

Ray 클러스터는 중요한 ML 워크로드 또는 성수기에 용량 가용성을 보장하기 위해 내장되어 있습니다. 학습 서비스가 작업 완료 후에 리소스를 해제하는 커스텀 작업과 달리 Ray 클러스터는 삭제될 때까지 계속 사용할 수 있습니다.

참고: 다음 시나리오에서는 장기 실행 Ray 클러스터를 사용하세요.

  • 동일한 Ray 작업을 여러 번 제출하는 중이고 동일한 장기 실행 Ray 클러스터에서 작업을 실행하여 데이터 및 이미지 캐싱을 활용할 수 있습니다.
  • 실제 처리 시간이 작업 시작 시간보다 짧은 단기 Ray 작업을 여러 개 실행하는 경우 장기 실행 클러스터를 사용하는 것이 좋습니다.

Vertex AI의 Ray 클러스터는 공개 또는 비공개 연결로 설정할 수 있습니다. 다음 다이어그램은 Vertex AI의 Ray에 대한 아키텍처와 워크플로를 보여줍니다. 자세한 내용은 공개 또는 비공개 연결을 참고하세요.

공개 연결이 있는 아키텍처

Vertex AI의 Ray 공개 연결

  1. 다음 옵션을 사용하여 Vertex AI에 Ray 클러스터를 만듭니다.

    a. Google Cloud 콘솔을 사용하여 Vertex AI에 Ray 클러스터를 만듭니다.

    b. Python용 Vertex AI SDK를 사용하여 Vertex AI에 Ray 클러스터를 만듭니다.

  2. 다음 옵션을 사용하여 대화형 개발을 위해 Vertex AI의 Ray 클러스터에 연결합니다.

    a. Google Cloud 콘솔에서 Colab Enterprise를 사용하여 원활하게 연결합니다.

    b. 공개 인터넷에 액세스할 수 있는 Python 환경을 사용합니다.

  3. Vertex AI의 Ray 클러스터에서 애플리케이션을 개발하고 모델을 학습시킵니다.

    • 원하는 환경(Colab Enterprise 또는 Python 노트북)에서 Python용 Vertex AI SDK를 사용합니다.

    • 원하는 환경을 사용하여 Python 스크립트를 작성합니다.

    • Python용 Vertex AI SDK, Ray Job CLI 또는 Ray Job Submission API를 사용하여 Vertex AI의 Ray 클러스터에 Ray 작업을 제출합니다.

  4. 학습된 모델을 온라인 Vertex AI 엔드포인트에 배포하여 실시간 예측을 실행합니다.

  5. BigQuery를 사용하여 데이터를 관리합니다.

VPC를 사용하는 아키텍처

다음 다이어그램에서는 Google Cloud 프로젝트와 VPC 네트워크(선택사항)를 설정한 후 Vertex AI의 Ray에 대한 아키텍처와 워크플로를 보여줍니다.

Vertex AI VPC의 Ray

  1. (a) Google 프로젝트와 (b) VPC 네트워크를 설정합니다.

  2. 다음 옵션을 사용하여 Vertex AI에 Ray 클러스터를 만듭니다.

    a. Google Cloud 콘솔을 사용하여 Vertex AI에 Ray 클러스터를 만듭니다.

    b. Python용 Vertex AI SDK를 사용하여 Vertex AI에 Ray 클러스터를 만듭니다.

  3. 다음 옵션을 사용하여 VPC 피어링된 네트워크를 통해 Vertex AI의 Ray 클러스터에 연결합니다.

  4. 다음 옵션을 사용하여 애플리케이션을 개발하고 Vertex AI의 Ray 클러스터에서 모델을 학습시킵니다.

    • 원하는 환경(Colab Enterprise 또는 Vertex AI Workbench 노트북)에서 Vertex AI SDK for Python을 사용합니다.

    • 원하는 환경을 사용하여 Python 스크립트를 작성합니다. Vertex AI SDK for Python, Ray Job CLI 또는 Ray 대시보드를 사용하여 Ray 작업을 Vertex AI의 Ray 클러스터에 제출합니다.

  5. 학습된 모델을 온라인 Vertex AI 엔드포인트에 배포하여 예측합니다.

  6. BigQuery를 사용하여 데이터를 관리합니다.

가격 책정

Vertex AI의 Ray 가격은 다음과 같이 계산됩니다.

  • 사용하는 컴퓨팅 리소스 요금은 Vertex AI의 Ray 클러스터를 만들 때 선택한 머신 구성에 따라 청구됩니다. Vertex AI의 Ray 가격 책정은 가격 책정 페이지를 참고하세요.

  • Ray 클러스터의 경우 RUNNING 및 UPDATING 상태 중에만 비용이 청구됩니다. 다른 주에는 판매세가 부과되지 않습니다. 청구 금액은 현재의 실제 클러스터 크기를 기준으로 합니다.

  • Vertex AI의 Ray 클러스터를 사용하여 태스크를 수행하면 로그가 자동으로 생성되고 Cloud Logging 가격 책정에 따라 요금이 청구됩니다.

  • 온라인 예측을 위해 모델을 엔드포인트에 배포하는 경우 Vertex AI 가격 책정 페이지의 '예측 및 설명' 섹션을 참조하세요.

  • Vertex AI의 Ray와 함께 BigQuery를 사용하는 경우 BigQuery 가격 책정을 참조하세요.

다음 단계