메인 콘텐츠로 건너뛰기

Documentation Index

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

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

Launch란 무엇인가요

Colab에서 사용해 보기

이 튜토리얼에서는 ML 실무자와 플랫폼 팀을 위해 W&B Launch를 소개하고, launch 작업 생성, 큐 설정, 에이전트 연결, 그리고 실행할 작업 제출 과정을 안내합니다. 이 튜토리얼을 마치면 W&B Launch를 통해 컨테이너화된 ML 워크로드를 실행해 보고, 팀에서 재사용할 수 있는 정상적으로 작동하는 큐와 에이전트를 갖추게 됩니다. W&B Launch를 사용하면 데스크톱에서 Amazon SageMaker, Kubernetes 등의 컴퓨팅 리소스로 트레이닝 Runs를 확장할 수 있습니다. Launch를 설정한 후에는 몇 번의 클릭과 명령만으로 트레이닝 스크립트를 실행하고, 모델 평가 스위트를 실행하고, 모델을 프로덕션 추론에 맞게 준비하는 등 다양한 작업을 수행할 수 있습니다.

작동 방식

Launch는 세 가지 핵심 컴포넌트, 즉 launch 작업, , 에이전트로 구성됩니다. launch 작업은 ML 워크플로에서 작업을 설정하고 실행하기 위한 청사진입니다. launch 작업이 있으면 이를 launch 큐에 추가할 수 있습니다. launch 큐는 선입선출(FIFO) 방식의 큐로, 여기에서 작업을 Amazon SageMaker 또는 Kubernetes 클러스터와 같은 특정 대상 리소스에 맞게 설정하고 제출할 수 있습니다. 작업이 큐에 추가되면 launch 에이전트가 해당 큐를 폴링하여, 큐가 대상으로 지정한 시스템에서 작업을 실행합니다.
W&B Launch 개요 다이어그램
사용 사례에 따라 사용자 또는 팀의 다른 구성원이 선택한 컴퓨팅 리소스 대상 (예: Amazon SageMaker)에 맞게 launch 큐를 설정하고 자체 인프라에 launch 에이전트를 배포합니다. Launch에 대한 자세한 내용은 용어 및 개념 페이지를 참조하세요.

시작하기

사용 사례에 따라 W&B Launch를 시작하는 데 도움이 되는 다음 리소스를 확인하세요:

워크스루

이 페이지에서는 W&B Launch 워크플로의 기본 개념을 단계별로 살펴봅니다.
W&B Launch는 컨테이너에서 머신 러닝 워크로드를 실행합니다. 이 워크스루를 진행하는 데 컨테이너에 익숙할 필요는 없지만, 알고 있으면 도움이 됩니다. 컨테이너의 기본 개념은 Docker 문서를 참조하세요.

사전 요구 사항

시작하기 전에 다음 사전 요구 사항을 충족했는지 확인하세요. 여기에는 이 워크스루의 뒷부분에서 명령을 실행하는 데 필요한 계정, 도구, 인증이 포함됩니다.
  1. https://wandb.ai/site에서 계정을 생성한 다음 W&B 계정에 로그인하세요.
  2. 이 워크스루를 진행하려면 Docker CLI와 엔진이 정상적으로 작동하는 머신에 대한 터미널 액세스가 필요합니다. 자세한 내용은 Docker 설치 가이드를 참조하세요.
  3. 0.17.1 이상 버전의 W&B Python SDK를 설치하세요:
    pip install wandb>=0.17.1
    
  4. 터미널에서 wandb login을 실행하거나 WANDB_API_KEY 환경 변수를 설정하여 W&B에 인증하세요.
터미널에서 다음을 실행하세요:
wandb login

Launch 작업 만들기

Launch 작업은 Launch가 실행할 워크로드의 청사진이므로, 작업을 큐에 제출하려면 먼저 Launch 작업이 있어야 합니다. launch 작업은 세 가지 방법으로 만들 수 있습니다. Docker 이미지 사용, git 저장소에서 생성, 또는 로컬 소스 코드에서 생성:
W&B에 메시지를 로깅하는 사전 제작된 컨테이너를 실행하려면 터미널을 열고 다음 명령어를 실행하세요:
wandb launch --docker-image wandb/job_hello_world:main --project launch-quickstart
앞의 명령어는 컨테이너 이미지 wandb/job_hello_world:main를 다운로드하여 실행합니다.Launch는 wandb로 로깅된 모든 내용이 launch-quickstart 프로젝트로 보고되도록 컨테이너를 설정합니다. 컨테이너는 W&B에 메시지를 로깅하고 W&B의 run 링크를 표시합니다. 링크를 클릭하여 W&B UI에서 run을 확인하세요.

