Class wandb.Settings
W&B SDK용 설정입니다. 이 클래스는 W&B SDK의 설정을 관리하며, 모든 설정의 타입 안정성과 검증을 보장합니다. 설정은 속성으로 액세스할 수 있으며, 코드에서 직접, 환경 변수(WANDB_ prefix), 그리고 설정 파일을 통해 초기화할 수 있습니다.
설정은 세 가지 범주로 구성됩니다.
- 공개 설정: 사용자가 특정 요구 사항에 맞게 W&B의 동작을 사용자 지정할 수 있도록 안전하게 수정할 수 있는 핵심 설정 옵션입니다.
- 내부 설정: ‘x_’ 접두사가 붙은 설정으로, SDK의 저수준 동작을 처리합니다. 이러한 설정은 주로 내부 사용 및 디버깅을 위한 것입니다. 수정할 수는 있지만, 공개 API의 일부로 간주되지 않으며 향후 버전에서 사전 고지 없이 변경될 수 있습니다.
- 계산된 설정: 다른 설정이나 환경에서 자동으로 파생되는 읽기 전용 설정입니다.
- 이
Settings모델에 정의된 기본값. - 설정 파일(
~/.config/wandb/settings또는WANDB_CONFIG_DIR환경 변수가 지정한 디렉터리의settings파일). - 환경 변수(
WANDB_접두사가 붙은 변수, 예:WANDB_MODE). - 호스트 이름, 실행 중인 프로그램/스크립트 경로, Python 실행 파일, 도커 이미지, Jupyter 노트북 세부 정보 등 런타임 환경에서 감지된 값.
- Amazon SageMaker 환경에서 실행 중인 경우의 SageMaker 설정.
wandb.setup()의settings매개변수.wandb.init()의settings매개변수.- 특정
wandb.init()매개변수(예:mode=는mode설정을 재정의함).
인수
bool
미디어 파일을 run 디렉터리에 심볼릭 링크할지 여부입니다.true이면 미디어 파일을 복사하는 대신 run 디렉터리에 심볼릭 링크 또는 하드 링크합니다. 이렇게 하면
로깅 속도가 빨라지고 디스크 사용량이 줄어들 수 있습니다. 하지만 W&B 서버에 업로드하기 전에
원본 파일을 삭제하거나 수정하면 업로드된 데이터에도 해당 변경 사항이 반영됩니다.
bool
오프라인 모드에서 테이블 아티팩트를 동기화할 수 있도록 하는 플래그입니다.이전 동작으로 되돌리려면 이 값을 False로 설정하세요.
bool
Config 값을 설정한 후 수정할 수 있도록 하는 플래그입니다.object
사용 중단되었으며 제거될 예정입니다.
str | None
W&B API 키입니다.
dict[str, str] | None
Azure 인테그레이션을 위한 Azure 계정 URL과 해당 액세스 키의 매핑입니다.
str | None
W&B UI의 ‘app’ URL을 재정의합니다.
app_url은 일반적으로 base_url을 기반으로 계산되지만, 이를 사용하면
명시적으로 설정할 수 있습니다.WANDB_APP_URL은 해당 환경 변수입니다.str
데이터 동기화를 위한 W&B 백엔드 URL입니다.
str | None
W&B에서 추적할 코드가 포함된 디렉터리입니다.
collections.abc.Sequence[str] | None
Config 객체에 로드할 설정 파일의 경로입니다.Literal
적용할 콘솔 캡처 유형입니다.가능한 값은 다음과 같습니다.
- “auto” - 시스템 환경과 설정에 따라 콘솔 캡처 방법을 자동으로 선택합니다.
- “off” - 콘솔 캡처를 비활성화합니다.
- “redirect” - 출력을 캡처하기 위해 저수준 파일 디스크립터를 리디렉션합니다.
- “wrap” - sys.stdout/sys.stderr의 write 메서드를 재정의합니다. 시스템 상태에 따라 “wrap_raw” 또는 “wrap_emu”에 매핑됩니다.
- “wrap_raw” - “wrap”과 같지만 에뮬레이터를 거치지 않고 원시 출력을 직접 캡처합니다.
wrap설정에서 파생되며 수동으로 설정해서는 안 됩니다. - “wrap_emu” - “wrap”과 같지만 에뮬레이터를 통해 출력을 캡처합니다.
wrap설정에서 파생되며 수동으로 설정해서는 안 됩니다.
bool
멀티파트 콘솔 로깅을 활성화합니다.True이면 SDK는 콘솔 출력을 단일
output.log 대신
logs/ 디렉터리 아래의 타임스탬프가 포함된 파일에 기록합니다.각 파트는 닫히는 즉시 업로드되므로 run이 활성 상태인 동안 사용자가
로그에 실시간으로 액세스할 수 있습니다. 롤오버 주기는
console_chunk_max_bytes 및/또는 console_chunk_max_seconds로 제어됩니다.
두 한도가 모두 0이면 모든 로그는 run 종료 시 한 번에 업로드됩니다.참고: 업로드된 청크는 변경할 수 없습니다. 이전 줄을 수정하는 터미널 제어 시퀀스
(예: 캐리지 리턴을 사용하는 진행률 표시줄)는 현재 청크에만 영향을 줍니다.int
바이트 단위의 멀티파트 콘솔 로그 크기 기반 롤오버 임계값입니다.현재 파트가 이 크기에 도달하면 새 콘솔 로그 파일을 시작합니다.
console_multipart가 True인 경우에만 적용됩니다.
console_chunk_max_seconds와 함께 사용할 수 있으며, 먼저 도달하는 한도가
롤오버를 트리거합니다. 값이 0이면 크기 기반 한도가 비활성화됩니다.int
초 단위의 멀티파트 콘솔 로그 시간 기반 롤오버 임계값입니다.현재 파트가 시작된 후 이 시간이 지나면 새 콘솔 로그 파일을 시작합니다.
console_multipart가 True여야 합니다. console_chunk_max_bytes와 함께
사용할 수 있으며, 먼저 도달하는 한도가 파트를 닫습니다. 값이 0이면 시간 기반
한도가 비활성화됩니다.dict[str, str] | None
run의 Logs 탭에 캡처할 Python 로거 이름입니다.로거 이름과 최소 로그 수준의 매핑입니다. 설정하면 wandb가
지정된 각 로거에 logging.Handler를 설치하고 run이 종료되면 제거합니다.
이러한 로거에서 발생한 로그 레코드는 stdout/stderr 캡처와 마찬가지로
run의 콘솔 출력으로 게시됩니다.로그 레코드는
logging.basicConfig()와 동일한 형식으로 지정됩니다. 예:
INFO:my_module:Some message. 현재 이 형식은 맞춤설정할 수 없습니다.모든 로그를 캡처하려면 루트 로거의 이름인 ‘root’를 전달하세요.이는 console 설정과 별개이므로 둘 다 동시에 활성화할 수
있습니다.예시:str
임시 액세스 토큰을 기록할 파일의 경로입니다.
bool
코드 캡처를 비활성화할지 여부입니다.
bool
git 상태 캡처를 비활성화할지 여부입니다.
bool
원격 브랜치에서 포크 지점을 추론하는 기능을 비활성화할지 여부입니다.True로 설정하면 업스트림 브랜치가 설정된 경우 SDK는 해당 브랜치의
최신 커밋을 사용합니다. 그렇지 않으면 diff 패치 생성을 건너뜁니다.False로 설정하면 업스트림 브랜치가 설정된 경우 SDK는 해당 브랜치의 최신 커밋을
사용하려고 시도합니다.
그렇지 않으면 모든 원격 브랜치에서 가장 가까운 커밋을 찾습니다.
업스트림 브랜치가 많은 저장소에서는 성능에 영향을 줄 수 있습니다.
bool
W&B Launch용 작업 아티팩트 생성을 비활성화할지 여부입니다.
str | None
스크립트를 실행하는 데 사용되는 도커 이미지입니다.
str | None
사용자의 이메일 주소입니다.
str | None
사용자 또는 팀과 같은 W&B 엔터티입니다.
str | None
W&B 조직입니다.
bool
force 플래그를 wandb.login()에 전달할지 여부입니다.wandb.sdk.lib.run_moment.RunMoment | None
포크할 이전 run의 실행 지점을 지정합니다.이 지점은 run ID, 메트릭 및 해당 값으로 정의됩니다.
현재는 ‘_step’ 메트릭만 지원됩니다.
str | None
run과 연결할 git 커밋 해시입니다.
str
run과 연결할 git 원격 저장소입니다.
str | None
git 원격 저장소의 URL입니다.
str | None
git 저장소의 루트 디렉터리입니다.
str | None
스크립트를 실행하는 머신의 호스트 이름입니다.
str | None
W&B에 대한 HTTP 요청에 사용할 맞춤형 프록시 서버입니다.
str | None
W&B에 대한 HTTPS 요청에 사용할 맞춤형 프록시 서버입니다.
str | None
인증에 사용할 ID 토큰(JWT)이 포함된 파일의 경로입니다.
Sequence
업로드에서 제외할 파일을 지정하는
files_dir 기준 Unix glob 패턴입니다.float
시간 초과 전에
wandb.init 호출이 완료될 때까지 기다리는 시간(초)입니다.float
run 종료 시 데이터 업로드를 기다리는 시간(초)입니다.이 설정을 사용하면 run 종료 시 W&B로의 느린 업로드로 인해 발생하는 비용을 제한할 수
있지만, 그 대가로 run이 crashed로 표시되고 일부 데이터가 누락될 수 있습니다. 기본적으로
run.finish()는 모든 데이터 업로드가 완료될 때까지 차단됩니다.0보다 큰 값으로 설정하면 W&B는 run 종료 시 지정한 시간이 지나면 run 데이터 업로드를
포기하고 스크립트의 차단을 해제합니다. 일정 시간이 지나면 UI에서 run이 Crashed 또는
Failed 상태가 됩니다. 업로드되지 않은 데이터는 계속 디스크에 저장되며 wandb sync로 업로드할 수 있습니다.경고 메시지 출력과 함께 오류도 발생시키려면 finish_timeout_raises 설정을
사용하세요.wandb.teardown()으로 종료되는 Runs(atexit 훅에서 스크립트 종료 시 자동으로 실행됨)도
이 설정을 따릅니다.bool
finish_timeout이 만료될 경우 TimeoutError를 발생시킬지 여부입니다.
finish_timeout 설정과 함께 사용하면 run.finish()는 메시지를 출력하는 것과 함께
시간 초과 후 TimeoutError를 발생시킵니다.Run을 컨텍스트 관리자로 사용하면 run.finish()가 암시적으로 호출됩니다.with wandb.init() as run:
… # with 블록 끝에서 run.finish()가 실행됩니다이 경우 wandb.teardown()은 오류를 발생시키지 않습니다(어차피 스크립트 종료 시
실행되기 때문입니다).bool
안전하지 않은 방식으로 SSL 검증을 비활성화할지 여부입니다.
str | None
스크립트를 실행하는 Launch 작업의 이름입니다.
Optional
Launch의 소스 유형입니다.
bool
자동 레이블 지정 기능을 비활성화할지 여부입니다.
str | None
Launch 설정 파일의 경로입니다.
float | None
시간 초과되기 전 로그인 오퍼레이션을 기다리는 시간(초)입니다.
Literal
W&B 로깅 및 동기화의 운영 모드입니다.
str | None
Jupyter와 유사한 환경에서 실행 중인 경우 notebook의 이름입니다.
str | None
사용 가능한 경우 run을 생성한 스크립트의 경로입니다.
str | None
저장소 루트 디렉터리에서 run을 생성한 스크립트까지의 절대 경로입니다.루트 저장소 디렉터리는 존재하는 경우 .git 디렉터리를 포함하는 디렉터리로 정의됩니다.
그렇지 않은 경우 현재 작업 디렉터리입니다.
str | None
run을 생성한 스크립트의 상대 경로입니다.
str | None
W&B 프로젝트 ID입니다.
bool
필수적이지 않은 출력을 숨기는 플래그입니다.
Union
run이 활성 상태일 때
wandb.init()가 호출되면 수행할 작업입니다.옵션:- “default”: notebook에서는 “finish_previous”를 사용하고, 그 외에는 “return_previous”를 사용합니다.
- “return_previous”: 아직 종료되지 않은 가장 최근에 생성된 run을 반환합니다.
이 옵션은
wandb.run을 업데이트하지 않습니다. “create_new” 옵션을 참조하세요. - “finish_previous”: 모든 활성 run을 종료한 후 새 run을 반환합니다.
- “create_new”: 다른 활성 run을 수정하지 않고 새 run을 생성합니다.
wandb.run및wandb.log와 같은 최상위 함수를 업데이트하지 않습니다. 따라서 전역 run에 의존하는 일부 이전 인테그레이션은 작동하지 않습니다.
bool
새 로그인 시도를 강제하는 플래그입니다.
Optional
run의 재개 동작을 지정합니다.옵션:
- “must”: 동일한 ID를 가진 기존 run을 재개합니다. 해당 run이 없으면 실패합니다.
- “allow”: 동일한 ID를 가진 기존 run을 재개하려고 시도합니다. 찾지 못하면 새 run이 생성됩니다.
- “never”: 항상 새 run을 시작합니다. 동일한 ID를 가진 run이 이미 있으면 실패합니다.
- “auto”: 동일한 머신에서 가장 최근에 실패한 run을 자동으로 재개합니다.
wandb.sdk.lib.run_moment.RunMoment | None
이전 run 실행에서 재개할 지점을 지정합니다.이 지점은 run ID, 메트릭 및 해당 값으로 정의됩니다.
현재는 ‘_step’ 메트릭만 지원됩니다.
str
모든 run 관련 경로의 기준으로 사용할 루트 디렉터리입니다.특히 wandb 디렉터리와 run 디렉터리의 경로를 결정하는 데 사용됩니다.
str | None
관련 run의 그룹 식별자입니다.UI에서 run을 그룹화하는 데 사용됩니다.
str | None
run의 ID입니다.
str | None
실행 중인 작업의 유형입니다(예: 트레이닝, 평가).
str | None
사람이 읽을 수 있는 run 이름입니다.
str | None
run에 대한 추가 메모 또는 설명입니다.
tuple[str, ...] | None
구성 및 필터링을 위해 run에 연결할 태그입니다.
bool
SageMaker 관련 기능을 비활성화하는 플래그입니다.
bool | None
run과 연결된 코드를 저장할지 여부입니다.
str | None
시스템 전체 설정 파일의 경로입니다.
collections.abc.Callable[[], None] | None
run을 중지할 때 실행할 callback입니다.웹 UI를 통해 또는 치명적 오류 발생 후
(설정으로 구성한 경우) run을 중지할 수 있습니다.기본적으로 W&B는 run을 중지하기 위해 기본 스레드에 SIGINT를 보냅니다.
다른 시그널을 사용하거나 인터럽트 전에 다른 액션을 수행하는 등
이 동작을 재정의하려면 이 callback을 설정하세요.callback은 별도의 스레드에서 실행됩니다. 중지 요청 후 곧 실행되지만
즉시 실행되지는 않습니다.
int
run 종료 시 표시할 이력 스파크라인의 최대 개수입니다.
int
run 종료 시 표시할 summary 메트릭의 최대 개수입니다.
bool
오류 메시지를 표시할지 여부입니다.
bool
정보 메시지를 표시할지 여부입니다.
bool
경고 메시지를 표시할지 여부입니다.
bool
모든 출력을 억제하는 플래그입니다.
bool
치명적 오류 발생 후 run을 중지할지 여부입니다.W&B가 데이터 업로드 중 복구할 수 없는 오류를 만나면 메시지를 출력하고
업로드를 중지하지만, 추가 데이터를 계속 로깅할 수 있습니다.
일반적으로 이 방식이 바람직합니다. 트레이닝 메트릭은 디스크에 저장되므로
업로드되지 않더라도
wandb sync를 사용해 복구할 수 있습니다.트레이닝 후 파일이 삭제되는 경우에는 유용하지 않습니다.
이 경우 이 값을 True로 설정하면 웹 UI에서 중지 버튼을 누른 것처럼
치명적 오류 발생 후 run이 중지됩니다.bool | None
검증 및 오류 검사에 엄격 모드를 사용할지 여부입니다.
int
시간 초과되기 전에 summary 오퍼레이션을 기다리는 시간(초)입니다.
str | None
이 run이 속한 스윕의 식별자입니다.
str | None
스윕 파라미터 설정의 경로입니다.
bool
심볼릭 링크를 사용할지 여부입니다(Windows를 제외하면 기본값은 True).
bool | None
TensorBoard 로그를 W&B와 동기화할지 여부입니다.
bool
테이블 행 한도를 초과했을 때 예외를 발생시킬지 여부입니다.
bool | None
run 데이터에 숨김
.wandb 디렉터리 또는 표시되는 wandb 디렉터리를 사용할지 여부입니다.True이면 SDK가 .wandb를 사용하고, False이면 wandb를 사용합니다.
설정하지 않으면 .wandb가 이미 존재할 경우 이를 기본값으로 사용하고, 그렇지 않으면 wandb를 사용합니다.str | None
사용자 이름입니다.
bool
시스템 메타데이터 수집을 비활성화하는 플래그입니다.
bool
시스템 메트릭 수집을 비활성화하는 플래그입니다.
dict[str, str] | None
모든 발신 HTTP 요청에 추가할 헤더입니다.
str | None
run에 대해 수집된 시스템 메트릭과 콘솔 로그에 부여할 레이블입니다.프런트엔드에서 데이터를 그룹화하는 데 사용되며, 분산 트레이닝 작업에서
서로 다른 프로세스의 데이터를 구분하는 데 사용할 수 있습니다.
bool
내부 wandb 파일과 메타데이터를 저장할지 여부를 결정합니다.분산 환경에서 기본 프로세스가 주요 로깅을 처리하고 시스템 메트릭과 로그만 필요한 경우,
보조 프로세스가 파일을 덮어쓰는 것을 방지하는 데 유용합니다.
bool
requirements 파일을 저장하는 플래그입니다.
bool
이력에서 summary를 자동으로 계산하도록 서버에 위임하는 플래그입니다.사용자가 제공한 summary 업데이트는 비활성화하지 않습니다.
float
wandb-core 내부 서비스가 시작될 때까지 대기하는 시간(초)입니다.
bool
run 이벤트를 트랜잭션 로그에 저장하지 않을지 여부입니다.온라인 run에만 해당합니다. 디스크에 기록되는 데이터 양을
줄이는 데 사용할 수 있습니다.복구 가능성을 보장하지 않으므로
주의해서 사용해야 합니다.
float
시스템 모니터의 샘플링 간격(초)입니다.
dict[str, str] | None
시스템 메트릭을 위해 모니터링할 OpenMetrics
/metrics 엔드포인트입니다.dict[str, dict[str, str]] | collections.abc.Sequence[str] | None
OpenMetrics
/metrics 엔드포인트에서 수집한 메트릭에 적용할 필터입니다.두 가지 형식을 지원합니다.{"metric regex pattern, including endpoint name as prefix": {"label": "label value regex pattern"}}("metric regex pattern 1", "metric regex pattern 2", ...)
dict[str, str] | None
OpenMetrics 요청에 추가할 HTTP 헤더입니다.
collections.abc.Sequence[str] | None
디스크 사용량을 모니터링할 시스템 경로입니다.
int | None
시스템 CPU 수입니다.설정하면 run 메타데이터에서 자동 감지된 값을 재정의합니다.
int | None
논리 CPU 수입니다.설정하면 run 메타데이터에서 자동 감지된 값을 재정의합니다.
int | None
GPU 디바이스 수입니다.설정하면 run 메타데이터에서 자동 감지된 값을 재정의합니다.
str | None
GPU 디바이스 유형입니다.설정하면 run 메타데이터에서 자동 감지된 값을 재정의합니다.
collections.abc.Sequence[int] | None
모니터링할 GPU 디바이스 인덱스입니다.설정하지 않으면 시스템 모니터가 모든 GPU의 메트릭을 캡처합니다.
CUDA/ROCm 디바이스 열거와 일치하는 0부터 시작하는 인덱싱을 가정합니다.
bool
x_stats_pid부터 시작하여 전체 프로세스 트리의 리소스 사용량을 모니터링합니다.True이면 시스템 모니터가 PID x_stats_pid를 가진 프로세스와 모든 하위 프로세스의 RSS, CPU%, 스레드 수를 집계합니다.
성능 오버헤드가 발생할 수 있으며 기본적으로 비활성화되어 있습니다.bool
시스템 메트릭 백분율에 적용되는 cgroup v2 CPU 및 메모리 제한을 비활성화합니다.
str
run의 디렉터리 이름(sync_dir)에 추가할 접미사입니다.이 값은 이름 충돌을 방지하기 위해 wandb.init()에서 설정합니다.
설정하면 기본 이름에 대시를 붙여 연결합니다.
bool
이 프로세스가 서버에서 run의 최종 상태를 업데이트할 수 있는지를 나타내는 플래그입니다.메인 프로세스만 최종 상태를 결정해야 하는 분산 트레이닝에서는 False로 설정합니다.
속성
str
일반적으로 https://wandb.ai인 W&B UI의 URL입니다.프로그래밍 방식으로 W&B API에 액세스하는 데 사용되는
base_url(https://api.wandb.ai 등)과는 다릅니다.str | None
Colab에서 실행 중인 경우 Colab 노트북의 URL입니다.
Literal['local', 'cloud']
설명이 제공되지 않았습니다.
str
run의 파일이 저장되는 로컬 디렉터리의 절대 경로입니다.
bool
설명이 제공되지 않았습니다.
str
로그 파일을 저장할 디렉터리입니다.
str
내부 로그에 사용할 파일의 경로입니다.
str
가장 최근 run의 내부 로그 파일을 가리키는 심볼릭 링크의 경로입니다.
str
가장 최근 run의 사용자 프로세스 로그 파일을 가리키는 심볼릭 링크의 경로입니다.
str
사용자 프로세스 로그에 사용할 파일의 경로입니다.
str
프로젝트를 확인할 수 있는 W&B URL입니다.
str
재개 파일의 경로입니다.
Literal['run', 'offline-run']
run의 모드입니다. “run” 또는 “offline-run” 중 하나일 수 있습니다.
str
run을 확인할 수 있는 W&B URL입니다.
str
Workspace 설정 파일의 경로입니다.
str
스윕을 확인할 수 있는 W&B URL입니다.
str
run의 파일을 저장할 디렉터리입니다.
str
추가 전용 바이너리 트랜잭션 로그 파일의 경로입니다.
str
가장 최근 run의 트랜잭션 로그 파일을 가리키는 심볼릭 링크의 경로입니다.
str
run의 시간 사양입니다.
str
wandb 디렉터리의 전체 경로입니다.
메서드
메서드 Settings.validate_anonymous()
인수
object
설명이 제공되지 않았습니다.
메서드 Settings.validate_x_extra_http_headers()
인수
_empty
설명이 없습니다.
메서드 Settings.validate_x_stats_coreweave_metadata_base_url()
인수
_empty
설명이 제공되지 않았습니다.