규모에 관계없이 모든 머신 러닝 실험을 추적하고 시각화하며 관리하려면 W&B를 설치하세요.
사용 중인 머신을 W&B에 인증하려면 API 키가 필요합니다.
API 키를 만들려면 자세한 내용이 있는 개인 API 키 또는 서비스 계정 API 키 탭을 선택하세요.
사용자 ID에 속한 개인 API 키를 만들려면 다음 단계를 따르세요.
W&B에 로그인한 다음 사용자 프로필 아이콘을 클릭하고 User Settings 를 클릭합니다.
Create new API key 를 클릭합니다.
API 키를 식별할 수 있는 설명적인 이름을 입력합니다.
Create 를 클릭합니다.
표시된 API 키를 즉시 복사해 안전하게 저장합니다.
서비스 계정 소유의 API 키를 생성하려면 다음 단계를 따르세요.
팀 또는 조직 설정의 Service Accounts 탭으로 이동합니다.
목록에서 서비스 계정을 찾습니다.
작업 ( ) 메뉴를 클릭한 다음 Create API key 를 클릭합니다.
API 키 이름을 지정한 다음 Create 를 클릭합니다.
표시된 API 키를 즉시 복사해 안전한 곳에 저장합니다.
Done 을 클릭합니다.
서로 다른 환경이나 워크플로를 지원하기 위해 하나의 서비스 계정에 여러 API 키를 생성할 수 있습니다.
전체 API 키는 생성 시점에 한 번만 표시됩니다. 대화 상자를 닫으면 전체 API 키를 다시 볼 수 없습니다. Settings에서는 키 ID(키의 첫 부분)만 확인할 수 있습니다. 전체 API 키를 분실한 경우 새 API 키를 만들어야 합니다.
안전한 저장 옵션은 API 키를 안전하게 저장하기 를 참조하세요.
이 퀵스타트는 Colab 노트북으로도 제공됩니다:
명령줄
Python
Python notebook
WANDB_API_KEY 환경 변수 를 설정합니다.
export WANDB_API_KEY =< your_api_key >
wandb 라이브러리를 설치하고 로그인합니다.
pip install wandb
wandb login
import wandb
wandb.login()
!pip install wandb
import wandb
wandb.login()
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을 사용해 메트릭을 추적 하고, 로그를 생성 하고, 아티팩트를 추적하는 등 다양한 작업을 수행할 수 있습니다.
이 모의 트레이닝 스크립트는 시뮬레이션된 정확도 및 손실 메트릭을 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})
기록된 정확도, 손실 등의 메트릭과 각 트레이닝 step 동안 값이 어떻게 변했는지 보려면 wandb.ai/home 으로 이동하세요. 다음 이미지는 각 run에서 추적된 손실와 정확도를 보여줍니다. 각 run 객체는 자동으로 생성된 이름과 함께 Runs column에 표시됩니다.
W&B 생태계의 더 많은 기능을 살펴보세요:
PyTorch 같은 프레임워크, Hugging Face 같은 라이브러리, SageMaker 같은 서비스와 W&B를 결합하는 W&B Integration 튜토리얼 을 살펴보세요.
W&B Reports 를 사용해 run을 정리하고, 시각화를 자동화하고, 결과를 요약하고, 협업자와 업데이트를 공유하세요.
머신 러닝 파이프라인 전반에서 데이터셋, 모델, 의존성, 결과를 추적할 수 있도록 W&B 아티팩트 를 만드세요.
W&B Sweeps 로 하이퍼파라미터 검색을 자동화하고 모델을 최적화하세요.
중앙 대시보드 에서 run을 분석하고, 모델 예측을 시각화하고, 인사이트를 공유하세요.
실습형 과정을 통해 LLM, MLOps, W&B Models를 배울 수 있는 W&B AI Academy 를 방문하세요.
Weave를 사용해 LLM 기반 애플리케이션을 추적하고, 실험하고, 평가하고, 배포하고, 개선하는 방법을 알아보려면 weave-docs.wandb.ai 를 방문하세요.