메인 콘텐츠로 건너뛰기

Documentation Index

Fetch the complete documentation index at: https://wb-21fd5541-docs-2632.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

이 페이지에서는 큐 설정 템플릿, 동적 매크로, 가속기 베이스 이미지를 포함한 고급 Launch 큐 옵션을 설정하는 방법을 설명합니다. 이러한 옵션을 사용하면 관리자가 가드레일을 강제 적용하고 특정 컴퓨팅 환경에 맞게 큐를 조정할 수 있습니다.

큐 설정 템플릿 설정

Queue config templates를 사용하면 관리자가 컴퓨팅 사용량에 대한 가드레일을 관리할 수 있습니다. 메모리 사용량, GPU, 런타임 시간 등의 필드에 기본값, 최소값, 최대값을 설정할 수 있습니다. 큐를 설정 템플릿으로 구성한 후에는 팀 구성원이 정의한 필드를 지정한 범위 내에서만 변경할 수 있습니다.

큐 템플릿 설정

기존 큐 또는 새 큐에서 큐 템플릿을 설정할 수 있습니다. 다음 절차에서는 큐의 설정에 템플릿 필드를 추가하여 팀 구성원이 사용자가 정의한 범위 내에서만 값을 설정할 수 있도록 합니다.
  1. W&B Launch App으로 이동합니다.
  2. 템플릿을 추가하려는 큐 이름 옆의 View queue를 선택합니다.
  3. Config 탭을 선택합니다. 여기에는 큐가 생성된 시점, 큐 설정, 기존 launch-time override 등 큐에 대한 정보가 표시됩니다.
  4. 큐 설정 섹션으로 이동합니다.
  5. 템플릿을 만들려는 설정 키-값을 확인합니다.
  6. 설정의 값을 템플릿 필드로 바꿉니다. 템플릿 필드는 {{variable-name}} 형식입니다.
  7. Parse configuration 버튼을 클릭합니다. 설정을 파싱하면 W&B가 생성한 각 템플릿에 대해 큐 설정 아래에 타일을 자동으로 만듭니다.
  8. 생성된 각 타일에서 먼저 큐 설정에 허용할 데이터 유형(string, integer 또는 float)을 지정해야 합니다. 이렇게 하려면 Type 드롭다운 메뉴에서 데이터 유형을 선택합니다.
  9. 데이터 유형에 따라 각 타일에 표시되는 필드를 입력합니다.
  10. Save config를 클릭합니다.
설정을 저장하면 이후 Launch에서 큐가 템플릿 제약 조건을 강제 적용합니다. 예를 들어, 팀에서 사용할 수 있는 AWS 인스턴스를 제한하는 템플릿을 만들려고 한다고 가정해 보겠습니다. 템플릿 필드를 추가하기 전에는 큐 설정이 다음과 비슷할 수 있습니다.
launch config
RoleArn: arn:aws:iam:region:account-id:resource-type/resource-id
ResourceConfig:
  InstanceType: ml.m4.xlarge
  InstanceCount: 1
  VolumeSizeInGB: 2
OutputDataConfig:
  S3OutputPath: s3://bucketname
StoppingCondition:
  MaxRuntimeInSeconds: 3600
InstanceType용 템플릿 필드를 추가하면 설정은 다음과 같습니다:
launch config
RoleArn: arn:aws:iam:region:account-id:resource-type/resource-id
ResourceConfig:
  InstanceType: "{{aws_instance}}"
  InstanceCount: 1
  VolumeSizeInGB: 2
OutputDataConfig:
  S3OutputPath: s3://bucketname
StoppingCondition:
  MaxRuntimeInSeconds: 3600
다음으로 Parse configuration을 클릭하세요. 그러면 큐 설정 아래에 aws-instance라는 새 타일이 나타납니다. 이제 Type 드롭다운에서 데이터 유형으로 String을 선택하세요. 그러면 사용자가 선택할 수 있는 값을 지정할 수 있는 필드가 표시됩니다. 예를 들어 아래 이미지에서는 팀 관리자가 사용자가 선택할 수 있도록 두 개의 AWS 인스턴스 유형 ml.m4.xlargeml.p3.xlarge를 설정했습니다.
AWS 인스턴스 유형 옵션이 있는 Launch queue 템플릿 타일

launch 작업 동적 구성

큐 설정은 에이전트가 큐에서 작업을 디큐할 때 평가되는 매크로를 사용해 동적으로 구성할 수 있습니다. launch 시점에 매크로를 사용해 run별 값을 큐 설정에 주입하세요. 다음 매크로를 설정할 수 있습니다:
Macro설명
${project_name}run이 시작될 대상 프로젝트의 이름입니다.
${entity_name}run이 시작될 대상 프로젝트의 소유자입니다.
${run_id}시작될 run의 ID입니다.
${run_name}실행을 시작하는 run의 이름입니다.
${image_uri}이 run에 사용되는 컨테이너 이미지의 URI입니다.
앞의 표에 나열되지 않은 맞춤형 매크로(예: ${MY_ENV_VAR})는 에이전트 환경의 환경 변수로 대체됩니다.

Launch agent를 사용하여 가속기 또는 GPU에서 실행할 이미지를 구축하세요

가속기 환경에서 실행할 이미지를 구축하기 위해 Launch를 사용하는 경우, 결과 이미지가 대상 하드웨어와 호환되도록 가속기 베이스 이미지를 지정해야 할 수 있습니다. 가속기 베이스 이미지는 다음 요구 사항을 충족해야 합니다.
  • Debian 호환성. Launch Dockerfile은 apt-get을 사용해 python을 가져옵니다.
  • CPU 및 GPU 하드웨어 명령어 세트 호환성. 사용하려는 GPU가 해당 CUDA 버전을 지원하는지 확인하세요.
  • 제공한 가속기 버전과 ML 알고리즘에 설치된 패키지 간의 호환성.
  • 설치된 패키지가 하드웨어와 호환되도록 설정하는 데 필요한 추가 단계.

TensorFlow에서 GPU 사용

TensorFlow가 GPU를 사용하도록 하려면 큐 리소스 설정에서 builder.accelerator.base_image 키에 도커 이미지와 해당 이미지 태그를 지정합니다. 예를 들어, tensorflow/tensorflow:latest-gpu 베이스 이미지를 사용하면 TensorFlow가 GPU를 사용하도록 할 수 있습니다. 이는 큐의 리소스 설정을 사용해 구성할 수 있습니다. 다음 JSON 스니펫은 큐 설정에서 TensorFlow 베이스 이미지를 지정하는 방법을 보여줍니다.
큐 설정
{
    "builder": {
        "accelerator": {
            "base_image": "tensorflow/tensorflow:latest-gpu"
        }
    }
}