run 포크는 Multi-tenant Cloud 및 Dedicated Cloud에서 Preview로 제공됩니다. Dedicated Cloud 관련 안내는 지원팀에 문의하세요. 현재 Self-Managed 배포에서는 사용할 수 없습니다.Preview 기능은 프로덕션 환경에서 평가 용도로 사용할 수 있지만, 기능, API 및 동작은 활발히 개발 중이며 정식 출시(General Availability) 전에 변경될 수 있습니다.
- run을 포크하려면
wandbSDK 버전 0.16.5 이상이 필요합니다. - run을 포크하려면 step이 단조 증가해야 합니다.
define_metric()으로 정의한 비단조 step을 사용하는 run에서는 포크할 수 없습니다. 비단조 step을 사용하면 run 이력과 시스템 메트릭의 시간 순서가 어긋납니다.
wandb.init()의 fork_from 인수에 원본 run의 고유한 run ID와 포크된 run을 시작할 step을 지정하세요.
이전에 로깅한 run에서 포크하기
다음 코드 스니펫은 이전에 W&B에 로깅한 run에서 포크하는 방법을 보여줍니다. 먼저 포크할 run의 run ID를 획득하세요. 그런 다음wandb.init()의 fork_from 인수에 해당 run ID와 포크할 step을 지정하세요.
다음 코드를 복사하여 Python 스크립트나 노트북 셀에 붙여넣으세요. <source-run-id>, <project>, <entity>를 실제 값으로 바꾸세요.
동일한 스크립트에서 run 포크하기
다음 코드 스니펫은 하나의 스크립트 안에서 run을 생성하고 해당 run에서 포크하는 방법을 보여줍니다. 방금 생성한 run에서 포크하려는데 W&B App에서 run ID를 따로 찾아보고 싶지 않을 때 이 방법을 사용할 수 있습니다. 먼저 run을 초기화하고 데이터를 로깅하세요. 그런 다음 원본 run 객체의id 속성을 사용해 해당 run의 run ID를 획득하세요. 마지막으로 새 run을 초기화하고, 원본 run의 ID와 포크할 step을 wandb.init()의 fork_from에 인수로 전달하세요.
예시 스크립트
다음 코드 예시는 먼저 run을 포크한 다음, 트레이닝 step 200부터 포크된 run에 메트릭을 로깅하는 방법을 보여줍니다. 다음 코드를 복사하여 Python 스크립트 또는 노트북 셀에 붙여넣으세요.<project>와 <entity>를 실제 값으로 바꾸세요.
되감기와 포크의 호환성포크는
rewind를 보완하여 run을 더 유연하게 관리하고 실험할 수 있게 해 줍니다.run에서 포크하면 W&B는 run의 특정 지점에서 새 분기를 생성하므로, 다른 매개변수나 모델을 사용해 볼 수 있습니다.run을 되감으면 run 이력 자체를 수정하거나 변경할 수 있습니다.