CommError, Run does not exist 및 ERROR Error uploading
W&B에서 이 두 오류 메시지가 모두 반환된다면 W&B run ID를 직접 정의했을 수 있습니다. 예를 들어 Jupyter 노트북이나 Python 스크립트 어딘가에 다음과 비슷한 코드 스니펫이 정의되어 있을 수 있습니다.
name 매개변수에 이름을 전달하세요. 예시:
wandb.init()에서 id 인수를 제거하면 스윕이 고유한 run ID를 직접 부여할 수 있으므로 업로드 오류가 더 이상 발생하지 않습니다.
CUDA out of memory
이 오류 메시지가 표시되면 프로세스 기반으로 실행되도록 코드를 리팩터링하세요. 각 trial을 별도의 프로세스에서 실행하면 W&B가 run 사이에 GPU 메모리를 해제합니다.
코드를 리팩터링하려면 다음 단계를 따르세요.
-
코드를
train.py라는 Python 스크립트로 다시 작성하세요. 그런 다음 트레이닝 스크립트 이름(train.py)을 YAML 스윕 설정 파일(이 예제에서는config.yaml)에 추가하세요. -
train.pyPython 스크립트에 다음 코드를 추가하세요. -
CLI에서
wandb sweep으로 스윕을 초기화하세요. -
W&B가 반환하는 스윕 ID를 기록해 두세요. Python SDK(
wandb.agent()) 대신 CLI에서wandb agent로 스윕 작업을 시작하세요. 다음 코드 스니펫의[SWEEP-ID]를 이전 단계에서 W&B가 반환한 스윕 ID로 바꾸세요.
anaconda 400 error
다음 오류는 보통 최적화 대상 메트릭을 로깅하지 않았을 때 발생합니다.
metric이라는 키를 지정합니다. 이 메트릭은 반드시 wandb.Run.log()로 로깅하세요. 또한 Python 스크립트나 Jupyter 노트북에서는 스윕의 최적화 대상으로 정의한 메트릭 이름과 정확히 같은 이름을 사용해야 합니다. 설정 파일에 대한 자세한 내용은 스윕 설정 정의를 참조하세요.