google-cloud-aiplatform SDK의 CustomJob 클래스를 통해 Vertex AI와 연동됩니다. Launch 큐 설정으로 CustomJob의 매개변수를 제어할 수 있습니다. Google Cloud 외부의 비공개 레지스트리에서 이미지를 가져오도록 Vertex AI를 설정할 수는 없습니다. 따라서 W&B Launch와 함께 Vertex AI를 사용하려면 컨테이너 이미지를 Google Cloud 또는 공개 레지스트리에 저장해야 합니다. Vertex 작업에서 컨테이너 이미지에 액세스할 수 있도록 하는 방법은 Vertex AI 문서를 참조하세요.
사전 요구 사항
Launch 큐를 설정하기 전에 다음 Google Cloud 리소스와 권한이 준비되어 있는지 확인하세요:- Vertex AI API가 활성화된 Google Cloud 프로젝트를 생성하거나 액세스하세요. API 활성화에 대한 자세한 내용은 Google Cloud API Console 문서를 참고하세요.
- Google Cloud Artifact Registry 저장소를 생성하세요. Vertex에서 실행할 이미지를 저장하는 데 사용합니다. 자세한 내용은 Google Cloud Artifact Registry 문서를 참고하세요.
- 스테이징 GCS 버킷을 생성하세요. Vertex AI가 메타데이터를 저장하는 데 사용합니다. 스테이징 버킷으로 사용하려면 이 버킷은 Vertex AI 워크로드와 동일한 리전에 있어야 합니다. 스테이징과 구축 컨텍스트에 동일한 버킷을 사용할 수 있습니다.
- 서비스 계정을 생성하세요. Vertex AI 작업을 시작하는 데 필요한 권한을 부여하세요. 서비스 계정에 권한을 부여하는 방법에 대한 자세한 내용은 Google Cloud IAM 문서를 참고하세요.
- 서비스 계정에 Vertex 작업을 관리할 권한을 부여하세요. 필요한 권한은 다음 table과 같습니다:
Vertex AI 워크로드가 기본 서비스 계정이 아닌 서비스 계정의 ID를 사용하도록 하려면 서비스 계정 생성 및 필요한 권한에 대한 안내를 Vertex AI 문서에서 참고하세요. Launch 큐 설정의
spec.service_account 필드를 사용하여 W&B run에 사용할 맞춤형 서비스 계정을 선택하세요.Vertex AI용 큐 설정
Google Cloud 사전 요구 사항을 갖췄다면, 다음 단계는 W&B Launch가 Vertex AI 작업을 제출하는 데 사용할 큐 설정을 계획하는 것입니다. Vertex AI 리소스의 큐 설정은 Vertex AI Python SDK의CustomJob 생성자와 CustomJob의 run 방법에 전달할 입력을 지정합니다. 리소스 설정은 spec 및 run 키 아래에 저장됩니다:
spec키에는 Vertex AI Python SDK의CustomJob생성자에 전달할 명명된 인수의 값이 포함됩니다.run키에는 Vertex AI Python SDK의CustomJob클래스에 있는run방법에 전달할 명명된 인수의 값이 포함됩니다.
spec.worker_pool_specs 목록에서 맞춤 설정합니다. 워커 풀 사양은 작업을 실행하는 워커 그룹을 정의합니다. 기본 설정의 워커 사양은 가속기가 없는 n1-standard-4 머신 한 대를 요청합니다. 필요에 맞게 머신 유형, 가속기 유형 및 수를 변경할 수 있습니다.
사용 가능한 머신 유형 및 가속기 유형에 대한 자세한 내용은 Vertex AI 문서를 참조하세요.
큐 생성
큐 설정 계획을 세웠다면 이제 W&B App에서 Vertex AI를 컴퓨팅 리소스로 사용하는 큐를 생성하세요.- Launch 페이지로 이동하세요.
- Create Queue 버튼을 클릭하세요.
- 큐를 생성할 Entity를 선택하세요.
- Name 필드에 큐 이름을 입력하세요.
- Resource로 Google Cloud Vertex AI를 선택하세요.
-
Configuration 필드에 Vertex AI용 큐 설정에서 정의한 Vertex AI
CustomJob정보를 입력하세요. W&B는 기본적으로 다음과 비슷한 YAML 및 JSON 요청 본문을 채워 줍니다. - 큐 설정을 마쳤으면 Create Queue 버튼을 클릭하세요.
spec.worker_pool_specs: 비어 있지 않은 워커 풀 사양 목록입니다.spec.staging_bucket: Vertex AI 에셋과 메타데이터를 스테이징하는 데 사용할 GCS 버킷입니다.
launch 에이전트 설정
큐를 생성했으면 큐를 폴링하고 Vertex AI로 작업을 디스패치하도록 launch 에이전트를 설정하세요. launch 에이전트는 설정 파일로 설정할 수 있으며, 이 파일은 기본적으로~/.config/wandb/launch-config.yaml에 있습니다.