큐 만들기

launch 작업이 준비되면 다음 단계는 작업이 어디에서 어떻게 실행될지 정의하는 큐를 만드는 것입니다. Launch는 팀이 공유 컴퓨트를 중심으로 워크플로를 구축할 수 있도록 설계되었습니다. 지금까지의 예제에서는 wandb launch 명령어가 로컬 머신에서 컨테이너를 동기식으로 실행했습니다. Launch 큐와 에이전트를 사용하면 공유 리소스에서 작업을 비동기식으로 실행하고, 우선순위 지정 및 하이퍼파라미터 최적화와 같은 고급 기능도 활용할 수 있습니다. 기본 큐를 만들려면 다음 단계를 따르세요.
  1. wandb.ai/launch로 이동한 다음 Create a queue 버튼을 클릭하세요.
  2. 큐를 연결할 Entity를 선택하세요.
  3. Queue name을 입력하세요.
  4. ResourceDocker를 선택하세요.
  5. Configuration을 비워 두세요.
  6. Create queue를 클릭하세요.
버튼을 클릭하면 브라우저가 큐 뷰의 Agents 탭으로 이동합니다. 에이전트가 폴링을 시작할 때까지 큐는 Not active 상태로 유지됩니다.
Docker 큐 생성
고급 큐 설정 옵션은 고급 큐 설정 페이지를 참조하세요.

에이전트를 큐에 연결하기

에이전트가 큐를 폴링하기 전까지는 큐가 유휴 상태로 유지되므로, 작업을 실행하려면 먼저 에이전트를 연결해야 합니다. 큐에 폴링 중인 에이전트가 없으면 큐 뷰 화면 상단의 빨간색 배너에 Add an agent 버튼이 표시됩니다. 이 버튼을 클릭하면 에이전트를 실행하는 명령어를 확인하고 복사할 수 있습니다. 명령어는 다음과 비슷한 형태입니다.
wandb launch-agent --queue [QUEUE-NAME] --entity [ENTITY-NAME]
[QUEUE-NAME]을 큐 이름으로, [ENTITY-NAME]을 W&B 엔터티로 바꾸세요. 터미널에서 명령을 실행해 에이전트를 시작하세요. 에이전트는 지정된 큐를 폴링하여 실행할 작업을 확인합니다. 작업을 받으면 에이전트는 해당 작업의 컨테이너 이미지를 다운로드하거나 구축한 후 실행합니다. 이는 로컬에서 wandb launch 명령을 실행한 것과 동일합니다. Launch 페이지로 다시 이동한 다음, 이제 큐가 Active로 표시되는지 확인하세요.

큐에 작업 제출

큐와 폴링 에이전트가 준비되었으므로, 이제 앞에서 만든 launch 작업 중 하나를 제출하고 공유 컴퓨트에서 실행되는 것을 확인할 수 있습니다. W&B 계정의 launch-quickstart 프로젝트로 이동한 다음, 화면 왼쪽 내비게이션에서 jobs 탭을 여세요. Jobs 페이지에는 이전 run에서 생성된 작업 목록이 표시됩니다. launch 작업을 클릭하면 소스 코드, 의존성, 그리고 해당 작업에서 생성된 모든 run을 볼 수 있습니다. 이 워크스루를 완료하면 목록에 작업이 세 개 있습니다. 작업 중 하나를 선택한 다음, 다음 지침에 따라 큐에 제출하세요.
  1. 작업을 큐에 제출하려면 Launch 버튼을 클릭하세요. Launch 드로어가 나타납니다.
  2. 앞에서 만든 Queue를 선택한 다음 Launch를 클릭하세요.
그러면 작업이 큐에 제출됩니다. 이 큐를 폴링하는 에이전트가 작업을 가져와 실행합니다. 작업 진행 상황은 W&B UI에서 모니터링하거나 터미널에서 에이전트 출력을 확인해 볼 수 있습니다. wandb launch 명령어는 --queue 인수를 지정해 작업을 큐에 직접 푸시할 수 있습니다. 예를 들어 hello-world 컨테이너 작업을 큐에 제출하려면 다음 명령어를 실행하세요.
   wandb launch --docker-image wandb/job_hello_world:main --project launch-quickstart --queue [QUEUE-NAME]
[QUEUE-NAME]을 사용 중인 큐 이름으로 바꾸세요. 이제 launch 작업, 큐, 폴링 에이전트, 그리고 공유 컴퓨트에서 비동기적으로 실행되는 작업으로 구성된 완전한 W&B Launch 워크플로가 갖춰졌습니다. 이 패턴은 자체 트레이닝, 평가, 추론 워크로드에도 활용할 수 있습니다.