메인 콘텐츠로 건너뛰기
기본적으로 W&B는 최신 git 커밋 해시만 저장합니다. UI에서 실험 간 코드를 비교할 수 있도록 추가 코드 기능을 활성화할 수 있습니다. wandb 버전 0.8.28부터 W&B는 wandb.init()를 호출하는 메인 트레이닝 파일의 코드를 저장할 수 있습니다. “

라이브러리 코드 저장

코드 저장을 활성화하면 W&B는 wandb.init()를 호출한 파일의 코드를 저장합니다. 추가 라이브러리 코드를 저장하는 방법은 세 가지입니다:

wandb.init()를 호출한 후 wandb.Run.log_code(".")를 호출합니다

import wandb

with wandb.init() as run:
  run.log_code(".")

code_dir를 설정한 설정 객체를 wandb.init()에 전달하기

import wandb

wandb.init(settings=wandb.Settings(code_dir="."))
현재 디렉터리와 그 아래의 모든 하위 디렉터리에 있는 모든 Python 소스 코드 파일을 artifact로 캡처합니다. 저장할 소스 코드 파일의 유형과 위치를 더 세밀하게 제어하려면 레퍼런스 문서를 참조하세요.

UI에서 코드 저장 설정

코드로 코드 저장을 설정하는 것 외에도, W&B 계정의 Settings에서 이 기능을 켜거나 끌 수 있습니다. 이 설정을 변경하면 계정과 연결된 모든 Teams에 대해 코드 저장이 활성화됩니다.
기본적으로 W&B는 모든 Teams의 코드 저장을 비활성화합니다.
  1. W&B 계정에 로그인합니다.
  2. Settings > Privacy로 이동합니다.
  3. Project and content security 아래에서 Disable default code saving을 켭니다.

코드 비교

서로 다른 W&B run에서 사용된 코드를 비교합니다:
  1. 페이지 오른쪽 상단에 있는 Add panels 버튼을 선택합니다.
  2. TEXT AND CODE 드롭다운을 펼친 후 Code를 선택합니다.
코드 비교 패널

Jupyter 세션 이력

W&B는 Jupyter 노트북 세션에서 실행한 코드의 이력을 저장합니다. Jupyter에서 **wandb.init()**를 호출하면 W&B가 후크를 추가해 현재 세션에서 실행한 코드 이력이 포함된 Jupyter 노트북을 자동으로 저장합니다.
  1. 코드가 있는 프로젝트 워크스페이스로 이동합니다.
  2. 프로젝트 사이드바에서 Artifacts 탭을 선택합니다.
  3. code artifact를 펼칩니다.
  4. Files 탭을 선택합니다.
Jupyter 세션 이력
그러면 세션에서 실행된 셀과 iPython의 display 메서드를 호출해 생성된 모든 출력이 표시됩니다. 이를 통해 특정 run에서 Jupyter 내에서 정확히 어떤 코드가 실행되었는지 확인할 수 있습니다. 가능하면 W&B는 노트북의 최신 버전도 저장하며, 이 파일은 code 디렉터리에서도 찾을 수 있습니다.
Jupyter 세션 출력