메인 콘텐츠로 건너뛰기
W&B를 설치하여 규모와 상관없이 머신 러닝 실험을 추적하고, 시각화하고, 관리하세요.
W&B Weave에 대한 정보를 찾고 계신가요? Weave Python SDK 퀵스타트Weave TypeScript SDK 퀵스타트를 참고하세요.

가입하고 API 키 생성하기

W&B에 이 머신을 인증하려면 API 키가 필요합니다. API 키를 생성하려면 Personal API key 또는 Service Account API key 탭을 선택해 자세한 내용을 확인하세요.
사용자 ID 소유의 개인 API 키를 생성하려면:
  1. W&B에 로그인한 다음 사용자 프로필 아이콘을 클릭하고 User Settings를 클릭합니다.
  2. Create new API key를 클릭합니다.
  3. API 키에 대한 설명용 이름을 입력합니다.
  4. Create를 클릭합니다.
  5. 표시된 API 키를 즉시 복사하여 안전하게 보관합니다.
전체 API 키는 생성할 때만 한 번 표시됩니다. 대화 상자를 닫으면 전체 API 키를 다시 볼 수 없습니다. 설정에서는 키 ID(키의 첫 부분)만 확인할 수 있습니다. 전체 API 키를 분실한 경우 새 API 키를 생성해야 합니다.
API 키를 안전하게 저장하는 방법은 API 키를 안전하게 저장하기를 참조하세요. 이 퀵스타트는 Colab 노트북 형태로도 제공됩니다:

wandb 라이브러리 설치 및 로그인

  1. WANDB_API_KEY 환경 변수를 설정하세요.
    export WANDB_API_KEY=<your_api_key>
    
  2. wandb 라이브러리를 설치하고 로그인하세요.
    pip install wandb
    wandb login
    

run 초기화 및 하이퍼파라미터 추적

Python 스크립트 또는 노트북에서 wandb.init()으로 W&B run 객체를 초기화합니다. config 파라미터에는 사전을 사용해 하이퍼파라미터 이름과 값을 지정합니다. with 문 블록 내부에서는 메트릭과 기타 정보를 W&B에 로깅할 수 있습니다.
import wandb

wandb.login()

# run이 기록되는 프로젝트
project = "my-awesome-project"

# 하이퍼파라미터가 담긴 사전
config = {
    'epochs' : 10,
    'lr' : 0.01
}

with wandb.init(project=project, config=config) as run:
    # 트레이닝 코드를 여기에 작성
    # run.log()로 W&B에 값 기록
    run.log({"accuracy": 0.9, "loss": 0.1})
다음 섹션에서 트레이닝 run을 시뮬레이션하고, 정확도와 손실 메트릭을 W&B에 로깅하는 전체 예제를 확인할 수 있습니다.
run은 W&B의 핵심 구성 요소입니다. run을 사용해 메트릭을 추적하고, 로그를 남기며, 아티팩트를 추적하는 등 다양한 작업을 수행할 수 있습니다.

머신 러닝 트레이닝 실험 만들기

이 샘플 트레이닝 스크립트는 시뮬레이션한 accuracy와 loss 메트릭을 W&B에 기록합니다. 아래 코드를 Python 스크립트나 노트북 셀에 복사해 붙여넣은 뒤 실행하세요:
import wandb
import random

wandb.login()

# run이 기록되는 프로젝트
project = "my-awesome-project"

# 하이퍼파라미터가 담긴 사전
config = {
    'epochs' : 10,
    'lr' : 0.01
}

with wandb.init(project=project, config=config) as run:
    offset = random.random() / 5
    print(f"lr: {config['lr']}")
    
    # 트레이닝 run 시뮬레이션
    for epoch in range(2, config['epochs']):
        acc = 1 - 2**-config['epochs'] - random.random() / config['epochs'] - offset
        loss = 2**-config['epochs'] + random.random() / config['epochs'] + offset
        print(f"epoch={config['epochs']}, accuracy={acc}, loss={loss}")
        run.log({"accuracy": acc, "loss": loss})
wandb.ai/home에 방문하여 accuracy, loss와 같은 기록된 메트릭과 각 트레이닝 스텝 동안 어떻게 변화했는지 확인하세요. 다음 이미지는 각 run에서 추적된 loss와 accuracy를 보여줍니다. 각 run 객체는 생성된 이름과 함께 Runs 열에 표시됩니다.
각 run에서 추적된 loss와 accuracy를 보여줍니다.

다음 단계

W&B 에코시스템의 다양한 기능을 살펴보세요:
  1. W&B를 PyTorch와 같은 프레임워크, Hugging Face와 같은 라이브러리, SageMaker와 같은 서비스와 연동하는 W&B 인테그레이션 튜토리얼을 읽으세요.
  2. W&B Reports를 사용해 run을 정리하고, 시각화를 자동화하며, 결과를 요약하고, 협업자들과 업데이트를 공유하세요.
  3. 머신 러닝 파이프라인 전반에 걸쳐 데이터셋, 모델, 종속성, 결과를 추적하기 위해 W&B Artifacts를 생성하세요.
  4. W&B Sweeps로 하이퍼파라미터 탐색을 자동화하고 모델을 최적화하세요.
  5. 중앙 대시보드에서 run을 분석하고, 모델 예측을 시각화하며, 인사이트를 공유하세요.
  6. W&B AI Academy를 방문해 실습형 강좌를 통해 LLM, MLOps, W&B Models에 대해 학습하세요.
  7. weave-docs.wandb.ai를 방문해 Weave를 사용하여 LLM 기반 애플리케이션을 추적하고, 실험하고, 평가하고, 배포하고, 개선하는 방법을 학습하세요.