wandb 패키지)의 릴리스 노트가 포함되어 있습니다. W&B Server에 대해서는 W&B Server 릴리스 노트를 참조하세요.
주요 변경 사항
- Python 3.8은 더 이상 지원되지 않습니다.
추가됨
wandb beta leetTUI가 이제 여러 run 워크스페이스를 지원합니다.wandb beta leet config명령으로wandb beta leet의 영구 설정을 대화형으로 구성할 수 있습니다.wandb.apis.public.Project의owner속성을 사용하여 프로젝트 소유자의 사용자 정보에 액세스할 수 있습니다.
수정됨
- 삭제된 스윕에 대한 스윕 에이전트가 404 오류를 반복하며 무기한 실행될 수 있던 버그를 수정했습니다.
wandb-core크래시가 오래된 Python 버전에서 매우 길고 반복적인 트레이스백을 생성할 수 있던 버그를 수정했습니다.- v0.24.0에서 도입된 회귀로 인해 TensorBoard 동기화가 1 MB의 데이터만 동기화한 뒤 중단될 수 있던 문제를 수정했습니다.
주요 변경 사항
wandb==0.24.0으로 생성된 Runs는 일부 데이터를 업로드하지 못할 수 있었는데, 이번 릴리스에서 이 문제가 수정되었습니다. 누락된 데이터는 run의.wandb파일에 저장되며wandb sync로 다시 업로드할 수 있습니다.
추가됨
- Parquet 파일 형식으로 내보낸 run 히스토리를 다운로드하기 위한
api.Run클래스의download_history_exports가 추가되었습니다.
변경됨
- 설정 파일(
./wandb/settings또는~/.config/wandb/settings등)에 유효하지 않은 설정이 포함된 경우, 모든 설정 파일을 무시하고 오류를 출력하도록 동작이 변경되었습니다.
수정됨
wandb login --host <invalid-url>이후에wandb login --host <valid-url>를 사용하면 정상적으로 동작하도록 수정했습니다.wandb beta sync가Syncing...단계에서 멈추고 자격 증명을 로드하지 못할 수 있는 버그를 수정했습니다.- 업로드되지 않은 데이터가 간헐적으로 발생할 수 있던 버그를 수정했습니다. 이제 모든 데이터는 run의
.wandb파일에 저장되며wandb sync로 다시 업로드할 수 있습니다.
주요 변경 사항
이 버전에서는 레거시이며 사용이 중단된wandb.beta.workflows 모듈과 그 안의 log_model()/use_model()/link_model() 함수를 제거했습니다. 이는 형식적으로는 호환성이 깨지는 변경 사항(breaking change)입니다.추가됨
wandb agent와wandb.agent()가 이제forward_signals플래그(CLI:--forward-signals/-f)를 받아, 에이전트에서 스윕 자식 run으로 SIGINT/SIGTERM 및 기타 캐치 가능한 시그널을 전달할 수 있습니다. 이를 통해 에이전트 프로세스를 중단할 때 더 깔끔하게 종료할 수 있습니다.wandb beta sync가 이제 run이 로깅 중일 때도 동기화할 수 있는--live옵션을 지원합니다.
제거됨
- 사용이 중단된
wandb.beta.workflows모듈과 그 안의log_model(),use_model(),link_model()함수를 제거했습니다. 이들의 최신 대체 기능은 각각Run.log_artifact,Run.use_artifact,Run.link_artifact메서드입니다.
수정됨
- 예외가 발생하지 않을 때 전달되는
None값을 받을 수 있도록Run.__exit__타입 주석을 수정했습니다. random.seed()호출 이후 아티팩트를 생성할 때 발생하던Invalid Client ID digest오류를 수정했습니다. 랜덤 상태를 결정론적으로 시드한 경우 Client ID가 충돌할 수 있었습니다.- 비어 있는 아티팩트를 나열할 때 발생하던 CLI 오류를 수정했습니다.
- Sweeps run에서
api.run()을 호출할 때 발생하던 회귀(regression)를 수정했습니다. - run 종료 시 출력되는 “View run at” 메시지에 URL이 포함되지 않을 수 있던 문제를 수정했습니다.
wandb.Api()로 조회한 Runs가 이제 VSCode 노트북에서 깨진 HTML 창 대신 문자열 표현으로 표시됩니다.
추가됨
wandb beta leet명령에서 메트릭 및 run 개요 필터에 정규식이 지원됩니다.wandb beta leet명령에 차트 인스펙션 기능이 추가되었습니다. 마우스 오른쪽 버튼을 누른 채로 드래그하면 가장 가까운 데이터 포인트의 (x, y) 좌표를 표시할 수 있고, Alt 키를 누른 상태에서는 표시 중인 모든 차트에서 인스펙션이 동기화됩니다.- Automations API가 이제 run 상태를 트리거 조건으로 사용하는 automation을 생성 및 편집하는 기능을 지원합니다.
- Automations API가 이제 기본적인 zscore automation 이벤트를 지원합니다.
- 더 빠른 히스토리 스캔 성능을 위해
wandb.Api와 함께 사용할 수 있도록Run객체에beta_history_scan메서드가 추가되었습니다.
변경됨
WANDB_IDENTITY_TOKEN_FILE이 설정되어 있고 명시적인 API 키가 제공되지 않은 경우,wandb.Api()가 이제UsageError를 발생시킵니다.
사용 중단됨
- 익명 모드는 사용 중단(deprecated)되었으며 경고를 출력합니다. 이 사용 중단에는
anonymous설정,WANDB_ANONYMOUS환경 변수,wandb.init(anonymous=...), 그리고wandb login --anonymously및wandb.login(anonymous=...)명령이 포함됩니다.
수정됨
wandb.Image()가 더 이상 사용 중단 경고를 출력하지 않습니다.Registry.description및ArtifactCollection.description이 더 이상 빈 문자열을 거부하지 않습니다.Artifact객체 인스턴스화 속도가 크게 빨라졌습니다.wandb.Run.save()는 심볼릭 링크가 비활성화되어 있거나 사용 불가능한 경우(예: 볼륨 간, 또는 Windows에서 개발자 모드가 아닐 때) 하드 링크를 사용하고, 필요 시 복사로 폴백하며(해당되는 경우 파일 정책을 “live”에서 “now”로 강등하여) 동작합니다.- 아티팩트 컬렉션 별칭은 이제
ArtifactCollection인스턴스화 시점이 아니라ArtifactCollection.aliases에 접근할 때 지연 로딩되며, 이로 인해Api.artifact_collections(),Api.registries().collections()등의 성능이 개선되었습니다. - 로그인 시
wandb.init(settings=wandb.Settings(api_key="..."))에 명시적으로 제공된 API 키를 사용합니다.run.log_artifact를 통해 아티팩트를 로깅할 때는 해당 run에서 사용 중인 키를 사용합니다. - W&B LEET TUI가 이제 음수 Y축 눈금 값과 특정 시스템 메트릭의 기준/표시 단위를 올바르게 표시합니다.
console_capture.py에서 발생하던 드문 무한 루프가 수정되었습니다.- 파일 업로드/다운로드가 이제 reference artifacts를 제외하고
WANDB_X_EXTRA_HTTP_HEADERS를 준수합니다.
추가됨
- 실험적인
wandb beta leet명령(Lightweight Experiment Exploration Tool) — 로컬에서 W&B run을 실시간 메트릭 시각화 및 시스템 모니터링과 함께 터미널 UI로 확인할 수 있는 경량 도구가 추가되었습니다. - Registry API가 이제 개별 registry의 사용자 및 팀 멤버를 프로그래밍 방식으로 관리하는 기능을 지원합니다.
Registry.id가Registry객체의 (읽기 전용) 프로퍼티로 추가되었습니다.
수정됨
Artifact.files()가 이제names파라미터로 필터링할 때 올바른len()값을 반환합니다.- 파일 업로드 진행률의 분자가 더 이상 총 파일 크기를 가끔 초과하지 않습니다.
Artifact.link()가 이제Run.link_artifact()의 동작과 일관되게, 오류를 발생시키는 대신 저장되지 않은 아티팩트를 로깅합니다.- VSCode의 Jupyter notebook 확장에서 ipython 노트북을 실행할 때 자동 코드 저장 기능이 이제 정상적으로 동작합니다.
Artifact.metadata에 무한대 실수(infinite float)가 포함된 아티팩트를 로깅하면, 요청 재시도 타임아웃을 기다리는 대신 더 이른 시점에ValueError를 발생시킵니다.
추가됨
- 콘솔 로그 파일을 크기 및 시간 기준으로 멀티파트 청크로 분할하기 위한 설정값
console_chunk_max_seconds및console_chunk_max_bytes를 추가했습니다. - Registry API 쿼리 메서드(
Api.registries(),Registry.{collections,versions}(),Api.registries().{collections,versions}())가 이제 페이지네이션 결과에 대한 기본 배치 크기를 재정의할 수 있도록per_page키워드 인자를 받습니다.
변경됨
- 40자를 초과하는 API 키도 이제 지원합니다.
수정됨
-
v0.22.1에서
artifact.logged_by()를 호출할 때run.config가 이제 딕셔너리를 올바르게 반환합니다. -
wandb.Api(api_key=...)가 이제 스레드 로컬 캐시 자격 증명보다 명시적으로 제공된 API 키를 우선시합니다. -
console_capture.py에서 드물게 발생하던 교착 상태를 수정했습니다. 교착 상태 동안 스레드 트레이스백을 덤프했을 때wandb-AsyncioManager-main스레드가console_capture.py의 한 줄에서 멈춰 있는 것을 본다면: 이제 이 문제가 해결되었습니다. - tfevents 파일이 실시간으로 기록되고 있을 때 가끔 TensorBoard 동기화가 중단되던 문제를 수정했습니다.
-
Artifact.manifest는 아티팩트 매니페스트가 처음 사용될 때까지 매니페스트를 다운로드하고 다운로드 URL을 생성하는 작업을 모두 지연시킵니다. 매니페스트가 로컬에서 수정되지 않은 경우,Artifact.size와Artifact.digest는 전체 매니페스트를 가져올 때까지 기다리지 않고 반환될 수 있습니다. -
artifact.add_reference를 통해 GCS 폴더 참조를 업로드하지 못하던 문제를 수정했습니다. -
SDK가 이제 Jupyter 세션에서 노트북 경로를 서버의 루트 디렉터리를 기준으로 올바르게 추론하므로, 하위 디렉터리(예:
code/nested/<notebook>.ipynb)에서도 코드 저장이 제대로 동작합니다.
수정됨
output.log파일이 업로드되지 않던 일부 사례가 해결되었을 가능성이 있습니다.- 변경되지 않은 파일에 대해
run.save()를 반복 호출할 때 과도한 데이터 업로드가 발생하던 문제를 수정했습니다.
추가됨
- 체크섬 캐싱을 통해 아티팩트 다운로드 재검증을 최적화했습니다.
- run 목록을 나열할 때 성능을 개선하기 위해
Api().runs()에 대한 지연 로딩(lazy loading) 지원을 추가했습니다. 새 매개변수lazy=True(기본값)는 처음에는 필수 메타데이터만 로드하고, config 및 summary와 같은 무거운 필드는 접근 시 자동으로 온디맨드 로딩합니다. - 아티팩트를 생성할 때
storage_region옵션을 추가했습니다. 사용자는 wandb.ai를 사용할 때wandb.Artifact(storage_region="coreweave-us")를 지정하여 CoreWeave AI Object Storage를 통해 CoreWeave 인프라에서 더 빠르게 아티팩트를 업로드/다운로드할 수 있습니다.
수정됨
Api.artifact_exists()와Api.artifact_collection_exists()는 이제 타임아웃 오류가 발생하면False를 (잠재적으로 잘못) 반환하는 대신 예외를 발생시킵니다.
주목할 만한 변경 사항
이 버전에서는 MacOS 10 지원이 제거되었습니다.제거됨
- 여러 보안 및 공급망 관련 고려 사항으로 인해 MacOS 10.x를 타깃으로 하는 빌드를 제거했습니다.
수정됨
- 다른 활성 run이 있는 상태에서 run을 재개(resume)하려고 하면, 먼저
run.finish()를 호출하거나reinit='create_new'파라미터와 함께wandb.init()을 호출하지 않는 한 이제 오류를 발생시킵니다. - wandb 서버 < 0.51.0(여기서
project.internalId가 gql API에 추가됨)에서Api().runs()동작을 수정했습니다. - Sweeps:
import readline을 직접 또는 간접적으로(예: Python 3.13에서import torch) 수행하는commandrun 스크립트가 더 이상 교착 상태에 빠지지 않아야 합니다.
추가
- DSPy 인테그레이션 추가: 시간 경과에 따른 평가 메트릭을 추적하고, 예측과 프로그램 시그니처 변화를 W&B Tables에 로깅하며, DSPy 프로그램을 W&B Artifacts로 저장합니다(전체 프로그램 또는 상태를 JSON/PKL로 저장).
변경
click의존성 제약을>=7.1에서>=8.0.1로 업데이트했습니다.
수정
- 아무런 변경 사항이 없을 때는 “Changes to your wandb environment variables will be ignored” 메시지가 더 이상 출력되지 않습니다.
주요 변경 사항
이 버전부터는Artifact.link() 또는 Run.link_artifact() 호출 시, 이전에는 무시되던 오류가 이제는 발생하도록 변경되었습니다. 이는 해당 메서드에서 감지되지 않은 실패를 방지하는 장점이 있지만, 동시에 호환성을 깨는 변경이기도 합니다.추가
max_end_of_run_history_metrics및max_end_of_run_summary_metrics에 대한 새로운 설정이 추가되었습니다.- W&B run이 활성 상태이고
weave가 임포트된 경우 Weave를 자동으로 초기화하는 새로운wandb.integration.weave모듈이 추가되었습니다.
변경
- 아티팩트를 링크하는 동안 발생한 오류는 더 이상 무시되거나 조용히 처리되지 않으며,
Artifact.link()및Run.link_artifact()는 더 이상None을 반환하지 않습니다. - run 종료 시 출력되는 “Run history” 및 “Run summary”는 이제 각각 10개의 메트릭으로 제한됩니다.
수정
- run의
config안에 있는 dataclass가 dataclass의 필드로 실제 클래스를 포함하더라도 더 이상Object of type ... is not JSON serializable오류를 발생시키지 않습니다. Artifact.link()및Run.link_artifact()는 서버 버전 0.74.0+에서 더 빨라졌으며, 불필요한 차단 GraphQL 요청이 약 4~5개 줄었습니다.
주요 변경 사항
Api().runs(...) 및 Api().sweeps(...)의 기본 정렬 순서는 이제 run의 created_at 시간 기준 오름차순으로 설정됩니다.추가됨
define_metric에firstsummary 옵션을 지원합니다.- 페이지네이션이 적용된 스윕을 지원하도록 기능을 추가했습니다.
- W&B 백엔드에서 주어진 패턴과 일치하는 파일만 가져오기 위한
Api().run().files의pattern파라미터를 추가했습니다. - 비밀 형식의 문자열을 지정할 수 있도록 Launch 입력 JSONSchema에 선택적
format키를 추가했습니다.
변경됨
Sweep.name속성은 이제 가능한 경우 사용자가 편집한 표시 이름을 반환합니다(그렇지 않으면 스윕 설정의 원래 이름, 그다음 이전과 같이 스윕 ID를 사용).Api().runs(...)및Api().sweeps(...)는 이제 run의created_at시간 기준 오름차순으로 run을 반환합니다.- 큰 파일(>2GB)이 포함된 아티팩트 업로드 시, 더 많은 코어를 가진 시스템에서 병렬 해싱을 사용하여 더 빠르게 업로드합니다.
- Python의 lazy iterator 동작과 일치하도록 레지스트리 이터레이터에 대한
__bool__구현을 제거했습니다.
사용 중단 예정
wandb.beta.workflows모듈과 그 안의 모든 내용(log_model(),use_model(),link_model()포함)은 사용 중단(deprecated)되었으며, 향후 릴리스에서 제거될 예정입니다.
수정됨
- 조직 레지스트리 아티팩트의 URL이 아티팩트 타입과 무관하게 올바르게 설정되도록 수정했습니다.
- sanitize된
InternalArtifact이름의 접미사가 6자리 영숫자 문자로 단축되었습니다. WANDB_SILENT/WANDB_QUIET환경 변수가 설정된 경우,wandb.Video는 비디오 인코딩 중 진행 스피너를 출력하지 않습니다.api.registries()로 가져온 레지스트리의 이름과 full_name 필드에 불필요하게 붙던wandb-registry-접두사를 제거했습니다.sync_tensorboard사용 시 발생할 수 있던 크래시를 수정했습니다.Api().run(...).upload_file은 이제 지정된 루트 디렉터리를 기준으로 다른 경로의 파일을 업로드해도 더 이상 에러를 발생시키지 않습니다.- public API run 객체에서
load()함수를 호출해도 더 이상TypeError가 발생하지 않습니다. wandb.agent()API가 호출하는 Sweeps run 함수에서 예외가 발생하면, 이제 해당 예외가 run의 로그 페이지에 표시됩니다. (이전에는wandb agentCLI 명령으로 호출된 run에 대해서만 이렇게 동작했습니다.)
주요 변경 사항
이 버전에서는service 프로세스의 레거시 구현이 제거되었습니다. 이는 하위 호환성이 깨지는 변경입니다.추가됨
x_stats_pid에서 시작하여 전체 프로세스 트리에 대해 사용 중인 RSS, CPU%, 스레드 수 같은 프로세스별 메트릭을 추적하기 위해x_stats_track_process_tree설정을 추가했습니다. 비용이 많이 들 수 있어 기본적으로 비활성화되어 있습니다.- run을 재개(resume)할 때 이제 Notes가 클라이언트로 반환됩니다.
- API를 통해 사용자 정의 Vega 차트 프리셋을 생성하는 기능이 추가되었습니다. 이제 사용자는 사용자 정의 차트 사양을 정의하고 업로드하여
wandb.plot_table()을 사용해 run 간에 재사용할 수 있습니다.
변경됨
Artifact.link()를 호출해도 더 이상 일회용 placeholder run을 생성하지 않습니다.wandb는 이제 localhost에서 리스닝하는 대신 IPC를 위해 Unix 소켓 사용을 시도하므로, (Databricks와 같이) 권한이 더 제한적인 환경에서도 동작합니다.Api.artifact()는 마이그레이션된 model registry 컬렉션에서 아티팩트를 가져오는 동안 경고를 표시합니다.wandb.Api에서 조회된 객체의.length는 더 이상 사용되지 않습니다. 대신len(...)을 사용하세요.
제거됨
-
service프로세스의 레거시 Python 구현이 제거되었습니다.wandb.require의legacy-service옵션과, 여기에 해당하는 환경 변수와 함께 사용되던x_require_legacy_service및x_disable_setproctitle설정이 제거되었으며, 사용 시 이제 오류가 발생합니다. -
비공개 속성
wandb.Run._metadata가 제거되었습니다. 자동 감지된 CPU 및 GPU 개수와 GPU 타입을 재정의하려면 새로운 설정인x_stats_{cpu_count,cpu_logical_count,gpu_count,gpu_type}를 사용하세요.
수정됨
- 참조 아티팩트에 대해 s3 스타일 CoreWeave URI를 허용합니다.
- 대량의 데이터를 로깅한 후 드물게 Ctrl+C가 동작하지 않던 버그를 수정했습니다.
- service 프로세스에서 발생하는 경고에 대해
Run인스턴스에 전달된silent,quiet,show_warnings설정을 준수합니다. api.Runs는 더 이상 W&B에서 로드되는 각 run마다 API 호출을 수행하지 않습니다.- 환경 변수에서
x_extra_http_headers설정을 올바르게 파싱합니다. .length는 데이터가 아직 로드되지 않았을 때None을 반환하는 대신, 객체의 길이를 로드하기 위해 W&B 백엔드에 호출을 수행합니다.
수정됨
-
wandb.Image()가 0.20.0에서 값 범위가 [0, 1]인 NumPy 배열을 전달할 경우 동작하지 않던 문제가 수정되었습니다. -
wandb.Table: 새로운 생성자 파라미터
log_mode가 추가되었으며,"IMMUTABLE"및"MUTABLE"옵션을 사용할 수 있습니다.IMMUTABLE로그 모드(기본값)는 테이블을 한 번만 로깅할 수 있는 기존 동작입니다.MUTABLE로그 모드는 테이블이 변경(mutate)된 경우 다시 로깅할 수 있게 합니다. (https://github.com/wandb/wandb/pull/9758 의 @domphan-wandb) -
wandb.Table: 새
log_mode인"INCREMENTAL"이 추가되었으며, 새로 추가된 테이블 데이터를 점진적으로 로깅합니다. (https://github.com/wandb/wandb/pull/9810 의 @domphan-wandb)
주목할 만한 변경 사항
이 버전에서는service 프로세스를 비활성화하는 기능이 제거되었습니다. 이는 하위 호환성이 깨지는 변경입니다.추가됨
- 이전에 추가된 아티팩트 파일을 덮어쓸 수 있도록
Artifact.add_dir에merge파라미터가 추가되었습니다. wandb.Image객체를 생성할 때masks및boxes파라미터에 대해 PyTorch 텐서를 지원합니다.sync_tensorboard가 이제 S3, GCS, Azure에 저장된 tfevents 파일 동기화를 지원합니다.- GCS 경로는
gs://bucket/path/to/log/dir형식을 사용하며,gcloud auth application-default login으로 설정할 수 있는 애플리케이션 기본 자격 증명에 의존합니다. - S3 경로는
s3://bucket/path/to/log/dir형식을 사용하며,aws configure를 통해 설정된 기본 자격 증명에 의존합니다. - Azure 경로는
az://account/container/path/to/log/dir형식을 사용하며az login자격 증명에 의존하지만, 추가로AZURE_STORAGE_ACCOUNT및AZURE_STORAGE_KEY환경 변수를 설정해야 합니다. 이외에도 몇 가지 다른 환경 변수를 지원합니다. 자세한 내용은 여기를 참조하세요.
- GCS 경로는
- 일부 Media 객체를
pathlib.Path로 초기화할 수 있는 기능이 추가되었습니다. - 트랜잭션 로그를 건너뛸 수 있게 해 주는 새로운 설정
x_skip_transaction_log가 추가되었습니다. 참고: 복구 가능성에 대한 보장을 제공하지 않게 되므로, 주의해서 사용해야 합니다. - NumPy 배열 또는 PyTorch 텐서로 초기화된 이미지의 픽셀 값을 정규화하기 위한
wandb.Image초기화용normalize파라미터가 추가되었습니다.
변경됨
- 여러 API가 잘못된 타입의 인자를 받았을 때, 이제
ValueError또는 기타 일반적인 에러 대신TypeError를 발생시킵니다. - 여러 Artifacts 및 Automations API가 서버 에러를 만났을 때, 서버 에러 메시지를 노출하기 위해 이제
ValueError대신CommError를 발생시킵니다. wandb.sdk.wandb_run.Run::save메서드는 이제glob_str인자를 필수로 요구합니다.
제거됨
service프로세스를 비활성화하는 기능이 제거되었습니다.x_disable_service/_disable_service설정과WANDB_DISABLE_SERVICE/WANDB_X_DISABLE_SERVICE환경 변수는 사용 중단(deprecated)되었으며, 이제 사용 시 에러를 발생시킵니다.wandb만 import한 뒤에wandb.docker를 사용하는 기능이 제거되었습니다.wandb.docker는wandb의 공개 인터페이스에 속하지 않으며, 하위 호환성이 깨지는 변경이 발생할 수 있습니다. 사용하지 마세요.
wandb.Run::log함수에서 아무 동작도 하지 않던(no-op)sync인자가 제거되었습니다.- 사용 중단된
wandb.sdk.wandb_run.Run.mode프로퍼티가 제거되었습니다. - 사용 중단된
wandb.sdk.wandb_run.Run::join메서드가 제거되었습니다.
사용 중단됨(Deprecated)
start_method설정은 사용 중단되었으며 아무 효과도 없습니다. 안전하게 무시됩니다.- W&B Launch에서 더 이상 사용되지 않기 때문에,
Artifact.use_as프로퍼티와run.use_artifact()의use_as파라미터가 사용 중단되었습니다.
수정됨
wandb.setup()을 호출한 프로세스의 자식 프로세스에서wandb.teardown()을 호출해도 더 이상WandbServiceNotOwnedError를 발생시키지 않습니다.- 이 에러는 W&B Sweeps 사용 시 발생할 수 있었습니다.
- 분기(fork 또는 rewind)가 요청된 오프라인 run이 올바르게 동기화됩니다.
- Job의 wait_until_running 메서드에서 예외를 발생시킬 때, 예외를 문자열로 로깅합니다.
- TensorFlow 데이터로 초기화된
wandb.Image가 NumPy 배열로 초기화된 경우와 다르게 정규화되던 문제가 수정되었습니다. wandb login사용 시 더 이상wandb.require("legacy-service")에 대한 경고를 출력하지 않습니다.- ID에 특수 문자가 포함된 run에서
Table(또는 내부 아티팩트를 생성하는 다른 객체)을 로깅하더라도 더 이상ValueError를 발생시키지 않습니다. base_url로 초기화된wandb.Api가 이제 마지막 로그인 URL이 아닌, 제공된 URL을 올바르게 따릅니다.
추가됨
- SDK에서 레지스트리를 생성, 삭제, 업데이트할 수 있는 기능을 추가했습니다.
- 아티팩트가 Registry와 같은 링크 아티팩트인지 소스 아티팩트인지 판별하기 위해 아티팩트에
artifact.is_link속성을 추가했습니다. - 소스 아티팩트에 연결된 모든 아티팩트를 가져오기 위한
artifact.linked_artifacts와, 링크된 아티팩트의 소스 아티팩트를 가져오기 위한artifact.source_artifact를 추가했습니다. run.link_artifact(),artifact.link(),run.link_model()이 모두 링크 생성 시 링크된 아티팩트를 반환하도록 변경했습니다.- 2GB보다 큰 아티팩트 파일에 대해 멀티파트 다운로드를 지원하며,
artifact.download(multipart=True)를 사용해 사용자가 직접 제어할 수 있습니다. wandb.public.Project에서 프로젝트 ID를 가져오기 위한Project.id속성을 추가했습니다.- W&B Automations를 위한 새로운 공개 API를 추가했습니다.
- W&B Automations를 프로그래밍 방식으로 관리할 수 있도록
wandb.automations.*에 새로운 서브모듈과 클래스를 추가했습니다. - 팀의 기존 Slack 또는 웹훅 인테그레이션을 가져오기 위한
Api.integrations(),Api.slack_integrations(),Api.webhook_integrations()를 추가했습니다. - Automations를 생성, 조회, 수정, 삭제하기 위한
Api.create_automation(),Api.automation()/Api.automations(),Api.update_automation(),Api.delete_automation()를 추가했습니다.
- W&B Automations를 프로그래밍 방식으로 관리할 수 있도록
- run 메트릭 값(절대값 또는 상대 변화량)이 변경될 때 발생하는
RUN_METRIC_CHANGE이벤트에 의해 트리거되는 자동화를 생성하고 편집할 수 있는 기능을 추가했습니다. - DCGM을 사용해 Nvidia GPU에 대한 프로파일링 메트릭을 수집할 수 있는 기능을 추가했습니다. 활성화하려면
WANDB_ENABLE_DCGM_PROFILING환경 변수를true로 설정해야 합니다. 이를 사용하려면 머신에서nvidia-dcgm서비스가 실행 중이어야 합니다. 이 기능을 활성화하면 리소스 사용량이 증가할 수 있습니다.
수정됨
run.log_code가 run 설정의code_path값을 올바르게 설정하도록 수정했습니다.- 시스템 설정 파일 경로를 결정할 때
WANDB_CONFIG_DIR을 올바르게 사용하도록 수정했습니다. - 로그할 수 없게 만드는 잘못된
Artifact및ArtifactCollection이름을 방지하고, 잘못된 이름을 할당하려 할 경우 명시적으로ValueError를 발생시키도록 했습니다. - ForwardRef 필드를 가진 생성된 타입에서
.model_rebuild()/.update_forward_refs()를 호출하지 않아 발생하던 Pydantic v1 환경의 pydanticConfigError를 방지했습니다. - wandb 디렉터리에 쓰기 또는 읽기 권한이 없더라도 더 이상
wandb.init()이Permission denied오류를 발생시키지 않습니다. api.Runs(...)를 통해 쿼리한 파일에서file.delete()를 호출할 때 더 이상CommError가 발생하지 않습니다.- 0.19.1에서 도입된 버그입니다.
추가됨
- 새로운
reinit="create_new"설정을 사용하면 다른 run이 활성 상태이더라도 기존 run을 종료하지 않고(reinit="finish_previous"와 대비됨)wandb.init()이 항상 새로운 run을 생성합니다. 이 설정은 향후 기본값이 될 예정입니다. - 아티팩트의 소스 run에 대해 히스토리 메트릭이 로깅된 가장 가까운 run step을 반환하는
Artifact.history_step을 추가했습니다. - 파일을 가리키는 문자열로
wandb.Html을 초기화할 때 파일 검사를 건너뛰기 위한data_is_not_path플래그를 추가했습니다.
변경됨
Artifact.download()가 더 이상WANDB_MODE=offline을 사용하거나 오프라인 run이 존재할 때 오류를 발생시키지 않습니다.
제거됨
- IPython / Jupyter에서
wandb매직에 대한-q/--quiet인자를 제거했습니다. 대신quietrun 설정을 사용하세요.
사용 중단 예정
- 다음
wandb.Run메서드는 프로퍼티로 대체되며 향후 릴리스에서 제거될 예정입니다(https://github.com/wandb/wandb/pull/8925의 @kptkin 제공).run.project_name()은run.project로 대체되어 사용 중단되었습니다.run.get_url()메서드는run.url로 대체되어 사용 중단되었습니다.run.get_project_url()메서드는run.project_url로 대체되어 사용 중단되었습니다.run.get_sweep_url()메서드는run.sweep_url로 대체되어 사용 중단되었습니다.
수정됨
- 다른 드라이브에서 W&B 스크립트를 실행할 때 Windows에서 발생하던
ValueError를 수정했습니다. base_url설정이wandb.login에 전달되지 않던 문제를 수정했습니다.wandb.Html()이 사용자 시스템의 디렉터리와 일치하는 값에 대해 더 이상IsADirectoryError를 발생시키지 않습니다.
추가됨
reinit설정을"default"로 설정할 수 있습니다.- 새 URL 스킴과 아티팩트 컬렉션 멤버십 컨텍스트를 사용하여 아티팩트 파일 다운로드 URL을 생성하는 기능이 추가되었습니다.
변경됨
reinit설정에 대한 Boolean 값은 사용 중단되었습니다. 대신 “return_previous” 및 “finish_previous”를 사용하세요.- “wandb” 로거의
propagate=False설정이 이제 import 시점에 구성됩니다. 이전에는 run 시작 시점에 설정되었으며, 이로 인해 일부 워크플로에서 루트 로거에서 관찰되는 메시지가 달라질 수 있습니다. - Metaflow는 이제
plum-dispatch패키지가 필요합니다. pydantic버전 요구 사항을 완화하여 v1과 v2를 모두 지원합니다.- 기존
pydantic타입은 Pydantic v1과 호환되도록 조정되었습니다. wandb.init(dir=...)는 상위 디렉터리가 쓰기 가능한 경우,dir내에 존재하지 않는 디렉터리가 있으면 새로 생성합니다.- 서버가 추가 컬렉션 정보를 제공하여 아티팩트 파일을 가져오는 기능을 지원합니다. 이에 따라 Artifacts API를 새 엔드포인트를 사용하도록 업데이트했습니다.
per_page인수를 받는 페이지네이션 메서드(및 내부 페이지네이터)는 이제int값만 허용합니다. 기본per_page값은 메서드 시그니처에 직접 설정되며,None을 명시적으로 전달하는 것은 더 이상 지원되지 않습니다.
수정됨
- 노트북에서
wandb.init()을 호출하면 문서에 기재된 대로 이전 run이 종료됩니다.- 0.19.0에서 도입된 버그
- 투명도 데이터가 포함된
jpg/jpeg이미지를 로깅할 때 발생하던 오류를 수정했습니다. wandb.init(resume_from=...)가 이제 run의id를 명시적으로 지정하지 않아도 동작합니다.- Public API에서 파일 삭제가 다시 동작합니다.
- 0.19.1에서 도입된 버그
- 커스텀 스토리지 버킷을 사용하는 run에 로깅할 때 미디어 파일이 UI에 표시되지 않던 문제를 수정했습니다.
수정됨
- 특수 문자 (?, *, ], [ 또는 )가 포함된 미디어 파일 경로가 더 이상
wandb-core에서 파일 업로드 실패를 일으키지 않습니다.
변경됨
- 시스템 모니터의 기본 메트릭 샘플링 주기가 10초에서 15초로 증가했습니다.
추가됨
- Registry 검색 API를 추가했습니다.
변경됨
- moviepy 제약 조건을 >=1.0.0으로 변경했습니다.
wandb.init()이 특히 HTTP 오류를 재시도하느라 멈춰 있는 경우 더 자세한 정보를 표시합니다.
제거됨
- 프라이빗 설정인
x_show_operation_stats를 제거했습니다.
수정됨
- moviepy v2를 사용할 때 “wandb.Video requires moviepy […]” 예외가 잘못 로깅되던 문제를 수정했습니다.
wandb.setup()이 내부 서비스 프로세스를 올바르게 시작하도록 수정했습니다. 이 동작은 0.19.2에서 의도치 않게 깨졌습니다.- numpy 숫자 타입을 값으로 사용할 때 발생하던
TypeError: Object of type ... is not JSON serializable문제를 수정했습니다.
추가됨
- Nvidia DCGM GPU 메트릭 수집을 위한 Prometheus API 지원이 추가되었습니다.
변경됨
- Nvidia GPU ECC 카운터를 집계(aggregated) 카운터에서 변동(volatile) 카운터로 변경했습니다.
수정됨
wandb.Artifact인스턴스 생성이 느려, 여러 API 메서드에서 아티팩트 가져오기가 느려지던 성능 문제를 수정했습니다.wandb.Api에서 발생하는 일부 오류의 문자열 표현을 개선했습니다.- 디렉터리에 대한 파일 URI와
name파라미터를 함께 사용할 때 Artifact.add_reference가 파일 참조 경로에name값을 잘못 추가하던 문제를 수정했습니다. checksum=False와 함께Artifact.add_reference()를 사용할 때, 참조 URI에 변경이 없는데도 로컬 참조 아티팩트의 새 버전을 로깅하던 버그를 수정했습니다.
추가됨
wandb login --base-url {host_url}을wandb login --host {host_url}의 별칭으로 추가했습니다.
변경됨
- 코어별 CPU 사용량 메트릭 수집을 일시적으로 비활성화했습니다.
수정됨
- 미디어 아티팩트를 로깅할 때
offline모드가 네트워크 요청을 보내던 버그를 수정했습니다. offline 아티팩트 업로드를 지원하지 않는 이전 버전의 W&B Server를 사용 중이라면, 설정allow_offline_artifacts=False를 사용해서 이전과 호환되는 동작으로 되돌리십시오. - 로깅된 테이블 아티팩트 이름에 대한 정제 규칙을 확장하여 하이픈과 점을 허용하도록 했습니다. 이 업데이트로 현재 아티팩트 이름 규칙(영문자, 숫자, 밑줄, 하이픈, 점 허용)에 맞게 규칙을 최신 상태로 맞췄습니다.
- run 되감기 설정인
fork_from및resume_from을 올바르게 처리하도록 수정했습니다.
수정됨
- 칩당 단일 디바이스 / 호스트의 다중 디바이스를 가진 TPU에서 디바이스 개수 및 듀티 사이클 측정값이 잘못 보고되던 문제를 수정하고, TPU 메트릭 샘플링을 더 견고하게 만들었습니다.
- 시스템 모니터에서 연속되지 않은 TPU 디바이스 ID를 처리하도록 수정했습니다.
수정됨
wandb.integration.metaflow에서wandb.Settings업데이트 회귀(regression)를 수정했습니다.
추가됨
- wandb-core에서 JWT 인증을 지원하도록 했습니다.
- 중첩된 커스텀 차트 로깅을 지원하도록 했습니다.
변경됨
- 이제
wandb.init(mode="disabled")를 호출해도 기본적으로 이후의 모든 run이 비활성화되지는 않습니다. 대신wandb.setup(settings=wandb.Settings(mode="disabled"))을 사용하거나, 각wandb.init()호출에서mode="disabled"를 명시적으로 설정하십시오.
수정됨
- 중지 버튼이 C 코드 실행, sleep 등으로 인해 메인 Python 스레드가 실행 중인 run도 올바르게 중단합니다.
wandb.Api().runs()를 확인할 때 발생하던 의도치 않은 출력(프린트)을 제거했습니다.- Azure Blob Storage를 사용할 때 대용량 아티팩트를 업로드하는 문제를 수정했습니다.
wandb offline명령이 더 이상 지원되지 않는 설정을wandb.Settings에 추가하지 않아ValidationError가 발생하지 않습니다.- 제거된 속성에 접근해, run을 재초기화할 때 발생하던 오류를 수정했습니다.
- 여러 프로세스에서 단일 run을 업데이트하기 위해
multiprocessing을 사용할 때 드물게 발생하던 교착 상태를 수정했습니다. - 오래된 버전의
botocore < 1.5.76버그로 인한 오류를 방지했습니다. - 잘못된
anonymous설정 값에 대한 다양한 검사를 수정했습니다.
제거됨
wandb.wandb_sdk.wandb_setup._setup()함수의reset파라미터가 제거되었습니다. 이 함수는 리포지토리 외부에서 사용되는 것처럼 보이지만, 비공개 함수임을 유의하십시오._setup(reset=True)대신wandb.teardown()을 사용하십시오.- 비공개 모듈
wandb.wandb_sdk.wandb_setup에서logger와_set_logger심볼을 제거했습니다.
보안
- CVE-2025-21613을 해결하기 위해
github.com/go-git/go-git버전을 5.13.0으로 업데이트했습니다. - CVE-2024-45338을 해결하기 위해
golang.org/x/net버전을 0.33.0으로 업데이트했습니다.
수정됨
WANDB__SERVICE_WAIT을(를) 설정했을 때wandb.init중 예외가 발생하던 버그를 수정했습니다.
변경됨
run.finish()가 터미널과 Jupyter 노트북에서 더 자세한 정보를 표시합니다.tensorboard.patch()호출이 실패할 때의 오류 메시지를 개선하여, 먼저tensorboard.unpatch()를 호출할 수 있는 옵션을 안내합니다.- 서버가 지원하는 경우
deleteFiles뮤테이션에projectId를 추가했습니다.
보안
- CVE-2024-45337을 해결하기 위해
golang.org/x/crypto버전을 0.31.0으로 올렸습니다.
주요 변경 사항
이 버전에서는 Python 3.7 지원을 중단하고wandb.Run.plot_table 메서드를 제거했습니다.
또한 pydantic>=2.6,<33을 의존성으로 추가했습니다.변경됨
- 기본 동작을 W&B Job을 생성하지 않도록 설정했습니다.
- pydantic>=2.6,<33을 의존성으로 추가했습니다 (@dmitryduev in https://github.com/wandb/wandb/pull/8649 & estellazx in https://github.com/wandb/wandb/pull/8905)
제거됨
wandb.Run.plot_table메서드를 제거했습니다. 해당 기능은 여전히 제공되며, 이제 이 기능을 사용하는 권장 방법인wandb.plot_table을 사용해 접근해야 합니다.- Python 3.7 지원을 중단했습니다.
수정됨
- 검증 배치에 양의 예제가 없을 때
ultralytics리포팅 문제를 수정했습니다. - hyperband 중지 알고리즘의 디버그 출력이 한 줄에 한 글자씩 출력되던 문제를 수정했습니다.
- lightgbm의
wandb_callback함수를 호출할 때 누락되던log_params인자를 포함하도록 수정했습니다.
추가됨
create_and_run_agent를wandb/sdk/launch/__init__.py의__all__에 추가하여 공개 API로 노출했습니다.
변경됨
- 오프라인 모드에서 로깅된 Tables는 동기화 시 아티팩트 경로에 맞게 키가 업데이트되도록 변경되었습니다. 이전 동작으로 되돌리려면 설정
allow_offline_artifacts = False를 사용하세요.
사용 중단 예정
wandb.run.finish()의quiet인수는 사용 중단 예정이며, 대신wandb.Settings(quiet=...)을 사용해 설정하세요.
수정됨
api.artifact()가enable_tracking인수를Artifact._from_name()메서드에 올바르게 전달하도록 수정했습니다.
추가됨
- 이전에 추가된 아티팩트 파일을 덮어쓸 수 있도록
Artifact.add()/Artifact.add_file()에 불리언overwrite파라미터를 추가했습니다.
수정됨
- 패키지 스텁에
wandb.plot모듈의 누락된 타입 힌트를 추가했습니다. - Azure reference 아티팩트 업로드를
max_objects로 제한하지 못하던 문제를 수정했습니다. skip_cache=True로 Azure reference 아티팩트를 다운로드할 때의 문제를 수정했습니다.- 헤더에 콘텐츠 타입이 정의되지 않은 파일에 대한 multipart 업로드 문제를 수정했습니다.
- 이미지 배치를 로깅할 때 tensorboard 동기화가 실패하던 문제를 수정했습니다.
Artifact.new_file()에서mode='x'/mode='w'의 동작이 Python 내장 파일 모드와 일치하도록 수정했습니다.- SDK에서 스윕 파라미터를 구성할 때
distribution파라미터를 무시하지 않도록 수정했습니다.
변경됨
- 외부 사용자가 호출하지 않을 때 사용량 이벤트가 생성되지 않도록, 아티팩트를 가져오기 위한 내부 메서드
api._artifact()를 추가했습니다. - 기존 기본 동작을 정확히 반영하기 위해
Artifact.new_file()의 기본mode를'w'에서'x'로 변경했습니다.
수정됨
- Python 3.7에서
typing_extensions에서Literal을 임포트하도록 수정했습니다. 0.18.4에서 동작이 깨졌습니다.
추가됨
- Apple ARM 시스템에 대해 GPU, eCPU, pCPU 사용률, 전력 소모와 온도, 메모리/스왑 사용률을 포함한 상세 메트릭을 추적하도록 했습니다.
- 사용자가 조직 entity 이름을 입력하지 않고 Registry 아티팩트를 링크할 수 있도록 했습니다.
- 파일 경로 문자열 또는 bytes 객체로부터 wandb.Video 객체를 생성할 때
fps인자가 무시된다는 경고 메시지를 추가했습니다. Run클래스의logged_artifacts및used_artifacts메서드에 대한 docstring을 업데이트했습니다._show_operation_stats설정을 통해 개선된run.finish()UX를 미리 볼 수 있도록 했습니다.
수정됨
- AMD MI300X 시리즈 GPU에서 전력이 로깅되도록 수정했습니다.
wandb.Api의 타입 문제를 수정했습니다.Artifact.save()호출 시 아티팩트 객체가 완전히 업데이트되도록 보장합니다.
변경됨
- 사용 중단 경고를 해결하기 위해
sentry-sdk의 최소 버전을 2.0.0으로 업데이트했습니다.
추가됨
- Google Cloud TPU 디바이스의 사용률 메트릭을 모니터링할 수 있는 기능을 추가했습니다.
수정됨
- Windows에서 Nvidia GPU 통계를 수집하도록 했습니다.
- v0.18.2에서 도입되어 Nvidia GPU 디바이스 이름 캡처에 영향을 준 회귀 문제를 수정했습니다.
run.log_artifact()가 더 이상 아티팩트 업로드가 끝날 때까지 다른 데이터 업로드를 차단하지 않습니다.rdkit-pypi에서rdkit로 업데이트된 rdkit의 미디어 의존성을 수정했습니다.- 많은 대용량 파일을 포함한 아티팩트를 저장할 때 더 이상 OS 쓰레드를 소진하지 않습니다.
변경됨
artifact = run.log_artifact()이후, 아티팩트 업로드가 완료되었음을 전제로 하는 작업을 수행하기 전에 반드시artifact.wait()를 호출해야 합니다. 이전에는run.log_artifact()가 run의 다른 작업을 차단했기 때문에, 일부 경우에는 이 호출이 필요하지 않았습니다.
추가됨
wandb.Api에upsert_run_queue메서드를 추가했습니다.- 태그로 아티팩트를 필터링하기 위해
wandb.Api.artifacts()에tags파라미터를 추가했습니다.
수정됨
wandb.init()이 반환하는Run인스턴스처럼 아티팩트 태그를 지원하기 위해wandb.api.public.runs.Run.log_artifact()의 시그니처와 docstring을 업데이트했습니다.- 자동 완성을 지원하기 위해
wandb.watch의 docstring을 추가했습니다. /를 포함하는 키가 로깅된 경우에도 동작하도록define_metric의 glob 매칭을 수정했습니다.- 점이 포함된(dotted) 메트릭 이름을 참조하기 위해
run.define_metric에서a\.b구문을 허용합니다.- 참고:
wandb.require("legacy-service")를 사용하는 경우에는 수정되지 않습니다.
- 참고:
- TensorBoard를 통해 gif를 업로드할 때 발생하던 Unknown image format 오류를 수정했습니다.
- 마운트된 파일 시스템의 파일 경로와 함께
Artifact.add_file을 호출할 때 발생하던OSError를 수정했습니다. - wandb-core에 대해 macOS 10.15 이하 버전과의 호환성을 복원했습니다.
수정됨
- core가 활성화된 경우 모든 사용자가 캐시 파일을 읽을 수 있도록 했습니다.
- TensorBoard에 로깅된 무한 스칼라는 건너뛰지 않고 성공적으로 업로드됩니다.
WANDB_ERROR_REPORTING=false설정을 올바르게 반영합니다. 이는 0.18.0에서 도입된 회귀 문제를 수정합니다.
변경됨
- sendLinkArtifact에 대한 sentry 로깅을 제거했습니다.
- Run.log_code에서 기본적으로 requirements.txt를 캡처하도록 변경했습니다.
주요 변경 사항
이 버전에서는 기본적으로wandb.require("core")를 활성화하여 wandb를 새로운 백엔드로 전환합니다. 이는 호환성을 깨뜨리는 변경은 아니지만, 새로운 백엔드는 레거시 기능 및 드문 엣지 케이스에서 예상치 못한 동작 차이를 보일 수 있습니다.추가됨
Artifact.tags및Run.log_artifact()를 통해 아티팩트 태그를 지원하도록 했습니다.
수정됨
- VS Code 내장 Jupyter 서버에서 노트북 이름을 감지하도록 했습니다.
변경됨
- 이전에
wandb.require("core")로 활성화하던 새로운 “core” 백엔드를 이제 기본값으로 사용합니다. 레거시 동작으로 되돌리려면 스크립트의 맨 앞에wandb.require("legacy-service")를 추가하세요. 참고: 향후 마이너 릴리스에서 이 새로운 동작을 비활성화하는 옵션은 제거될 예정입니다.
변경됨
- 기본 시스템 메트릭 샘플링 간격을 평균 없이 10초로 변경했으며,
wandb.init(settings=wandb.Settings(_stats_sampling_interval=...))을 통해 사용자 지정 간격을 설정할 수 있도록 했습니다.
사용 중단 예정
define_metric(summary='best', goal=...)는 사용 중단(deprecated)되었으며 곧 제거될 예정입니다. 대신define_metric(summary='min')또는define_metric(summary='min')을 사용하세요.
추가됨
- core를 사용할 때 Nvidia GPU 디바이스에 대해 SM(Streaming Multiprocessor), 메모리 및 그래픽 클록 속도(MHz), 교정/비교정 오류 개수, 팬 속도(%), 인코더 사용률을 캡처합니다.
wandb.Config를 사전처럼 반복(iterate)할 수 있도록 했습니다.- core가 활성화된 상태에서 TensorBoard를 사용할 때 PR 커브, 이미지 및 히스토그램을 지원하도록 했습니다.
wandb.require("core")에 대한 옵트아웃 옵션으로wandb.require("legacy-service")를 추가했습니다.
수정됨
- 사용자가 Ctrl+C를 두 번 눌렀을 때 wandb-core 프로세스가 남지 않도록 했습니다.
numpy.reshape에서newshape인수를 제거하여 NumPy >= 2.1에서 발생하던 사용 중단 경고를 수정했습니다.- 폴더에 해당하는 GCS 참조 아티팩트 매니페스트 엔트리를 업로드/다운로드에서 건너뛰도록 했습니다.
사용 중단 예정
- 서비스 프로세스를 비활성화하는 기능(
WANDB__DISABLE_SERVICE)은 사용 중단되었으며, 다음 마이너 릴리스에서 제거될 예정입니다.
수정됨
- core를 사용할 때
libnvidia-ml.so를 사용할 수 없는 경우에도 Nvidia GPU 메트릭이 캡처되도록 했습니다. - core를 사용할 때
define_metric("x", step_metric="x")를 허용하도록 했습니다. - core를 사용할 때 빈 파일이 올바르게 업로드되도록 했습니다.
- core를 사용하여 run을 종료할 때 간헐적으로 발생하던 “send on closed channel” 패닉을 수정했습니다.
추가됨
- job을 실행할 때 더 나은 UI를 제공하기 위해
manage_config_file또는manage_wandb_config를 호출할 때 job 입력 스키마를 지정할 수 있도록 했습니다. - 매니페스트 엔트리가 10만 개를 초과하는 경우 프로토버프 메시지 대신 파일 시스템을 사용하여 core 프로세스로 매니페스트를 전송하도록 했습니다.
Box3D를 위한box3d생성자를 추가했습니다.
변경됨
run.define_metric()에 불필요한 인수를 전달하면 에러를 발생시키도록 했습니다.- 비활성 모드에서 제거된
wandb.sdk.wandb_run.RunDisabled대신wandb.sdk.wandb_run.Run클래스를 사용하도록 했습니다. WANDB_MODE = offline인 경우artifact.download()를 호출하면 멈추는 대신 에러를 발생시키도록 했습니다.
수정됨
- 계층적 네임스페이스(Hierarchical Namespace)가 활성화된 Azure Storage 계정에 외부 아티팩트를 로깅할 때 디렉터리 스텁을 올바르게 처리하도록 했습니다.
- https://github.com/wandb/wandb/pull/7675 에서 누락되었던, 기본 정렬 순서에 대한
api.runs()의 docstring을 수정했습니다.
추가됨
- wandb-core를 사용할 때 S3로의 멀티파트 업로드를 지원합니다.
변경됨
run.finish()는 이전에os._exit()를 호출하던 일부 경우에 이제 예외를 발생시킬 수 있습니다.run.link_artifact()가 이제 서버 오류를 노출할 수 있습니다.
수정됨
- 아티팩트를 다운로드할 때 디렉터리 이름과 대응하지 않는
path_prefix를 처리합니다. incremental=True플래그로 아티팩트를 생성하거나 업데이트하는 동작을 수정했습니다.- AmazonSageMaker에 W&B Launch 잡을 제출할 때 값이 채워진 resource_arg 매크로를 사용합니다.
추가됨
- Launch 스윕 스케줄러 잡에서 큐 템플릿 변수를 지원합니다.
수정됨
- 내부 서브프로세스가 0이 아닌 코드로 종료될 경우
os._exit()대신sys.exit()를 사용합니다. - run 로그에 영향을 줄 수 있는,
core사용 시 간헐적으로 발생하던 레이스 컨디션을 수정했습니다. - 서로 다른 파일 시스템을 사용할 때 발생하던
Artifact.download(skip_cache=True)의 OSError를 수정했습니다.
수정됨
- Windows에서 netrc 파일 이름을
_netrc로 올바르게 지정합니다. - core가 활성화된 경우 중첩된
tqdm바가 Logs 탭에 올바르게 표시됩니다. - W&B Launch 레지스트리 ECR 정규식을 수정하여 태그를 슬래시와 마침표를 기준으로 올바르게 분리합니다.
추가됨
- CLI에서 스윕을 생성할 때 이전 run을 포함합니다.
수정됨
numpy>=2지원 관련 문제를 수정했습니다.- Windows에서 HTML 파일을 열 때 UTF-8 인코딩을 지정하여 “UnicodeDecodeError: ‘charmap’” 오류를 수정했습니다.
- 연결된 아티팩트에 대해
Artifact.delete()가 소스 아티팩트가 아니라 링크만 제거하도록 보장합니다. - @TimH98 https://github.com/wandb/wandb/pull/7684에 의해, 스윕 run이 실제로는 재개되지 않았을 때 재개된 것처럼 보이던 문제를 수정했습니다.
변경됨
- github.com/vektah/gqlparser/v2를 2.5.11에서 2.5.16으로 업그레이드했습니다.
추가
- 지정된 조건을 만족하는 run들의 히스토리 메트릭을 가져오기 위한
api.runs().histories()를 추가했습니다. - Kubernetes 파드 스케줄링에 실패했을 때 경고를 표시합니다.
- 변경 내용을 영구 저장할 수 있도록
ArtifactCollection.save()를 추가했습니다. - 임의의 스텝에서 이전 run의 히스토리를 덮어쓰고, 그 스텝부터 계속 로깅할 수 있는 기능을 추가했습니다.
- W&B Workspaces를 프로그래밍 방식으로 편집할 수 있는 새로운 Workspace API를 추가했습니다.
- 아티팩트를 프로그래밍 방식으로 언링크할 수 있도록
Artifact.unlink()를 추가했습니다. wandb.require("core")와 함께 실행할 때 기본적인 TensorBoard 지원을 추가했습니다.- W&B의 TensorBoard 탭이 정상 동작합니다.
- core 없이 실행할 때보다 더 나은 형태로, 차트가 W&B에 표시됩니다.
- 아직 모든 유형의 데이터가 지원되는 것은 아닙니다. 지원되지 않는 데이터는 차트에 표시되지 않습니다.
수정
shared모드에서 여러 메트릭에 대한define_metric동작을 수정했습니다.- run에서 run.use_artifact()를 호출할 때 내부 API로 프로젝트 이름이 올바르게 전달되도록 수정했습니다.
console_multipart설정이 활성화된 상태에서 run 재개 시 콘솔 출력 로그 파일이 올바르게 업로드되지 않던 문제를 @kptkin https://github.com/wandb/wandb/pull/7694 및 @dmitryduev https://github.com/wandb/wandb/pull/7697이(가) 수정했습니다.- 스윕 설정에서 앞에 0이 붙은 8진수가 아닌 문자열을 정수 대신 문자열로 해석하도록 수정했습니다(@KyleGoyette https://github.com/wandb/wandb/pull/7649).
- Launch에서 Azure 리포지토리 URI 형식을 지원하도록 했습니다(@KyleGoyette https://github.com/wandb/wandb/pull/7664).
- 슬래시(
/)가 포함된 별칭이 있는 아티팩트의 경로 파싱을 수정했습니다. Api클래스의 모든 public 메서드에 누락된 독스트링을 추가했습니다.- job builder가 빌드한 잡에 최신 별칭이 올바르게 추가되도록 수정했습니다(@KyleGoyette https://github.com/wandb/wandb/pull/7727).
변경
- 콘솔 출력 로그의 이름 규칙을
output.log에서logs/YYYYMMDD_HHmmss.ms_output.log로 변경할 수 있는 옵션을 추가했습니다. - 잠재적으로 안전하지 않은 pickle 파일을 로드하고 역직렬화할 수 있는
use_model호출에 대해unsafe=True가 필수로 요구되도록 했습니다(@anandwandb https://github.com/wandb/wandb/pull/7663). - 중복 응답을 방지하기 위해 api.runs()의 정렬 순서를 오름차순으로 업데이트했습니다(@thanos-wandb https://github.com/wandb/wandb/pull/7675).
- core에서 아티팩트 파일 업로드 중 발생하던 서명된 URL 타임아웃 오류를 제거했습니다.
사용 중단 예정
ArtifactCollection.save()사용을 권장하며ArtifactCollection.change_type()은 사용 중단 예정으로 표시했습니다.
주요 변경 사항
wandb.plots를 wandb.plot으로 이름을 변경하고, 모든 인테그레이션을 wandb.<name>에서 wandb.integration.<name>으로 이름을 변경했으며, [async] 엑스트라를 제거했습니다.이 버전에는 이전에 PyPI의 wandb-core Python 패키지를 통해 설치되던 wandb-core 바이너리가 함께 포함됩니다. 이제 wandb-core 패키지는 더 이상 사용되지 않으므로 제거해도 됩니다.추가됨
- 이제
wandb패키지에wandb-core바이너리가 포함됩니다.wandb-core는 성능, 유연성, 견고성에 중점을 둔 새롭고 향상된 W&B SDK 백엔드입니다.- 현재는 옵트인 방식입니다. 새 백엔드를 사용하려면,
wandb를 임포트한 뒤 스크립트에wandb.require("core")를 추가하세요.
- 이제
wandb-core가 https://github.com/wandb/wandb/pull/7364 및 https://github.com/wandb/wandb/pull/7366 에서처럼 Artifact 파일 캐싱을 지원합니다. - 아티팩트 또는 컬렉션이 존재하는지 확인할 수 있도록 Api에 artifact_exists() 및 artifact_collection_exists() 메서드를 추가했습니다.
wandb launch -u <git-uri | local-path>명령이 지정된 소스 코드로부터 잡을 생성하고 실행합니다.
수정됨
- 완료된 run에서
run.summary호출 시 크래시가 발생하지 않도록 방지했습니다. - wandb-core 사용 시 파일 업로드 오류를 올바르게 리포트하도록 수정했습니다.
- AMD GPU 가용성에 대해 더 엄격한 검사를 구현했습니다.
- Windows에서
run.save()동작 문제를 수정했습니다. - Kaniko 빌더에서 ECR 및 GAR 이외의 레지스트리를 사용할 때 실패 대신 경고를 표시하도록 변경했습니다.
wandb.init()타입 시그니처에None이 포함되던 문제를 수정했습니다.
변경됨
wandb-core를 사용할 때는 이를 활성화하기 위해 필수 플래그(wandb.require("core"))를 지정해야 하며, 이전처럼 자동으로 활성화되지 않습니다.- GCS 레퍼런스 아티팩트에 대해 MD5 해시 대신 ETag를 사용하도록 변경했습니다.
제거됨
- 더 이상 사용되지 않는
wandb.plots.*함수와 최상위 서드파티 인테그레이션wandb.[catboost,fastai,keras,lightgbm,sacred,xgboost]를 제거했습니다.wandb.plots대신wandb.plot을,wandb.[catboost,fastai,keras,lightgbm,sacred,xgboost]대신wandb.integration.[catboost,fastai,keras,lightgbm,sacred,xgboost]를 사용하세요. [async]엑스트라와_async_upload_concurrency_limit설정을 제거했습니다.- 문서화되지 않은 설정인
_except_exit와problem을 제거했습니다.
추가됨
- 에이전트 설정에서 kaniko 빌더 설정을 오버라이드할 수 있는 기능을 추가했습니다.
- 푸터에 run의 프로젝트 워크스페이스로 이동하는 링크를 추가했습니다.
- 에이전트 설정에서 중지된 run의 그레이스 기간을 오버라이드하는 기능을 추가했습니다.
- init 중 버전 체크를 비활성화하기 위한 설정(
_disable_update_check)을 추가했습니다. - OpenAI Fine-Tuning 인테그레이션의
WandbLogger.sync에 데이터셋을 Artifacts에 자동 로깅하는 기능을 끄기 위한 새로운 불리언 인자log_datasets를 추가했습니다. - Launch 에이전트의 기본 상태 출력 빈도를 줄였습니다. 상태 출력 빈도를 높이고 디버그 정보를 stdout으로 출력할 수 있도록 상세도(verbosity) 제어 기능을 추가했습니다.
변경됨
- artifact CLI의 put()에서 limit policy 옵션을 [“mutable”, “immutable”] 중 하나로 제한했습니다.
- gorilla 서버 변경 사항을 반영해 ArtifactSequence/ArtifactCollection 타입에서 Project 필드가 null일 수 있는 경우를 처리하도록 아티팩트 퍼블릭 API 메서드를 업데이트했습니다.
수정됨
- 이전 릴리스에서 도입된,
run.dir내부 파일에 대해run.save()가 동작하지 않던 문제를 수정했습니다. - 대용량 아티팩트 업로드 중 드물게 발생하던 패닉을 수정했습니다.
- wandb.login 때문에 run이 Launch 큐와 연결되지 않던 문제를 수정했습니다.
- @KyleGoyette의 https://github.com/wandb/wandb/pull/7285 에서처럼 W&B Launch 사용 시 잡 아티팩트 다운로드가 조용히 실패하고 run이 크래시 나던 문제를 수정했습니다.
- OpenAI Fine-Tuning 인테그레이션에서 트레이닝 파일을 Artifacts에 저장하는 처리 방식을 수정했습니다.
추가됨
- 캐싱이 활성화된 경우 변경 가능한 아티팩트 파일 업로드 시 스테이징 파일을 복사하지 않고 캐시로 이동하는 기능을 추가했습니다.
- 아티팩트에 파일을 업로드하는 동안 로컬 파일 시스템에 파일을 캐싱하지 않도록 건너뛸 수 있는 기능을 추가했습니다.
- 스토리지 정책을 선택해 업로드 중 아티팩트 파일 스테이징을 건너뛸 수 있는 기능을 추가했습니다.
wandb.init(fork_from=...)를 사용한 run 포크에 대한 초기 지원을 추가했습니다.- 이제
run.save()에서pathlib.Path값을 사용할 수 있습니다.
변경됨
- run 링크를 출력할 때 Workspace를 명시적으로 가리키도록 변경했습니다.
수정됨
- wandb API 키 Kubernetes 시크릿을 생성하는 동안 일시적인 서버 문제가 발생하는 경우, 최대 5번까지 재시도하도록 했습니다.
제거됨
- 터미널에서 run 정보를 출력할 때 job에 대한 링크를 제거했습니다.
추가됨
- 아티팩트 컬렉션 유형을 변경할 수 있는 기능을 추가했습니다.
- pyproject.toml에서 의존성을 설치하는 기능을 추가했습니다.
- 사용자 제공 PVC 및 Docker 설정으로 kaniko 빌드를 지원합니다.
- W&B 인스턴스 간 run을 가져오는 기능을 추가했습니다.
변경됨
- wandb-core가 백엔드에 대한 요청 속도를 제한하고 RateLimit-* 헤더를 준수합니다. 작성자: @timoffex, https://github.com/wandb/wandb/pull/7065
수정됨
- sweeps-on-launch 스케줄러에서 템플릿 변수 전달 문제를 수정했습니다.
- 입력으로 지정될 수 있도록 job 아티팩트를 run에 연결했습니다.
- 지정된 entrypoint를 사용하도록 sagemaker entrypoint를 수정했습니다.
- 업로드 헤더를 올바르게 파싱하도록 수정했습니다.
- 서버 오류가 제대로 전파되도록 수정했습니다.
- 병렬성을 사용해 파일 업로드 속도를 향상했습니다.
- git 데이터가 채워지지 않은 경우 전송하지 않도록 했습니다.
- 콘솔 로그 재개 시 덮어쓰기를 피하도록 수정했습니다.
- wandb login 시 —host를 사용할 때 호스트 이름 검증을 제거했습니다.
- run을 재개할 때 기존 시각화를 버리지 않도록 했습니다.
- 충돌 상태 코드에 대해서는 재시도하지 않도록 했습니다.
- wandb-core에서 재개된 run에 대한 시각화 설정 병합을 수정했습니다.
- 표준 라이브러리의 json 사용을
segmentio로 대체했습니다. - 로그의 writer로 stderr를 제거했습니다.
- 초기화 시 음수 스텝을 비활성화했습니다.
- pydantic26에서 리포트 로딩 문제를 수정했습니다.
- “진행 상황 보고를 지원하기 위해 업로드 요청을 비동기로 만들기 (#6497)” 변경을 되돌렸습니다.
- Dockerfile.wandb를 사용할 때 entrypoint 지정 문제를 수정했습니다.
- 스트림이 probe 핸들을 너무 일찍 해제하던 문제를 수정했습니다.
- 로컬 컨테이너의 경우 항상 최신 이미지를 pull하도록 시도합니다.
향상 사항
- 코어에서 데이터 타입 정보를 생성합니다.
- Launch 지원을 추가합니다.
- Reports에서 그룹화된 샘플 run 개수를 제어하는 옵션을 추가했습니다.
- 동일한 run에 대해 여러 독립적인 writer를 허용하는 공유 모드를 추가합니다.
- 선택적 캐시 복사본과 스레드를 통해 아티팩트 다운로드 지연 시간을 줄입니다.
- 디렉터리 접두사를 활용해 파일 일부만 다운로드할 수 있는 기능을 추가합니다.
- Diffusers 인테그레이션을 업데이트합니다.
- Ultralytics 인테그레이션을 업데이트합니다.
- Pytorch Lightning Fabric Logger를 추가합니다.
- Go 패키지를 업데이트합니다.
수정 사항
- 에이전트 설정에서 프로젝트 및 runner 필드를 제거합니다.
- 삭제된 k8s 잡을 실패한 것으로 인식합니다.
- 오류 대신 environment 블록에 있는 추가 필드에 대해 경고합니다.
- ENVVAR가 kwargs보다 우선되는 Entity override 버그를 수정합니다.
- 로컬 컨테이너 runner가 override 인수를 무시하지 않도록 합니다.
- 스윕/Launch 설정과 기존 설정을 병합 업데이트합니다.
- wandb-core 및 system_tests conftest의 재시도 로직을 수정합니다.
- 시스템 모니터의 자산 관리에 RW 락을 사용합니다.
- 엔트리포인트 디렉터리에 Dockerfile.wandb가 포함된 경우 빌드 컨텍스트를 해당 디렉터리로 설정합니다.
- Security(Launch): k8s 시크릿에서 Launch 잡 파드에 wandb API 키를 마운트합니다.
- Dockerfile.wandb가 엔트리포인트 옆에 있는 경우 wandb job create가 requirements.txt를 찾지 않도록 합니다.
- wandb.Api().run()에 id만 전달될 때 _parse_path를 수정합니다.
- video.py를 업데이트하여 fps 버그를 수정합니다.
- 임시 폴더를 정리합니다.
- Windows에서 긴 아티팩트 경로 문제를 수정합니다.
- Report API를 pydantic 2.6과 함께 작동하도록 업데이트합니다.
- sha로 체크아웃할 수 있도록 모든 커밋을 가져옵니다.
- pyagent에서 예외를 숨기지 않도록 합니다.
- nexus에서 아티팩트 파일 업로드 진행 상황을 표시합니다.
- AMD GPU가 없는 시스템에 rocm-smi가 설치된 경우 시스템 모니터에서 주의를 기울입니다.
- cli.py의 오타를 수정합니다.
- 가속기 빌드 단계에서 deadsnakes를 제거합니다.
향상 사항
- 저장소 로직을 리팩터링하고 store writer를 추가합니다.
- AMD GPU 모니터링을 추가합니다.
- 콘솔 로그 파일 업로드를 추가합니다.
- 빌더에 registry uri 필드를 추가합니다.
- run을 W&B에 업로드하는
wandb beta sync기능을 추가합니다. - CLI가 허용 목록에 포함된 큐 매개변수를 지원합니다.
- requirements 및 patch.diff 지원을 추가합니다.
- 메타데이터에서 SLURM 관련 환경 변수를 캡처합니다.
- 잡을 큐에 넣을 때 우선순위를 지정하기 위한
wandb launch명령의 —priority 플래그를 추가합니다. - wandb login에 verify 기능을 추가합니다.
- Launch의 Sweeps가 스윕 run에 대해 선택된 잡 우선순위를 반영합니다.
- SDKrab 작업을 시작합니다.
- 진행 상황 보고를 지원하기 위해 업로드 요청을 비동기로 전환합니다.
- TensorBoard 로그 디렉터리 워처를 추가합니다.
- wandb-summary.json 및 config.yaml 파일을 업로드합니다.
수정 사항
- 오류 메시지를 업데이트하고 불필요한 내용을 제거합니다.
- 파일 전송 관련 이슈를 정리합니다.
- 재시도 클라이언트의 백오프 전략에 지터를 추가합니다.
- 다이제스트가 일치하는 경우에만 파일 다운로드를 건너뜁니다.
- resume 기능을 수정하고 테스트를 추가합니다.
- YAML에서 생성된 k8s 잡 생성 시 발생하는 오류를 캡처합니다.
- 템플릿 변수를 확인하기 전에 기본 entity를 가져옵니다.
- 코어를 사용하지 않는 경우 아티팩트 다운로드를 위한 run 생성을 제거합니다.
- 버전이 있는 버킷의 경우 Object가 아니라 ObjectVersion에 대한 ETag를 검색합니다.
- #6759를 되돌리고 객체 버전 ETag를 제자리에서 읽습니다.
- 업로드 파일 개수를 다시 추가합니다.
- sender에 취소 요청 전송을 추가합니다.
- 메모리 모니터링에서 오류를 확인합니다.
- job_type을 덮어쓸 수 있도록 CLI에 job_type 플래그를 추가합니다.
- ultralytics utils import 리팩터링을 처리합니다.
- 활성 run 없이 wandb-core로 아티팩트를 다운로드할 수 있도록 합니다.
- plotly 라이브러리 최소 버전이 충족되지 않는 경우 matplotlib 산점도 오류 로깅을 수정합니다.
- NETRC 환경 변수를 사용하여 기본 .netrc 위치를 재정의할 수 있도록 허용합니다.
Enhancements
- 재귀 다운로드 제거.
- 핸들러에 summary 디바운스 추가.
- ultralytics import 및 버전 고정 관련 버그 수정.
- Launch run을 큐에 넣을 때 템플릿 변수 지원.
- offline sync CLI 명령에 —skip-console 옵션 추가.
- 기본 GraphQL 버전 관리 메커니즘 추가.
- Apple M* GPU 통계 모니터링 추가.
- 환경 변수에서 wandb.Config를 로드하는 헬퍼 함수 추가.
- openai-python v1.0용 OpenAI WandbLogger 포팅.
- OpenAI WandbLogger 버전 체크 수정.
- Diffusers 자동 로거 추가.
- 이미지에 파일 타입을 jpg, png, bmp, gif로 지정하는 파라미터 추가.
Fixes
- offline sync가 제대로 동작하도록 수정.
- run 존재 여부 확인이 해당 run에서 업로드된 파일에 의존하지 않도록 수정.
- 잘못된 async 래핑으로 인해 GCP storage URI 검증이 실패하던 문제 수정.
- 중첩된 dict로 summary를 업데이트해도 이제 에러가 발생하지 않음.
- RunQueue 생성에 우선순위 모드 추가.
- runs 폴더에 서버 로그에 대한 심볼릭 링크 생성.
- wandb/wandb_torch.py::log_tensor_stats에서 단일 값 문제 수정.
- wandb/wandb_torch.py::log_tensor_stats에서 Tmin vs tmax 문제 수정.
- 서버가 아닌 경우에 대한 사소한 수정.
- 이전 설정을 더 견고하게 개선.
- run을 재개할 때 태그를 제대로 처리하도록 수정.
Enhancements
- 중첩 config 지원 추가.
- artifact saver 완성.
- 푸터에 동기화 파일 개수 표시 추가.
- 디렉터리 워처 및 관련 기능 구현.
- 에이전트를 이벤트 루프에서 실행.
- 샘플링된 history 추가.
- models API 프로토타입 추가.
- 스윕 스케줄러 virtual agent를 async로 등록.
- local 환경에서 파일 업로드가 동작하도록 수정.
- 사용자가 사용자 지정 차트 테이블을 다른 섹션에 로깅할 수 있도록 허용.
- 다운로드를 허용하도록 업로더를 filemanager로 일반화.
- Python 3.6 지원 중단.
- Nexus에서 staging 파일 삭제.
- SDK nexus core를 사용하도록 artifact 다운로드 설정.
- 파일 업로드 진행률 추가 및 completion 콜백을 콜백 리스트로 변경.
- job에 wandb.ai/run-id 라벨 추가.
Fixes
- SageMaker에서 전체 run.config가 캡처되도록 보장.
- FileNotFoundError에 대한 gitlib 에러 처리 개선.
- 최대 메시지 크기 증가 및 에러 처리 개선.
- 에이전트가 여러 큐를 더 잘 균형 있게 처리하도록 개선.
- GCS reference handler에서 버전 관리 활성화 체크 제거.
- launch shard에 google-cloud-aiplatform 추가.
- use_artifact를 패스스루 메시지로 추가.
- Vertex 환경 변수 조정.
- NamedTemporaryFile을 위한 artifacts 캐시 파일 권한 업데이트.
- 여러 문제 수정.
- mlp figure를 버퍼에 저장한 뒤 PIL로 읽을 때 포맷을 지정하도록 변경.
- 업로더에서 content-length 전송 및 응답 상태 코드 확인.
- 메트릭이 로깅되지 않은 run을 재개할 때 step 로직 수정.
- unhook 시 hook_handle이 dict 대신 list로 설정되던 문제 수정.
- Vertex job 생성 전에 GCP 자격 증명 검증.
- docker buildx에 load 옵션 추가.
- artifact 다운로드에서의 성능 회귀 및 파일 다운로드 위치 문제 수정.
log_code가 파일을 찾지 못할 때 경고 추가.- v8.17용 IPython hook 조정.
Enhancements
- config 디바운싱 메커니즘 구현.
- ultralytics 분류 작업에서 채널 스와핑 수정.
- nexus alpha C++ 인터페이스 구현.
- run 객체에서 시스템 메트릭을 노출(PoC).
- ultralytics 지원 버전을
v8.0.186으로 고정.
Fixes
- 실패한 k8s pod에서 로그 가져오기.
- s3 버킷을 reference artifact로 추가할 수 있도록 허용.
- 에이전트 스레드 정리에서 race condition 수정.
- run과 해당 I/O 아티팩트가 동일한 프로젝트에 있다고 가정하지 않도록 수정.
- wandb.Api().run(run_name).log_artifact(artifact) 수정.
- 스윕에서 None 값으로 인한 ValueError 수정.
- s3 handler의 오타 수정.
- 새 인자 target_fraction의 인자 순서 수정.
- config 디바운서에서 잠재적인 race 수정.
- GraphQL 타입 매핑 수정.
- 업로더의 동시성 제한 수정.
Enhancements
- 스크립트 모드에서 코드 저장을 지원합니다.
wandb.save에서policy=end를 지원합니다.- 메타데이터에 시스템 정보를 추가합니다.
- 메타데이터에 NVIDIA GPU 시스템 정보를 추가합니다.
- public API로 run 큐를 삭제할 수 있습니다.
- wandb HTTP(S) 트래픽에 대한 커스텀 프록시 지원을 도입합니다.
Fixes
- filestream 예외를 로깅할 때 로거 동작을 수정했습니다.
- 실행된 CRD를 모니터링하기 위해 watch API를 사용합니다.
- 대상 프로젝트 없이 Docker 이미지를 대기열에 추가하는 것을 금지합니다.
- API 사용자를 위한 누락된 Twitter import를 추가했습니다.
- 디렉터리 참조에서 S3 versionID를 가져옵니다.
- 연결 재설정이 발생해도 watch 스트림이 복구되도록 합니다.
api.Run.load에서 잘못된 UTF-8 및 제어 문자를 무시하기 위해json.loads(..., strict=False)를 사용합니다.- 설정에서 Colab을 Jupyter 유사 환경으로 올바르게 식별합니다.
- summary 업데이트를 위한 메모리 관리를 개선합니다.
- 다운로드 URL의 배치 크기를 구성하기 위한 환경 변수를 추가합니다.
- run이 생성되지 않으면 rqis를 실패하도록 합니다.
Cleanup
- README.md를 업데이트했습니다.
향상 사항
AutologgerAPI에 async 지원을 추가하고 Openai에 대해 활성화했습니다.- Python 3.11에 대한 공식 지원을 추가하고 Python 3.6 지원을 중단했습니다.
- 디버깅을 위해 네트워크 로깅 및 파일 푸셔 타임아웃을 구현했습니다.
- 아티팩트 버전에 대해 ttl(time to live)을 설정했습니다.
- metric 정의 기능에 대한 지원을 추가했습니다.
- Launch agent를 생성할 때 agent version을 포함했습니다.
- runless git job이 상위 디렉터리의 requirements.txt를 사용할 수 있습니다.
- Artifact에서 부모 컬렉션을 가져옵니다.
- 파일 업로드를 개선했습니다.
- 기존 run에 아티팩트를 로그할 수 있도록 artifact put 메서드에 run id 옵션을 추가했습니다.
- Run 객체에 metadata 속성을 추가했습니다.
- Launch overrides에서 사용자 정의 Dockerfile 설정을 지원합니다.
- system monitor에 Nvidia GPU asset을 추가했습니다.
- SDK에서 artifact 컬렉션 삭제를 지원합니다.
- dockerfile CLI 파라미터를 추가하고, 존재하는 경우 기본적으로 Dockerfile.wandb를 사용합니다.
- 대상 비율을 지정할 수 있도록 캐시 정리 기능을 확장했습니다.
- ArtifactManifestEntry에 eval 가능한 repr을 추가했습니다.
- nexus용 docker 기반 wheel 빌드를 활성화했습니다.
- system monitor에 Nvidia GPU asset을 추가했습니다.
- 오버플로를 방지하기 위해 추가 시 캐시를 비웁니다.
- system metrics에서 디스크 I/O 활용률을 캡처합니다.
- monitor metrics에 디스크 I/O 카운터를 추가했습니다.
- 디스크 사용량 모니터링을 위한 경로를 구성 가능하게 만들었습니다.
- 기존 스윕에 run을 포함하기 위해
WANDB_SWEEP_ID를 사용합니다. - Nexus Core로 수행되는 LinkArtifact 호출을 처리합니다.
- HTTP 클라이언트에 대한 재시도 로직을 수정하고 사용자 커스터마이징을 허용합니다.
- gql client transport에서 사용자 정의 헤더를 지원합니다.
- wandb.Config에서 set 타입을 지원합니다.
ultralytics용 bbox 오버레이가 있는 이미지 시각화를 지원합니다.- line_plot용 지수 감쇠 샘플링 유틸리티를 추가했습니다.
- 항상
wandb.init컨텍스트 매니저 내부에서 traceback을 출력합니다. - 자동 머신 정보 캡처를 비활성화하는 설정을 추가했습니다.
버그 수정
- 모든 job 처리를 포함하도록 agent 루프의 try 범위를 확장했습니다.
- 정의되지 않은 filestream 타임아웃에 대한 보호를 추가했습니다.
- 코드 아티팩트를 기반으로 하는 job이 삭제된 경우 에러를 발생시키도록 했습니다.
verify가 생성하는 아티팩트에 고유한 이름을 사용합니다.- 자동 재큐잉 시 resume=allow를 사용합니다.
- 비활성화된 git repo subir의 entrypoint 경로를 수정했습니다.
- 개별 job resource_args를 재정의합니다.
- Python 3.6 지원을 위해 import 이슈를 수정했습니다.
- 스케줄러 job 없이 Launch에서 Sweeps를 사용할 때 override entrypoint를 수정했습니다.
- nil일 때 resume 참조를 수정했습니다.
- import 시간을 추가로 단축했습니다.
- 샘플 Kubernetes agent manifest의 secret 마운트를 수정했습니다.
- 사용되지 않는 import를 제거했습니다.
- Kubernetes run 상태를 가져오기 위해 watch를 사용합니다.
- 기본 아티팩트와 다른 프로젝트에 아티팩트를 저장하는 것을 금지합니다.
- 기존 아티팩트가 자신의 소스 entity/프로젝트에만 저장되도록 요구합니다.
- system monitor 시작 및 중지 기능을 조정했습니다.
- 디렉터리 생성 실패 시 의심스러운 문자를 제거합니다.
- 기본 log_code 제외 동작이 이제 루트 경로 접두사에
wandb가 있는 경우를 올바르게 처리합니다. - 프로젝트 큐 생성을 허용하지 않습니다.
- 모든 스윕 set state 에러를 포착합니다.
- 이제 Create_job이 Jupyter notebook에서 동작합니다.
- defer 및 update control에 대한 레이스 컨디션을 수정했습니다.
- tensor 타입 처리 및 로깅을 개선했습니다.
- Launch CLI 명령은 기반 launched run이 non-zero 상태로 종료되면 non-zero 상태로 종료해야 합니다.
- 오프라인 모드 동작의 정확성을 수정했습니다.
- Reports API에서 media_keys JSON 경로를 수정했습니다.
- uint8 이미지를 wandb.Image()로 로그할 수 있도록 허용합니다.
- 이전 설정에서는 /tmp/username/.config/wandb로 폴백합니다.
- 모든 gql.UpsertBucket 호출에서 UpsertBucketRetryPolicy를 사용합니다.
- report id 검증 및 인코딩을 업데이트했습니다.
- 내부 프로세스로부터 메시지를 전파하는 기능을 추가했습니다.
정리
- 새 ruff 규칙 E721 추가에 대한 수정을 적용했습니다.
향상 사항
- UI에서 팀 큐로 Launch sweep 스케줄러를 실행할 수 있습니다.
- vertex launcher를 더 쉽게 커스터마이즈할 수 있도록 개선했습니다.
- docker가 설치되지 않은 경우 기본적으로 noop builder를 사용합니다.
버그 수정
- sagemaker에 대해 기본 제공 entrypoint 및 args 명령을 사용합니다.
- 새 초안 아티팩트에 상위 소스 프로젝트 정보를 복사합니다.
- run 종료 시 bigints로 인한 에러를 방지했습니다.
- 수동으로 생성된 image job을 올바르게 재실행할 수 있습니다.
개선 사항
- mutation
createRunFiles를 사용하여uploadUrls를 가져옵니다. - public API에
create_run_queue를 추가합니다. json대신orjson을 사용할 수 있는 숨김 옵션을 추가합니다.noop빌더로 빌드할 때의 에러 메시지를 개선합니다.- Launch agent 생성 시, 존재하는 경우 agent 설정을 포함하도록 합니다.
- job을 만들기 전에 job 구성 요소가 존재하는지 확인합니다.
- Kubernetes 404 에러를 적절히 처리합니다.
버그 수정
- 프로젝트가 이미 존재하지 않을 때에만 새 프로젝트를 생성합니다.
- resource 인자의 metadata 키에서 namespace를 지원합니다.
- 프로젝트가 주어지지 않은 경우 프로젝트
kwarg에 대해None대신""를 사용합니다. - torch CPU 정규식에
+를 추가하고 테스트를 보강합니다. file_stream에 timeout을 구현하고 디버그 로그를 추가합니다.- alias를 가져올 때 컬렉션 필터링을 수정합니다.
dir_watcher설정을SettingsStatic으로 교체합니다.- 증분 아티팩트에 대해 올바른 base를 설정합니다.
- $ 매크로와의 호환성을 보장하기 위해 Azure 레지스트리 URI에서
https를 제거합니다. Nonedescription을 올바르게 처리합니다.- 이미 존재하는 경우 k8s secret을 생성하지 않습니다.
- S3 버킷 버전 관리 확인을 제거합니다.
- import 시간을 단축하고
pkg_resourcesDeprecationWarning을 수정합니다.
개선 사항
- wandb 푸터에 job 링크를 추가합니다.
- job 재큐잉을 재구현하고 취소 동작을 수정했습니다.
- CLI에서 수동으로 job을 생성할 수 있습니다.
job_name설정을 통해 사용자가 job 이름을 지정할 수 있도록 허용합니다.- 프롬프트 trace를 로깅하기 위한 단순화된 trace API를 추가합니다.
WandbModelCheckpoint와 함께.keras모델 포맷을 지원하며 TF 2.13.0과 호환됩니다.- 인스턴스 간 W&B run 및 Reports 마이그레이션에 대한 초기 지원을 추가했습니다.
버그 수정
- LightGBM 콜백을 4.0.0과 호환되도록 합니다.
- 사용 가능한 경우 프로젝트 조회에 기본 설정을 사용합니다.
개선 사항
- Docker 이미지 job 이름과 태그 처리를 개선합니다.
- AKS에서 kaniko 빌드를 지원합니다.
- 다른 namespace에서 kaniko 빌드를 실행할 수 있도록 허용합니다.
- Azure reference에 대해 access key를 지원합니다.
- 실패한 run queue 항목에 정보를 추가하고, run queue 항목에 대한 경고를 지원합니다.
- 모든 레지스트리에 대해 registry URI를 직접 설정할 수 있도록 허용합니다.
- 배치 및 재시도 로직으로 다운로드 URL 가져오기 프로세스를 향상합니다.
Artifact.download에서 누락된 S3 reference를 건너뛰기 위한 플래그를 추가합니다.- pod가 끊어질 때 job 재큐잉을 구현합니다.
setproctitle을 비활성화하기 위한 설정을 추가합니다.
버그 수정
LogicalPath에서 URI 스킴을 처리합니다.- reference를 포함하고 ID 재사용을 방지하도록 object storage를 업데이트합니다.
click패키지 버전 요구 사항을 업데이트합니다.- lazy import를 스레드 안전하게 개선합니다.
- kaniko 이미지 이름의 오타를 수정합니다.
- SageMaker 설정에서 날짜 파싱을 수정합니다.
- 지역 기반 질문을 방지하기 위해 Docker 빌드를 비대화형(non-interactive)으로 변경합니다.
- “cuda” base 이미지 경로를 “accelerator” base 이미지 경로로 변경합니다.
- 검증을 건너뛰기 위해 아티팩트 이름을 placeholder로 교체합니다.
- 큰 출력을 가진 job이 local-container에서 멈추지 않도록 방지합니다.
- resume 시 민감한 정보가 푸시되지 않도록 합니다.
- 다운로드 시 reference 처리 방식을 수정합니다.
- Launch 스윕 작성자(author) 필드를 개인 사용자 이름으로 수정합니다.
- 아티팩트 메서드 및 속성을 private으로 변경합니다.
Enhancements
- 설정에서 job source를 설정할 수 있도록 함.
- wandb run에서 제어하는 스윕 실행 지원.
- Cohere Python SDK용 autolog 추가.
- 사용자 정의 k8s 오브젝트 실행 지원 추가.
- 파일 해시 계산 시 메모리 사용 절약.
- 저장된 아티팩트를 새 버전으로 수정 및 로깅하는 new_draft 메서드 추가.
- reqs 파일이 있는 경우 고정된 요구 사항을 설치하지 않도록 변경.
- 기본적으로 아티팩트 캐시에서 임시 파일을 제거하지 않도록 변경.
- source_entity 추가 및 sequenceName 처리 업데이트.
- Artifacts API에 ‘remove’ 추가.
- Launch에서 스윕용 Optuna 스케줄러 추가.
- 노트북 job 생성 지원.
- 모든 runner에 대해 Launch 매크로 활성화.
- 지원되는 Hugging Face 파이프라인에 대한 autologging 추가.
- OpenAI autologger에 사용량 메트릭 및 테이블 로깅 추가.
- AMD GPU 시스템 메트릭 모니터링 지원 추가.
- GPU 메모리 절대 할당량 캡처.
Fixes
- AWS Lambda에서 wandb를 사용할 수 있도록 보장.
LogicalPath가 끝의 슬래시를 제거할 수 있도록 허용.~/.config/wandb/settings파일을 생성할 때 주의하도록 변경.- 사용자 정의 차트 쿼리 처리 업데이트 및 테이블 기반 차트용 대체 생성자 추가.
- 아티팩트 파일에 대해 S3 멀티파트 업로드 추가.
- 호환되지 않는 아티팩트 이름 문자열 처리.
- 이미지 기반 job에 대해 Docker runner가 항상 이미지를 pull하도록 설정.
- 패키지 설치 시 오류 처리 개선.
- 사용자 정의 k8s 오브젝트가 command/args 재정의를 준수하도록 수정.
- 유효한 속성에서 entity, project를 제거하고 name 처리를 조정.
- Launch agent base URL에 환경 변수를 사용하도록 변경.
- 캐시에 방어적으로 쓰도록 개선 (OSError 캐치).
- finish_thread_id에서의 예외 처리 및 실패한 run 큐 항목 처리.
- 레지스트리가 지정된 경우 미리 생성된 이미지에 대한 pull secrets 추가.
- 환경 변수에서 kaniko pod SA 이름 읽기.
- 다양한 GCP 관련 수정.
- 로컬 환경 및 레지스트리 선언 지원.
- agent에서 SSH Git URL 및 서브모듈 지원.
- 실패 케이스에 대한 Git 저장소 처리 업데이트 및 gitlib로 이름 변경.
- init 중 오프라인 및 온라인 모드를 통합하고 멀티프로세스 attach 문제 수정.
- Gym 인테그레이션에서
wandb.run을 확인하여 오류 방지. - wandb tfevent 동기화 문제 수정.
Fixes
- 서비스 계정(SA) 토큰을 읽을 수 없더라도 SDK가 동작하도록 허용.
- util.py::image_id_from_k8s에서 k8s 토큰 검색 로직 정리.
WandbTracer를 새로운 langchain 버전과 동작하도록 업데이트.- 변경된 키에 대해서만 summary를 업데이트하도록 변경.
Fixes
- https://github.com/wandb/wandb/pull/5467에서 @parambharat @tssweeney가 작업한 새로운 langchain 릴리스를 지원하도록 WandbTracer 업데이트.
- langchain wandb_tracer 버전 확인 시 오류 메시지 수정.
Enhancements
- 새로운 Kubernetes runner 설정 스키마를 구현했습니다.
- docker builder에 대해 플랫폼 오버라이드를 허용했습니다.
- 아티팩트를 더 쉽게 가져올 수 있도록 아티팩트의 전체 이름을 가져오도록 했습니다.
- 아티팩트 다운로드용 기본 루트를 설정 가능하도록 했습니다.
- SDK에 Azure storage handler를 추가했습니다.
- wandb.Table을 pandas.DataFrame으로 변환하는 메서드를 추가했습니다.
- Launch 명령의 args로 전달된 Sweeps를 파라미터로 전달하도록 했습니다.
Fixes
- args와 config의 key가 같은 것을 가리킨다고 가정하지 않도록 수정했습니다.
- ElasticContainerRegistry 환경이 “ImageNotFoundException”을 정상적으로 처리하도록 했습니다.
- kaniko builder 재시도를 비활성화했습니다.
- 인증 오류에 대한 에러 메시지를 개선했습니다.
- Kubernetes runner가 override args를 따르지 않는 문제를 수정했습니다.
- 스윕 설정으로 attr-dict를 허용했습니다.
- 원본 파일 대신 읽기 전용 스테이징 복사본에 대해 체크섬을 계산하도록 했습니다.
- run이 성공적으로 완료되었거나 다른 entity에서 온 경우 run 정보를 가져오지 않도록 했습니다.
- 아티팩트를 가져올 때 “None” 대신 기본 프로젝트를 “uncategorized”로 설정했습니다.
- gym VideoRecorder에 enabled 체크를 추가했습니다.
- 기본 프로젝트 및 entity 처리 방식을 수정했습니다.
- wrapt 리포지토리의 최신 변경 사항을 import_hook.py에 반영했습니다.
- k8s launch agent에서 로컬 URL 지원을 수정했습니다.
- 노트북 환경 감지 및 테스트를 개선했습니다.
- Settings 객체에 대해 재귀적인 isinstance 검사 유틸리티를 구현했습니다.
- System Monitor에서 OpenMetrics 필터 정의의 경계 사례를 올바르게 파싱하도록 했습니다.
- 디버그 로그에 SDK 버전을 포함하도록 업데이트했습니다.
- torchrun으로 실행될 경우 로컬 rank 기준으로 AWS Trainium 메트릭을 필터링하도록 했습니다.
- LangChain > 0.0.153와의 WandbTracer 비호환성에 대해 사용자에게 알리도록 했습니다.
Enhancements
- LangChain 미디어 타입 지원을 추가했습니다.
- OpenAI의 Python 라이브러리에 대한 autolog를 추가했습니다. 작성: @dmitryduev @parambharat @kptkin @raubitsj, https://github.com/wandb/wandb/pull/5362.
Fixes
- 패치된 openai 메서드에 함수 시그니처 래퍼를 추가했습니다.
- OpenAI autolog 퍼블릭 API를 조정해 사용자 경험을 개선했습니다. 작성: @dmitryduev @kptkin @raubitsj, https://github.com/wandb/wandb/pull/5381.
Enhancements
- 기본 타입과 경로 참조를 사용해 run.log_artifact()를 개선했습니다.
- 비동기 아티팩트 업로드에 대한 옵트인 지원을 추가했습니다.
- 변경된 키에 대해서만 summary를 업데이트하도록 했습니다.
- GraphQL 요청에 지속적인 세션 객체를 사용하도록 했습니다.
- gql 클라이언트에 추가 헤더 설정을 허용했습니다.
- OpenMetrics 엔드포인트를 기반으로 메트릭 필터링을 허용했습니다.
Fixes
- 스테이징 아티팩트 디렉터리 생성에 실패했을 때 더 유용한 메시지를 표시하도록 했습니다.
- Kubernetes backoffLimit 기본값을 0으로 설정했습니다.
- 설정을 yaml 파일로 덤프할 때 기본 정렬을 제거했습니다.
- Windows에서 html 타입 인코딩을 수정했습니다.
- 새 run을 초기화할 때 자동 재개 상태를 정리하도록 했습니다.
- 백엔드 오류에 대해
wandb.init()에러 처리 로직을 강화했습니다. - 시스템 모니터 종료 로직을 수정했습니다.
- requirements.txt에서 고정(pinned) 버전을 지정할 수 있도록 허용했습니다.
wandb.log()가 빈 문자열 값을 올바르게 처리하도록 했습니다.- 완료된 run의 메서드와 속성에 접근할 경우 예외를 발생시키도록 했습니다.
Cleanup
- 사용자 정의 랜덤 토큰 생성기 대신 ‘secrets’ 모듈을 사용하도록 변경했습니다.
- _manifest_json_from_proto를 sender.py로 이동했습니다.
개선 사항
- Launch run용 CUDA 베이스 이미지 지원.
- 빌드 과정에서 어떤 패키지 설치에 실패했는지 사용자에게 경고.
- MLFlow에서 run을 가져오는 기능 추가.
- Launch에 실패한 대기 중인 run을
FAILED로 표시.
버그 수정
- 로컬 API 키 검증을 일시적으로 제거.
- Launch agent가 예외가 발생했을 때 스레드를 정상적으로 정리하도록 수정.
- Docker 데몬에 연결할 수 없을 때 명확한 오류 메시지 제공.
- EKS 인스턴스 역할에 대한 Launch 지원.
- Launch에서 Docker 오류가 발생했을 때 더 깔끔한 오류 메시지를 제공하고, 정상적으로 실패 처리.
- job 버전과 Dockerfile 내용에 기반해 Docker 이미지를 해시.
- 보안(Launch): agent가 team 큐에서 폴링을 시작했을 때 경고.
- tfevents 파일을 동기화할 때 텔레메트리 추가.
- run 중단이 동작하지 않던 회귀(regression) 문제 수정.
- Kubernetes runner 또는 Kaniko builder를 사용할 때 누락된 Kubernetes import를 어떻게 처리해야 하는지 사용자에게 안내.
- 지원되지 않는 Launch CLI 옵션 숨김.
- Launch 이미지 빌더가 서로 다른 하드웨어에서 필요한 종속성과 함께 PyTorch를 올바르게 설치하도록 수정.
개선 사항
- Launch agent 로깅 개선.
- Launch Sweeps에서 이제 run_cap이 동작.
- image_uri에서 Launch sweep job 실행.
launch_config의 scheduler 섹션에num_workers파라미터 추가.- ValueError 대신 ArtifactNotLoggedError를 발생시키도록 변경.
- Launch agent가 job 실행에 스레드 풀을 사용하도록 변경.
- runner와 builder가 Environment 및 Registry 클래스를 사용하도록 변경.
- System Metrics를 위한 OpenMetrics 지원 추가.
- OpenMetrics 엔드포인트에서 수집하는 시스템 메트릭을 필터링하는 기능 추가.
- gym에 더해 gymnasium env 모니터링 지원 추가.
- Launch agent 설정에
max_scheduler키 추가. - YOLOv8용
ultralytics라이브러리 인테그레이션 추가.
버그 수정
- IPython의 위젯 사용 중단(deprecation) 경고 정리.
- 사라진 서비스에 연결을 시도할 때를 대비해 매니저 로직에 특수 Exception 추가.
- Api를 사용하기 위해 전역 설정 디렉터리가 쓰기 가능해야 했던 문제 수정.
- run 초기화 중 오류 메시지를 더 실행 가능하게 만들고, 잡히지 않은 예외 수정.
- Run 클래스에 deepcopy dunder 메서드 추가.
- 스윕에서 항상 프로젝트를 기본값으로 사용하던 동작 제거.
- job이 지정되지 않은 상태로 Launch sweep을 생성하려고 하면 오류 발생 처리.
- 이제 Mkdir_exists_ok가 (다시) 존재할 때 권한을 확인.
- job에서 소싱된 항목을 실행할 때에만 받은 job을 로깅.
- 이미지에서 소싱된 대기 중인 run이 URI에서 사라지던 문제 수정.
- 복사된 아티팩트에 쓰기 권한 추가.
sweepCLI 명령에서queue인자 파싱 개선.- 비활성화 모드일 때는 서비스를 실행하지 않도록 변경.
- 로컬 컨테이너에서 사용자 지정 entrypoint를 가진 Docker 이미지를 지원하도록 수정.
- API - ArtifactFiles에서 항목에 접근할 때 더 이상 오류가 발생하지 않음.
- Sweeps 스케줄러를 시작하기 전에 job이 존재하는지 검증.
- 추가 설정과 종료(tear-down) 단계가 필요한 시스템 메트릭 처리.
CONTRIBUTING.md의 오타 수정.- Colab에서 노트북 이름을 올바르게 감지하고 코드 저장 문제 수정.
- max_artifacts까지 허용(1 차이(off by 1) 오류 수정).
- 자산 모니터링 스레드를 시작할 때 추가적인 주의 적용.
- boto3 종속성이 다운로드 중 import 시 크래시하던 버그 수정.
num_workersCLI 인자가 유효한지 검증하고, 유효하지 않으면 기본값 8로 설정.- 검증 아티팩트에 추가되는 파일 참조 수정.
- agent에서 Sweeps 스케줄러에 대한 특수 처리.
- 변경 사항이 있을 때만 파일을 다시 다운로드하거나 덮어쓰도록 변경.
- 오프라인 모드에서는 인트로스펙션(introspection)을 피함.
wandb.Settings의 위상(topological) 정렬 적용.- tensorboard 패칭 시 지연 로딩을 피함.
정리
- bugbear B028 버그를 수정하고 stacklevel 추가.
- Launch 오류를 관련 코드와 더 가깝게 이동.
- mailbox 오류를 관련 코드와 더 가깝게 이동.
- 지원되지 않는 오류 유형 추가.
- ruff linter 지원 추가.
- 가독성을 위한 외형상 변경.
- environment와 registry 추상 클래스 도입.
- Launch agent에서 사용되지 않는 union 타입 수정.
- manifest에서 아티팩트 제거.
- interface.artifacts에 대해 타입 체크를 활성화하고 타입 힌트/캐스트 추가.
wandb_setup.py에 타입 주석 추가.- 사용되지 않는 #noqa 지시어 제거.
- 테스트 시 Sentry 추적 비활성화.
개선 사항
- 파일 업로드 요청에 대해 세션을 재사용합니다.
- 아티팩트 컬렉션에 대한 alias 목록 엔드포인트를 노출합니다.
- 환경 변수에 run 작성자의 username을 포함합니다.
- local-container 리소스 인자 지원을 추가합니다.
wandb sync --append로 run에 내용을 추가할 수 있는 기능을 추가합니다.- 자동 job 생성을 비활성화하기 위한 우회 옵션(
disable_job_creation)을 추가합니다.
버그 수정
- kubernetes runner에서 생성된 job 이름에서 밑줄을 제거합니다.
- Sweep 명령어 인자를 다시 int 타입으로 사용할 수 있게 합니다.
- 준비된 아티팩트에
latestalias가 포함되도록 보장합니다. - cache.cleanup() 중 발생하는 FileNotFoundError 및 PermissionError를 처리합니다.
- Python 실행 파일이 해석되는 순서를 수정합니다.
- fork 시 stdout==stderr로 설정된 경우 콘솔 처리 방식을 수정합니다.
- job 아티팩트가 latest alias 없이 로깅되던 문제를 수정합니다.
- job 이름이 아티팩트에 허용되는 최대 길이를 초과하지 않도록 보장합니다.
개발
- 매니페스트 버전이 검증되도록 합니다.
- 커스텀 SSL 인증서 및 SSL 비활성화에 대한 테스트를 추가합니다.
- 나이틀리 Docker 빌드를 수정합니다.
- 범용 py2/py3 패키지를 생성하지 않습니다.
- flake8-bugbear B028을 수정하고 B017은 무시합니다.
- 나이틀리 테스트에서 요청되는 gcloud SDK 버전을 수정합니다.
StorageHandler.load_{path,file,reference}의 사용되지 않는 파라미터를 제거합니다.- 단위 테스트를 시스템 테스트와 순수 단위 테스트로 분리합니다.
- local-testcontainer에서 fixture 서버 포트를 9010에서 9015로 이동한 사항을 반영합니다.
- ac query 응답에 alias를 추가합니다.
- 회귀 테스트 모음을 매일 나이틀리로 실행합니다.
- 깨진 Lightning 테스트를 수정합니다.
- wandb_init.py에 대한 타입 체크를 활성화합니다.
- launch-agent 명령에서 기본 큐로의 기본 설정을 더 이상 사용하지 않도록(deprecate) 합니다.
- 어노테이션이 있는 kubernetes runner에 대한 단위 테스트를 추가합니다.
- train_gpu_ddp 테스트를 수정합니다.
- Docker testimage가 amd64 버전을 pull하도록 수정합니다.
- 테스트 재구성 후 codeowners를 수정합니다.
- Windows에서 발생하는 md5 테스트 실패를 수정합니다.
- relay 서버를 분리하여 yea-wandb와 공유할 수 있도록 합니다.
- 테스트에서 발생하는 flake8 경고를 하나 수정합니다.
- 여러 import 테스트를 수정합니다.
- Windows 환경을 고려해 SSL 테스트 자산에 symlink를 사용하지 않습니다.
- filesync.Stats에 대한 단위 테스트를 추가합니다.
- 비동기 재시도 로직을 추가합니다.
- ArtifactSaver, StepUpload에 대한 테스트를 강화합니다.
- 예외를 포착할 때 agent가 전체 스택 트레이스를 로그로 남기도록 합니다.
- neuron-ls가 출력하는 경고를 무시합니다.
- 개발 환경에서 pip 및 tox 버전을 고정합니다.
정리
- StepUpload 테스트를 강화하고, 업로드/커밋 시 예외 처리 로직을 보다 철저하게 만듭니다.
- Artifact 쿼리를 리팩터링하여 entity와 프로젝트를 가져오도록 합니다.
- 더 많은 communicate 호출을 deliver로 교체합니다.
- 내부적으로 commit의 성공/실패 전달에 threading.Event 대신 Future를 사용합니다.
- StepUpload에서 직접 풀을 관리하지 않고 표준 라이브러리의 ThreadPoolExecutor를 사용합니다.
버그 수정
- 시스템에서 AWS Trainium 사용 가능 여부를 확인할 때 추가적인 주의를 기울입니다.
- 레거시 / 사용자 코드용으로 ‘util.generate_id’를 복원합니다.
- init 중 mailbox 핸들을 해제할 때
release를abandon으로 교체합니다.
개선 사항
- 커밋되지 않은 업로드를 별도의 스테이징 영역에 유지합니다.
- 파일 디스크립터 관리를 개선합니다.
- 에이전트와 launch_add에 대해 기본적으로 model-registry 프로젝트를 사용합니다.
file.download()에exist_ok=False를 추가합니다.- 필요한 구성 요소가 있는 run에서 자동으로 job 아티팩트를 생성합니다.
- 테스트를 위한 범용 응답 주입 패턴을 추가합니다.
- multiprocessing.Queue를 queue.Queue로 교체합니다.
- 메모리 사용량을 제한하기 위해 트랜잭션 로그를 사용합니다.
- AWS Trainium에 대한 시스템 메트릭을 지원합니다.
버그 수정
- wandb.run에 대한 타입 힌트를 수정합니다.
- 객체 재시작 시 시스템 메트릭 수집을 재개합니다.
- env 처리 및 node_selector 처리를 수정합니다.
- launch_add를 호출할 때 잘못된 키워드(queue vs queue_name)를 사용하는 Job.call()을 수정합니다.
- Sweeps 스케줄러가 여러 단어로 구성된 파라미터를 처리하도록 합니다.
- requirements 파일에서 공백을 허용하고, 중복된 wandb 부트스트랩 파일을 제거합니다.
- URL 인코딩된 로컬 파일 참조를 올바르게 처리합니다.
- 매니페스트의 매니페스트에서가 아니라 다이제스트를 직접 가져옵니다.
- Artifact.version은 연결된 컬렉션의 버전 인덱스여야 합니다.
- 중복된 generate_id 함수를 제거하고, shortuuid를 secrets로 교체합니다.
- jax==0.4.1에서 도입된 jax.Array에 대한 타입 검사 문제를 수정합니다.
- wandb.init 실패 후 발생하는 멈춤(hang) 현상을 수정합니다(취소 추가).
- 사용자가 커스텀 실행 파일 경로를 제공할 수 있도록 허용합니다.
- Paginator 객체를 슬라이스하려고 할 때 발생하는 TypeError를 수정합니다.
- keras 모델 저장 시 처리되는 예외 목록에
AttributeError를 추가합니다. - job에서 args를 제거합니다.
개발
- t2_fix_error_cond_feature_importances를 업데이트하여 scikit-learn을 설치합니다.
- 나이틀리 테스트용 기본 Docker 이미지를 업데이트합니다.
- 기능 sacred 테스트에서 sklearn을 scikit-learn으로 변경합니다.
- resource=local-process일 때
--build에 대한 에러 체크를 추가합니다. - 스케줄러와 에이전트 리소스 처리를 업데이트하여 DRC 오버라이드를 허용합니다.
- 상위 수준 항목 추가 또는 제거 시 sdk-team 검토를 요구합니다.
- 대상 프로젝트가 큐와 일치해야 한다는 요구 사항을 제거합니다.
- 나이틀리 클라우드 테스트 프로세스를 강화합니다.
- Pull Request 템플릿을 업데이트합니다.
- pushToRunQueue 쿼리 후 업데이트된 runSpec을 반환합니다.
- SDK에서 run spec 처리에 대한 수정을 수행합니다.
- 오래된 fastparquet 패키지에 대한 테스트 의존성을 제거합니다.
- 존재하지 않는 dtype np.float를 수정하고, Python float로 설정합니다.
- .pylintrc에서 ‘exclude’를 ‘ignore-paths’로 수정합니다.
- 실패를 조사할 수 있도록 pytest의 tmp_path를 사용합니다.
- 빌드 후 빌드 명령을 리셋합니다.
- CI에서 flaky 테스트를 pytest-rerunfailures로 재실행합니다.
- filesync 로직에서 사용되지 않는 코드를 제거합니다.
- filesync 메시지에서 사용되지 않는 필드를 제거합니다.
- 재시도 로직이 의존성 주입 대신 전역 변수를 사용하도록 리팩터링합니다.
- filesync.StepUpload에 대한 단위 테스트를 추가합니다.
- Api.upload_file_retry에 대한 테스트를 추가합니다.
- 큐에 대해 resource가 지정되지 않았을 때의 폴백 리소스를 제거합니다.
- 스토리지 핸들러 테스트 커버리지를 개선합니다.
- import 테스트를 수정합니다.
- 오류 발생 시 MetricsMonitor가 과도하게 장황하지 않도록 합니다.
- local-testcontainer에서 fixture 서버 포트가 9003에서 9010으로 변경된 사항을 반영합니다.
- six 의존성을 명확히 제거하기 위해 promise==2.3.0을 vendor로 포함합니다.
- wandb.init(…)에서 아티팩트 캐시 디렉터리를 설정할 수 있도록 허용합니다.
- 테스트를 위해 네트워크 버퍼를 일시적으로 낮춥니다.
- pex 환경에서 실행 중인지를 나타내는 텔레메트리를 추가합니다.
- 플로우 제어 텔레메트리를 추가합니다.
- 서비스 시작 문제(wait_for_ports)에 대한 설정 및 디버깅 옵션을 추가합니다.
- AWS Trainium 테스트를 수정합니다.
- 사용자 프로세스가 finish() 없이 종료될 때 상태 체커 스레드 문제를 수정합니다.
- 서비스 비활성화 상태에서의 사용에 대한 텔레메트리를 추가합니다.
정리
- 예외를 발생시킬 때 항상 동일한 구문을 사용합니다.
- _safe_mkdirs를 mkdir_exist_ok와 결합합니다.
- 아티팩트 캐시에 대해 pytest fixture를 사용합니다.
- 서브클래싱 대신 ArtifactEntry를 직접 사용합니다.
- 해시 유틸리티를 lib.hashutil로 통합합니다.
- public 파일을 적절한 포맷으로 포맷팅합니다.
- 개발 환경 설정 도구에서 tox를 올바른 환경에 설치합니다.
- init 및 run 로직을 정리합니다.
버그 수정
Object of type Tensor is not JSON serializable문제를 해결하기 위해Circular reference detected변경을 되돌립니다.
Enhancements
Sweep.expected_run_count를 public API에 추가했습니다.- Kubernetes runner에서 볼륨 마운트와 security context를 지원합니다.
- 이미지를 빌드한 후 큐에 푸시하기 위한 새로운
--build플래그를 추가했습니다. - WandbMetricsLogger를 사용하여 learning rate를 로깅할 수 있는 기능을 추가했습니다.
- GA를 준비하기 위해 Report API를 개선했습니다.
Fixes
- 커밋된 아티팩트만 가져오도록
artifact_version필터를 추가했습니다. wandb verify의 flaky 동작을 수정했습니다.- Job에서 LaunchProject로 전달되는 override args의 타입을 수정했습니다.
- 로그 prefix에서 불필요한 콜론을 제거했습니다.
- pex 기반 환경에서 실행 중인 서비스에 대한 지원을 추가했습니다.
- 정적 IPU 정보를 프로빙하는 기능을 수정했습니다.
- public GQL 요청에서
artifactSequence를artifactCollection으로 변경했습니다. WandbModelCheckpoint의 TF 호환성 문제를 수정했습니다.- Keras WandbCallback이 TF 버전 >= 2.11.0과 호환되도록 했습니다.
- gym 인테그레이션을 최신 버전에 맞게 업데이트했습니다.
- SystemMetrics의 내부 스레드 관리를 강화했습니다.
Dev
refspec과depth=1을 지정하여 git fetch 시간을 개선했습니다.- grpc로 생성된 파일을 무시하도록 linguist 규칙을 수정했습니다.
- Launch 테스트를 위한 새로운 shard를 추가했습니다.
- Node 12 기반 GitHub Actions를 업그레이드했습니다.
- flaky한
artifact_metadata_save테스트를 건너뜁니다. - 파일이 쓰이기를 기다릴 때 sleep 대신 flush를 사용했습니다.
- 테스트 중 로컬 파일을 쓰는 대신
tmp_pathfixture를 사용했습니다. - 깨져 있던 queue 테스트를 수정했습니다.
- 테스트
test_artifact_metadata_save에 대해xfail대신skip을 사용했습니다. - InternalApi.upload_file에 대한 많은 테스트를 추가했습니다.
- 오래된 서버를 위한 artifact Sequence 폴백을 추가했습니다.
- protobuf 버전 요구 사항을 더 세분화했습니다.
Cleanup
- 아티팩트를 커밋할 때 409 Conflict 에러에 대해 재시도하지 않도록 했습니다.
- SDK에서 아티팩트에 대한 프로그래매틱 alias 추가/삭제를 지원했습니다.
- 사용되지 않는 로직을 포함하고 있는
wandb.sklearn.plot_decision_boundaries를 제거했습니다. - 테스트용 dev-container 이미지의 최신 버전을 강제로 pull하도록 하는 옵션을 추가했습니다.
- Noop builder를 추가했습니다.
- 사용되지 않는 attribute를 제거했습니다.
mypy를 0.991로 업데이트했습니다.- 더 견고한 URI 파싱을 추가했습니다.
- internal_api.py에 대해 linting을 활성화했습니다.
- 벤더링된 라이브러리를 수정하여 six에 대한 의존성을 제거했습니다.
Enhancements
- 이미지 참조를 업로드할 수 있는 옵션을 추가했습니다.
Fixes
- 더 읽기 쉬운 이미지 이름을 생성하도록 했습니다.
- 아티팩트 캐시의 키로
etag만이 아니라 hash(etag+url)를 사용하도록 했습니다. wandb artifact put을 사용할 때, 사용자에게 준비 완료를 알리기 전에 아티팩트 커밋이 완료될 때까지 기다리도록 했습니다.- vendor watchdog 라이브러리에 prefix를 추가했습니다.
- numpy 배열 길이가 32를 초과할 때 메타데이터를 업데이트하면 발생하던
Circular reference detected에러를 수정했습니다. - DDP 모드를 깨뜨리지 않도록 SageMaker에서 run_id에 랜덤 문자열을 추가했습니다.
Dev
- 결과를 가져오기 전에 테스트 클러스터를 종료하지 않도록 했습니다.
- 나이틀리 CPU 스위트에 독립 실행형 아티팩트 테스트를 추가했습니다.
- 기본 브랜치 이름을
main으로 변경했습니다. - protobuf 타입 체크를 위한 mypy 익스텐션을 업데이트했습니다.
- codeql-analysis.yml의 브랜치 이름을 업데이트했습니다.
- 기능 import 테스트를 나이틀리로 이동하고 Python 버전 커버리지를 확장했습니다.
- 실패한 나이틀리 import 테스트에 대한 Slack 알림을 추가했습니다.
- 존재하지 않는 아티팩트를 업로드하려던 깨진 CLI 테스트를 수정했습니다.
Cleanup
- log_artifact 대신 use_artifact를 통한 Job 생성을 사용하도록 했습니다.
- 릴리스 프로세스의 일부를 자동화하기 위한 GH action을 추가했습니다.
- 모든 상황에서 UI에서 3D 포인트 클라우드를 볼 수 있도록 했습니다.
- fsmonitor가 활성화된 경우 Git URL이 실패하던 문제를 수정했습니다.
- 새로 생성된 proto 파일 디렉터리를 무시하도록 했습니다.
- SDK에서 Run Queue 삭제를 방해하던 버그를 수정했습니다.
pushToRunQueueByNamemutation에 대한 지원을 추가했습니다.- 시스템 메트릭 모니터링과 프로빙을 리팩터링했습니다.
- protobuf 생성 파일에 대한 gitattribute를 수정했습니다.
Enhancements
- k8s 잡 이름에 entity와 프로젝트를 표시합니다.
- 환경 변수용 스윕 명령 매크로를 추가합니다.
Object3D데이터 타입에from_*생성자와 씬 카메라 및 바운딩 박스 신뢰도 점수를 추가합니다.- 아티팩트 다운로드에 대한 간단한 진행 표시기를 추가합니다.
WandbMetricsLogger콜백을 추가합니다 -Keras전용 메트릭 로거 콜백입니다.WandbModelCheckpoint콜백을 추가합니다 -Keras모델 체크포인트 콜백입니다.WandbEvalCallback콜백을 추가합니다 - 모델 예측을 W&B 테이블로 로깅하기 위한Keras콜백입니다.
Fixes
- 에이전트의 config
max_jobs속성을 정수로 변환합니다. debug-cli.log(디버그 로그)에 표시되는 경로를 올바르게 수정합니다.- AWS에 아티팩트를 업로드할 때 재시도 가능한 요청 시간 초과를 처리합니다.
- 오래 실행되는 호출(요약, 종료)에 대한 사용자 피드백을 개선합니다.
tf.MirroredStrategy와 함께keras.WandbCallback을 사용할 때 발생하는RuntimeError를 수정합니다.
Dev
codeql을 사용한 코드 분석/스캐닝을 추가합니다.- Conventional Commits 가이드라인을 준수하도록 PR 제목을 검증합니다.
kaniko와launch-agent-dev의 빌드 버전을 고정하여 Launch를 강화합니다.mmengine패키지에 대한 텔레메트리를 추가합니다.- Conventional Commits 설정에
build타입을 추가합니다. imports12샤드에tensorflow_datasets의존성을 추가합니다.- 상위 의존성을 고정하여 sb3 테스트를 수정합니다.
- SDK를 protobuf v4와 호환되도록 만듭니다.
- flake8 출력 색상을 수정합니다.
- 아티팩트 참조 테스트 애셋 디렉터리를 수정합니다.
Cleanup
public_api.runs의filters인자에 대한 타입 힌트를 수정합니다.- 아티팩트 파일 생성과 관련된 타입 애너테이션을 개선합니다.
- public API에 대한 타입 애너테이션과 VSCode 설정을 개선합니다.
- VSCode에서 타입 애너테이션을 더 쉽게 탐색할 수 있도록 합니다.
- 문자열
NewTypes를 도입하고 다양한 Artifact 필드에 사용합니다. - boto3 사용 시 더 나은 IDE 힌트를 제공하기 위해 타입 애너테이션을 추가합니다.
개선
raytune예제/테스트를 추가합니다.- 실제
wandb server에 대해 실행되도록pytest단위 테스트를 리팩터링합니다. - Launch
kubernetes의 taints 및 tolerations 지원을 추가합니다. - Kubernetes에서 Launch의 Sweeps를 추가합니다.
- 기능 테스트에 병렬성을 추가합니다.
mypy를 버전0.971로 업그레이드합니다.- Mailbox 비동기 내부 프로세스 통신을 추가합니다.
- sweep 설정에서 launch job 검색을 구현합니다.
- 큰 메시지를 전송할 때의 성능을 개선합니다.
- 최신
nvidia-ml-py-11.515.48라이브러리를 포함(vendor)합니다. - 서비스 소켓에서 recv 크기를 증가시켜 성능을 개선합니다.
- black 프로필과 함께 isort 지원을 추가합니다.
- 야간 테스트를 위해 테스트 결과를 CircleCI로 푸시하는 기능을 구현합니다.
pytest단위 테스트용 디버그 모드를 추가합니다.- Launch Jobs에서 인자 지원을 추가합니다.
- FetchRunQueueItemById 쿼리를 추가합니다.
- keras-cv용 텔레메트리를 추가합니다.
- sentry 세션 추적을 추가합니다.
- 등록된 모델에 링크하면서 아티팩트를 로그하는 기능을 추가합니다.
정리
- gradient 및 parameter hook을 분리합니다.
- 중복 uri/docker-image에 대한 명시적인 오류 메시지를 추가합니다.
- wandb_init fixture 인자가 wandb.init()과 동기화되어 있는지 테스트합니다.
- 야간 테스트에 사용되는 GKE 클러스터를
n1-standard-8로 업그레이드합니다. - 서비스 종료를 테스트의 마지막으로 이동합니다.
pytestjob 병렬성을 10에서 6으로 줄입니다.- 서비스 user 문서를 제거합니다.
_timestamp로직을 내부 프로세스로 이동합니다.- Launch
gitversion오류 메시지를 추가합니다. - CircleCI에서 KFP 머신 VM 이미지를 업데이트합니다.
- 스윕을 최신 버전으로 업그레이드합니다.
- Sweep 스케줄러 정리 및 더 나은 테스트를 구현합니다.
- API 변경 사항에 대해 sdk-team의 승인을 요구하는 요건을 추가합니다.
- 아티팩트 커밋에 추가 시간을 부여합니다.
- 동적 의존성 해석을 사용하는 tox 설정을 구현합니다.
- 야간 빌드를 위한
buildx버전 고정을 제거합니다. - Launch run 설정을 entrypoint에서 params로 이동합니다.
- CircleCI의 Win job에서 Slack orb 사용을 제거합니다.
- 레거시 에이전트를 사용하여 Launch run 인자에 대한 하트비트 파싱을 추가합니다.
- 서비스를 종료할 때 더 나은 오류 처리를 추가합니다.
- Launch 잡 생성 파이프라인을 정리합니다.
- 잘못된 타입의 아티팩트를 업로드할 때 오류 메시지에 세부 정보를 추가합니다.
- artifacts wait()에 선택적 timeout 파라미터를 추가합니다.
- 키에서 numpy 제네릭을 정제합니다.
- public api에서 run 함수를 재할당하는 작업을 제거합니다.
- public api를 사용해 runs를 조회할 때 스윕 가져오기를 선택 사항으로 만듭니다.
- 특수 문자에 대한 더 많은 정보를 제공하기 위해
wandb.init레퍼런스 문서를 업데이트합니다.
버그 수정
- Launch Jobs에서 Sweeps 요구 사항을 수정합니다.
- 더 다양한 타입을 허용하도록 Artifact 메타데이터 JSON 인코딩을 수정합니다.
root_dir설정 처리 로직을 조정합니다.- run.log()가 전달된 인자를 변경하지 못하도록 방지합니다.
05-batch5.py테스트를 수정합니다.- launch spec을 통해
run_id를 제어할 수 있도록 허용합니다. config.yml에서의 실수로 인한 덮어쓰기를 수정합니다.- public API 초기화 시 재정의된
base_url이 전파되도록 보장합니다. - Launch CLI launch 설정과 relpath에서 Sweeps 문제를 수정합니다.
- 깨진 Launch apikey 오류 메시지를 수정합니다.
- 불안정한 스윕 테스트를 xfail로 표시합니다.
- Launch
gitversion오류 메시지를 수정합니다. yea-wandbdev release -> release 문제를 수정합니다.- client->wandb 이름 변경 이후 남아 있던 이슈들을 정리합니다.
- precision recall 테스트를 수정합니다.
- sklearn 기능 테스트를 수정합니다.
- Windows에서 키보드 인터럽트로 인해 발생하는 hang을 수정합니다.
- 기본 테스트 컨테이너 태그를 수정합니다.
- conftest.py에서 summary 처리를 수정합니다.
- CLI 출력의 일부 작은 오타를 수정합니다.
- 기본 파일을 사용하고 예외를 캐치하여 colab 업데이트로 인해 트리거된 문제를 수정합니다.
- mailbox 잠금 문제를 수정합니다.
- 로그 문자열에 변수 포함 문제를 수정합니다.
wandb.Artifacts.artifact.version속성을 올바르게 수정합니다.- Launch Agent에 의한 docker 인자 파이핑을 수정합니다.
- 이메일을 가져오지 않은 상태에서 public API User 객체를 출력할 때 RecursionError를 수정합니다.
- 숫자 컬럼 이름의 역직렬화를 수정합니다.
기능 개선
- 기본값으로 서비스를 활성화합니다.
- 서버에서 제공하는 메시지를 처리하기 위한 지원 로직을 추가합니다.
- run이 종료 시 job을 생성할 수 있도록 허용합니다.
- Launch에서 Job, QueuedRun, job 처리 기능을 추가합니다.
- Launch agent에서 EC2와 EKS 인스턴스 역할을 지원합니다.
- Keras Callback에 기본 동작을 추가합니다: 항상 모델 체크포인트를 아티팩트로 저장합니다.
- 모델 아티팩트 저장을 위해 KerasCallback에서 아티팩트 이름을 정규화(sanitize)합니다.
- 에뮬레이터를 서비스 프로세스로 이동하여 콘솔 로깅을 개선합니다.
- 대용량 데이터를 로깅할 때 발생하는 데이터 손상 문제를 수정합니다.
- Public API에서 Sweep
repr에 state를 추가합니다. - 설정 또는 환경 변수를 사용하여 git의 다른 루트 디렉터리를 지정하는 옵션을 추가합니다.
remote url과commit hash를 설정 인자 또는 환경 변수로 전달할 수 있는 옵션을 추가합니다.- 추적되는 메트릭과 시스템 메트릭의 시간 해상도를 향상합니다.
wandb.sweep()호출에서project가 지정되지 않은 경우, 스윕 설정에 있는 프로젝트 이름을 기본값으로 사용합니다.- Launch agent가 설정한 namespace를 사용할 수 있도록 지원을 추가합니다.
- run이 덮어써질 수 있는 상황을 추적하기 위한 텔레메트리를 추가합니다.
wandb의 history를sqlite로 내보내는 도구를 추가합니다.- 일부
Mapping[str, ...]타입을NamedTuples로 교체합니다. - run 텔레메트리를 위한 import hook을 추가합니다.
- IPU에 대한 프로파일링 지원을 구현합니다.
버그 수정
- 서비스를 사용하는 스윕 에이전트를 수정합니다.
- 비어 있는 타입이 잘못된 타입으로 간주되는 문제와 아티팩트 딕셔너리 처리 방식을 수정합니다.
- 속성 조회 시 기본값을 지원하도록
wandb.Config객체를 수정합니다. - job에서 기본 config를 제거합니다.
- patch가
None인 경우 발생하는 문제를 수정합니다. - 나이틀리 SDK 설치 검사에서
requirements.txt파싱 문제를 수정합니다. - GraphQL 요청이 타임아웃될 때 409 Conflict 처리 방식을 수정합니다.
- 사용자 프로세스가 종료된 경우 서비스 종료 처리 방식을 수정합니다.
storage_path를 추가하고artifact.files를 수정합니다.- 많은 수의 미디어 파일이 포함된 run을 동기화할 때의 성능 문제를 수정합니다.
정리
- 서비스를 비활성화할 수 있는 escape hatch 로직을 추가합니다.
wandb/docker에 타입 주석을 추가하고 docker fixture의 변경을 되돌립니다.- Keras
WandbCallback에서 GFLOPS를 GFLOPs로 수정합니다. file_stream.py에 타입 주석을 추가합니다.- 리포지토리 이름을
client에서wandb로 변경합니다. - HuggingFace Trainer에 대해
--report_to wandb를 추가하는 문서를 업데이트합니다. link_artifact에서 별칭(aliases)을 선택 사항으로 만듭니다.wandb local을wandb server로 이름 변경합니다.- README 배지를 업데이트합니다.
개선 사항
- run이 종료될 때까지 config가 표시되지 않던 문제를 수정했습니다.
- job과 run config에서 아티팩트 객체를 처리하기 위해 TypeRegistry에 새로운 타입을 추가했습니다.
- run의 상태를 가져오는 내부 API에 새로운 쿼리를 추가했습니다.
- 안전하지 않은 YAML 로더를
yaml.safe_load로 교체했습니다. - 수동 테스트에서 shard를 지정할 수 있도록 하여 테스트 도구를 개선했습니다.
- 계층화 샘플링을 사용하여 sklearn 인테그레이션의 ROC 및 PR 커브를 수정했습니다.
- 노트북에서 입력 상자가 셀 영역을 넘어서던 문제를 수정했습니다.
- 문자열을
link_model의 alias로 전달할 수 있도록 했습니다. keras의WandbCallback에 FLOPS 계산 지원을 추가했습니다.- Python 리포트 편집 기능을 확장했습니다.
버그 수정
- 자식 프로세스에서 올바른 GPU를 모두 찾을 수 있도록 stats 로거를 수정했습니다.
- 폴더에 대한 S3 reference 업로드 회귀(regression) 버그를 수정했습니다.
- 백엔드에서 충돌을 처리할 수 있도록 아티팩트 커밋 로직을 수정했습니다.
- 재시도 로직에서
None응답을 확인하는 안전 검사(safety check)를 추가했습니다. - Launch 위에서 동작하는 Sweeps를 추가했습니다(현재 MVP 단계).
- 기능 테스트 디렉터리와 파일 이름을 변경했습니다.
정리
_to_dict헬퍼의 조건 순서를 수정했습니다.- PR 3709에 대한 changelog의 깨진 링크를 수정했습니다.
- public API 쿼리(QueuedJob API)를 수정했습니다.
- local runners의 이름을 local-container와 local-process로 변경했습니다.
wandb/filesync디렉터리의 파일에 타입 애너테이션을 추가했습니다.- 공통 루트 디렉터리를 갖도록 모든 테스트 디렉터리를 재구성했습니다.
- 테스트 설정을 수정하고
CircleCi에 더 큰 머신을 추가했습니다. wandb-service-userREADME 파일의 오타를 수정했습니다.- 회귀(regression) 관련 깨진 아티팩트 테스트를 수정했습니다.
- 사용되지 않는 파일(
py27관련)과 비어 있는submodules선언을 제거했습니다. - cloudpickle을 위한 model reg용 extra 의존성을 추가했습니다.
- 더 이상 사용되지 않는 threading 별칭을 교체했습니다.
- 이름이 변경된 명령(local -> server)에 맞게
sdkREADME를 업데이트했습니다.
기능 개선
- Launch: LocalRunner 기반 BareRunner.
- public API에 API 키를 지정할 수 있는 기능을 추가했습니다.
- Windows에서 유니코드 파일 이름을 가진 파일에 대한 artifacts 지원을 추가했습니다.
- 새 패키지에 대한 텔레메트리를 추가했습니다.
- API 키 관리를 개선했습니다.
- 로그인 중
wandb server에 대한 정보를 추가했습니다.
버그 수정
- Python Table 타입에서 타임스탬프를 네이티브로 지원합니다.
- service와 함께 magic 명령에 대한 지원을 추가했습니다.
- DirWatcher 및 지원 클래스에 대한 단위 테스트를 추가했습니다.
DirWatcher.update_policy를 O(1)로 개선했습니다(업로드된 파일 개수에 비례하지 않도록).- SB3 콜백에서 무엇을 로그할지 제어할 수 있는 인자를 추가했습니다.
- sb3 인테그레이션에서 파라미터 이름을 개선했습니다.
- M1 Mac에서 개발 환경 설정 요구 사항을 조정했습니다.
- Launch: NVIDIA base image Linux 키를 수정했습니다.
- 설정 파일에서 launch run 큐 처리 문제를 수정했습니다.
- tfevents가 항상 소비되지 않던 문제를 수정했습니다.
- [Snyk] 8개 취약점에 대한 수정을 적용했습니다.
- 키 이름이 충돌할 때 폴더를 업로드하도록 s3 storage handler를 수정했습니다.
- artifacts에서 테이블의 타임스탬프를 올바르게 로드하도록 수정했습니다.
protobuf<44를 요구하도록 변경했습니다.- Launch를 통해 생성된 컨테이너를 컨테이너 잡으로 다시 실행할 수 있도록 했습니다.
- finish()에서 단계를 건너뛰던 tensorboard 인테그레이션 문제를 수정했습니다.
wandb local을wandb server로 이름 변경했습니다.- 실패하던 docker inspect 명령을 수정했습니다.
- 전용 sentry wandb를 추가했습니다.
- Image Type이 이전 타입 파라미터를 보다 원활하게 처리하도록 했습니다.
정리
- FileEventHandler.synced를 사용되는 단일 메서드 안으로 인라인했습니다.
- 전달된 size 인자를 사용하여
PolicyLive.min_wait_for_size를 classmethod로 만들었습니다. - FileEventHandler를 ABC로 만들고, 한 번만 사용되던 일부 “기본” 메서드 구현을 제거했습니다.
- DirWatcher에서 사용되지 않는 필드를 제거했습니다.
- sweeps를 vendoring 대신 extra로 분리했습니다.
- nightly CI 테스트를 추가했습니다.
- keras 및 데이터 타입 Reference Docs를 개선했습니다.
- 개발 환경에서
pytorch버전 요구 사항을 업데이트했습니다. - CircleCI 설정을 정리했습니다.
- CI에
py310테스트를 추가했습니다. - 요구 사항에서
dateutil을 제거했습니다. Table.add_row에 deprecated 문자열을 추가했습니다.
기능 개선
- 노트북 환경에서 summary/history를 정렬하여 W&B 푸터를 개선했습니다.
- artifacts에서 실험적인 history step 로깅을 활성화했습니다.
- sweep 설정에
args_no_boolean_flags매크로를 추가했습니다. jax.bfloat.bfloat16에 대한 로깅 지원을 추가했습니다.- Table 크기가 한도를 초과하면 예외를 발생시키도록 했습니다.
- wandb launch용 kaniko k8s builder를 추가했습니다.
- wandb.init()에 timeout 설정을 추가했습니다.
- wandb launch에서 주어진 entrypoint를 실행 파일이라고 가정하지 않도록 했습니다.
- Jupyter 환경이 더 이상 명령 인자를 수집하지 않습니다.
- TensorFlow/Keras SavedModel 포맷에 대한 지원을 추가했습니다.
버그 수정
- artifact refs에서 버전 ID를 지원하고, Windows에서 s3/gcs reference를 수정했습니다.
- wandb-service를 사용할 때 단일 run에 대한 여러 번의 finish를 지원하도록 수정했습니다.
- wandb-service 사용 시 중복 backtrace가 발생하던 문제를 수정했습니다.
- 로그인 메시지에 잘못된 entity가 표시되던 문제를 수정했습니다.
- wandb-service를 사용할 때
wandb.init이 설정 중간에 인터럽트되면 hang되던 문제를 수정했습니다. - wandb-service가 활성화된 상태에서 hang을 방지하기 위해 키보드 인터럽트 처리를 수정했습니다.
- wandb-service 사용 시 매우 긴 출력이 있을 때 콘솔 로깅 문제를 수정했습니다.
- launch init config에서 깨진 artifact 문자열을 수정했습니다.
정리
- wandb.log() docstring의 오타를 수정했습니다.
- 커스텀 차트 코드를 정리하고 plot 함수에 타입 애너테이션을 추가했습니다.
Settings객체를dict파라미터와 유사하게 처리하도록wandb.init(settings=)을 개선했습니다.- api.user() 및 api.users()에서 api.viewer에 대한 문서 노트를 추가했습니다.
- setup.py에서 Python 3+만 지원한다는 점을 명시했습니다.
- DirWatcher에 타입 애너테이션을 추가했습니다.
- 올바른 인자 이름을 사용하도록 wandb.log() docstring을 개선했습니다.
개선 사항
- wandb-service를 사용할 때 run 객체를 다른 프로세스로 전달할 수 있도록 허용합니다.
- 퍼블릭 API에 사용자 생성 기능을 추가합니다.
- wandb-service로 여러 프로세스에서 로깅을 지원합니다.
- CUDA와 함께 로컬 Launch runner를 위한 gpus 플래그를 추가합니다.
- Launch deployable agent를 개선합니다.
- Launch Kubernetes 인테그레이션을 추가합니다.
- KFP: wandb 시각화 헬퍼를 추가합니다.
- KFP: Kubeflow UI로 돌아가는 링크를 추가합니다.
- boolean 플래그 인자 매크로를 추가합니다.
버그 수정
- host / WANDB_BASE_URL 검증을 개선합니다.
- 안전하지 않은 tempfile을 수정합니다.
- 요청된 WANDB_DIR/root_dir에 쓸 수 없을 때 과도한 경고 span을 수정합니다.
- 문자열 배열을 플로팅하도록 line_series를 수정합니다.
- 서비스 사용 시 명령줄 인자를 올바르게 처리합니다.
- api_key 검증을 개선합니다.
- defaultdict를 사용하지 않아 발생한 여러 성능 문제를 수정합니다.
- Launch agent에서 무제한 max jobs를 활성화합니다.
- Launch와 함께 동작하도록 colab 명령을 수정합니다.
- Config docstring의 오타를 수정합니다.
- 코드 저장을 정책으로 만들지 않고, 이전의 커스텀 로직을 유지합니다.
- 서비스에서 시퀀스 이미지 로깅을 수정합니다.
- 여러 사용자의 충돌을 방지하기 위해 debug-cli 로그 파일에 사용자 이름을 추가합니다.
- wandb service / pytorch-lightning 사용자용 Python 스윕 agent를 수정합니다.
- 불필요한 Launch 요구 사항 체크를 제거합니다.
- MoviePy의 Unclosed Writer에 대한 우회 방법을 추가합니다.
- 서비스가 활성화되어 있지 않을 때 Run 객체 처리를 개선합니다.
개선 사항
- Molecules에 캡션을 추가합니다.
- CatBoost 인테그레이션을 추가합니다.
- Launch: AWS Sagemaker 인테그레이션을 추가합니다.
- Launch: repo2docker를 제거하고 GPU 지원을 추가합니다.
- Weave를 위한 Python에서의 타임스탬프 추론 기능을 추가합니다.
- Launch GCP Vertex 인테그레이션을 추가합니다.
- run config에 넣을 때 Artifacts를 사용합니다. run config에서 아티팩트를 나타내기 위해 문자열을 허용합니다.
- xgboost
wandb_callback을 개선합니다 (#2929). - 초기 Kubeflow Pipeline 지원을 추가합니다.
버그 수정
- 키에 특수 문자가 있는 이미지 로깅을 수정합니다.
- Azure Blob 업로드 재시도 로직을 수정합니다.
- Python 모듈로 실행되는 스크립트의 program 필드를 수정합니다.
sync_tensorboard가 큰 히스토그램에서 중단될 수 있는 문제를 수정합니다.- run 종료 중 wandb service 성능 문제를 수정합니다.
- gql 및 graphql 벤더링을 수정합니다.
- 서비스에서 finish 없이 로그 데이터를 플러시합니다.
- 서비스가 크래시될 때 발생하는 wandb service 중단 문제를 수정합니다.
- Windows에서 ”/“가 포함된 이미지 로깅 문제를 수정합니다.
- images/separated media에 이미지 파일 이름을 추가합니다.
- requirements.txt에 setproctitle을 추가합니다.
- Sagemaker run ID가 run 큐를 깨뜨리는 문제를 수정합니다.
- %%capture 매직을 사용할 때 발생하는 인코딩 예외를 수정합니다.
Enhancement
- 데이터프레임에서 잘못된 열을 가진 Tables를 생성할 때 유효성 검사를 개선했습니다.
use_artifact()호출에 대해 digest 중복 제거를 활성화했습니다.- Azure Blob 업로드 지원의 초기 프로토타입을 추가했습니다.
Bug Fix
- Python 개발 버전 사용 시 wandb launch 문제를 수정했습니다.
- 혼합 타입으로 저장된 테이블 로딩 문제를 수정했습니다.
- wandb.log 호출 시 발생하는 ResourceWarning을 수정했습니다.
- ProjectArtifactCollections에서 커서가 누락되는 문제를 수정했습니다.
- Windows 환경에서 테이블 로깅 클래스 관련 문제를 수정했습니다.
- wandb.sklearn.plot.classifier.calibration_curve에서 문자열 레이블을 안정적으로 처리하도록 했습니다.
- wandb.sweep() 호출 시 로그인 경고가 표시되지 않도록 했습니다.
Cleanup
- Python2 백포트 의존성(enum34, subprocess32, configparser)을 제거했습니다.
- Settings를 리팩터링했습니다.
Enhancement
- 기여 가이드와 개발 환경 설정 도구를 업데이트했습니다.
- LightGBM용
wandb_callback을 개선했습니다(#2945).
Bug Fix
- 모델 가중치의 히스토그램을 생성할 때 GPU 메모리 사용량을 줄였습니다.
- 바운딩 박스와 이미지 마스크 어노테이션 레이어에서 혼합 클래스 지원을 추가했습니다.
- max-jobs 및 launch async 인자를 추가했습니다.
- 문자열로 인코딩된 Summary 객체 리스트를 wandb.tensorboard.log에서 지원하도록 했습니다.
- 0차원 numpy 배열 처리 문제를 수정했습니다.
- 비어 있는 기본 설정 파일 처리 문제를 수정했습니다.
- 소켓을 사용하는 서비스 백엔드를 추가했습니다(fork 지원).
- git 저장소를 전송할 때 URL과 함께 git 포트를 전송하도록 했습니다.
- Launch에서 raw IP 주소 지원을 추가했습니다.
- Tables가 더 이상 1D NDArray를 직렬화하고 숨기지 않도록 했습니다.
- S3 스토어로의 아티팩트 파일 업로드 문제를 수정했습니다.
- 파일 스트림 하트비트 시 업로드된 파일 목록을 전송하도록 했습니다.
- Keras experimental layers 지원을 추가했습니다.
from wandb import magic이 TensorFlow를 요구하지 않도록 수정했습니다.- Launch 권한 오류를 수정했습니다.
Bug Fix
- 콘솔 로그 스트리밍이 과도한 네트워크 트래픽을 유발하던 문제를 수정했습니다.
- Metaflow: 선택적 의존성이 실제로 선택 사항으로 동작하도록 했습니다.
- wandb.watch와 ValidationDataLogger의 도크스트링을 수정했습니다.
- Launch agent가 run을 다른 프로젝트나 entity로 보내지 못하도록 했습니다.
- TensorBoard를 통한 pr_curves 로깅 문제를 수정했습니다.
- TPU 모니터링이 사용 불가능할 때 잘못된 메트릭을 보고하지 않도록 했습니다.
- WandbCallback을 위한 import 순서 의존성을 더 견고하게 만들었습니다.
- 서로 다른 형태의 행렬을 처리할 수 있도록 feature importance 플롯 버그를 수정했습니다.
- base URL 처리 방식을 수정하여 끝에 /가 올 수 있도록 했습니다.
- wandb.agent()가 너무 많은 하트비트를 보내 레이트 리밋에 영향을 주지 않도록 했습니다.
- 디버그 로그에서 민감한 정보를 마스킹했습니다.
Enhancement
- rdkit이 지원하는 포맷에 대해 wandb.Molecule 지원을 추가했습니다.
- 레퍼런스 문서 모듈에 모듈 레벨 도크스트링을 추가했습니다.
- Launch 메타데이터를 파일에 저장하도록 했습니다.
- 프로젝트 내 모든 스윕을 조회할 수 있도록 Project.sweeps() 공개 API 호출을 추가했습니다.
- 사용자가 아무 것도 입력하지 않을 때 API 키 프롬프트가 유지되도록 보장했습니다.
- wandb.sklearn을 서브모듈로 리팩터링했습니다.
- wandb launch에서 코드 아티팩트를 지원하도록 했습니다.
- Launch agent를 개선했습니다(async, stop, 하트비트 업데이트).
- 익명 모드에 대한 사용법 및 오류 메시지를 개선했습니다.
- 정규식을 만족하는 run을 찾기 위해 wandb.Api().runs(…)를 사용하는 예제를 추가했습니다.
Bug Fix
- 제공된 모델을 깨뜨리던 sklearn
plot_calibration_curve()문제를 수정했습니다. - stderr 리다이렉션을 통해 CondaEnvExportError를 수정했습니다.
- 다른 프로젝트의 아티팩트를 지정했을 때
use_artifact()동작 문제를 수정했습니다.
Enhancement
- TensorBoard의 PR 커브 차트에 메트릭 이름을 추가했습니다.
버그 수정
- Windows에서 로깅된 미디어 키에 잘못된 문자가 있을 경우 오류를 보고합니다.
- 지원되지 않는 환경에서 TPU를 프로빙할 때 발생하는 오류를 처리합니다.
%%wandb뒤에 wandb.init()을 호출하면 run 링크가 표시되지 않던 버그를 수정했습니다.- 현재 entity/project에 대한 모든 run을 올바르게 반환하도록 api.runs()를 수정했습니다.
기능 개선
- 멀티프로세싱 지원을 개선하기 위해
wandb.require(experiment="service")를 추가했습니다. - Launch 컨텍스트에서 교체 가능한 Artifacts를 지원합니다.
- Jupyter 환경에서
wandb.login(timeout=)을 지원합니다. WANDB_DISABLE_GIT으로 git ref 저장을 비활성화할 수 있는 기능을 추가했습니다.- 최신 버전의 pytest-mock 및 PyYAML을 지원합니다.
- 별칭이 있는 Artifacts를 삭제할 수 있는 기능을 추가했습니다:
artifact.delete(delete_aliases=True). - Run 객체에
unwatch()메서드를 추가했습니다.
버그 수정
- 0.12.2에서 도입된 회귀(regression)로 인해
WANDB_MODE=offline일 때 네트워크에 접근하던 문제를 수정했습니다.
버그 수정
- 로컬 컨트롤러에서 그리드 검색 종료 조건을 수정했습니다.
기능 개선
- Runs, Sweeps, Projects를 표시하는 새로운 Jupyter 매직
%wandb path/to/run -h 1024를 추가했습니다. - 이제 기본적으로 Jupyter에서 run용 iframe을 표시하지 않으며, 셀에
%%wandb를 추가하면 run을 표시합니다. - 잘못된 입력이 있을 때 API 키 프롬프트가 무기한 재시도되도록 했습니다.
- API를 통해 사용자에게 팀 초대장을 보낼 수 있습니다:
api.team("team_name").invite("username_or_email"). - API를 통해 팀에서 사용자를 제거할 수 있습니다:
api.team("team_name").members[0].delete(). - API를 통해 서비스 계정을 생성할 수 있습니다:
api.team("team_name").create_service_account("Description"). - API를 통해 API 키를 관리할 수 있습니다:
api.user("username_or_email").generate_api_key(). wandb.profiler.torch_trace_handler()로 PyTorch 프로파일링 trace를 지원합니다.
버그 수정
- tensorboard_sync가 일시적인 SageMaker tfevents 파일을 처리하도록 수정했습니다.
- 퍼블릭 API에서 Reports 쿼리(깨진 페이지네이션 및 리포트 경로)를 수정했습니다.
- 재로그인이 지정된 경우
wandb.login()이 동작하도록 수정했습니다(로그인을 한 번만 강제).
기능 개선
- summary 및 history 메트릭의 푸터 출력을 정리했습니다.
wandb sweep --update의 오류 메시지를 정리했습니다.wandb local사용자에게 Docker 업데이트 경고를 추가했습니다.- wandb.sklearn.plot_classifier()에 선택적 인자 log_learning_curve를 추가했습니다.
wandb launch사용 시 고정된 pip 패키지 버전을 복원하도록 했습니다.- Launch에서 Jupyter 노트북을 지원합니다.
wandb.login()타임아웃 옵션을 추가했습니다.
버그 수정
- TensorFlow/Keras 2.6에서 검증 예제가 로깅되지 않던 문제를 수정했습니다.
- TensorBoard를 통해 로깅된 메트릭이 x축의 시간을 지원하지 않던 문제를 수정했습니다.
WANDB_IGNORE_GLOBS환경 변수 처리 문제를 수정했습니다.- sys.stdout이 커스텀 로거로 설정된 경우를 처리하도록 수정했습니다.
- sklearn feature importance 플롯이 feature 이름과 올바르게 매칭되지 않던 문제를 수정했습니다.
- Colab URL이 캡처되지 않던 문제를 수정했습니다.
- run 실행 파일이 현재 작업 디렉터리(cwd) 밖에 있을 때 프로그램 커맨드라인을 저장하도록 했습니다.
기능 개선
- Prodigy 인테그레이션을 추가하여 주석이 달린 데이터셋을 W&B Tables에 업로드할 수 있게 했습니다.
- 초기 Metaflow 지원을 추가했습니다.
- 실험적인 wandb launch 지원을 추가했습니다.
- 퍼블릭 API 요청이 타임아웃되는 경우 경고를 추가하고 이를 오버라이드할 수 있도록 했습니다.
- 로컬 컨트롤러 Sweeps 엔진의 오류 처리를 개선했습니다.
더 이상 지원되지 않음
- Python 3.5 지원을 제거합니다.
버그 수정
- 아티팩트 파일이 수정되는 중일 때 아티팩트 업로드가 실패할 수 있는 문제를 수정했습니다.
wandb.restore()가 스윕에서 생성된 run에서는 동작하지 않던 문제를 수정했습니다.
개선 사항
- run 실행 시간 계산을 개선했습니다.
사용 중단 예정
wandb==0.12.0부터는 Python 3.5가 지원되지 않습니다.
버그 수정
- Tables에 포함된 이미지의 메모리 사용량을 줄였습니다.
- graphql-core>=2.3.0에 대한 의존성을 추가했습니다.
- 충돌을 피하기 위해 urllib3 고정 버전을 제거했습니다. urllib3 관련 오류가 발생하면
pip install --upgrade urllib3를 실행하세요. - Public API의 HTTP 오류 메시지를 개선했습니다.
- 비활성화 모드에서 run.dir을 생성된 디렉터리 이름으로 설정했습니다.
개선 사항
- 네이티브 Jax 배열 로깅을 지원합니다.
- 이제 Tables에서 Molecule 데이터 타입을 지원합니다.
- Stable-Baselines3 API를 개선하여 모델 이름을 자동으로 로깅하고 트레이닝 종료 시 항상 모델을 업로드합니다.
- wandb/sweeps를 사용하여 스윕 로컬 컨트롤러를 구현했습니다.
더 이상 지원되지 않음
- Python 2.7 지원을 제거합니다.
버그 수정
wandb.watch()가 PyTorch에서 모델 저장을 방해하던 문제를 수정했습니다.- 균일 스윕 하이퍼파라미터가 int_uniform으로 파싱되던 문제를 수정했습니다.
- file_stream 스레드가 4xx 오류에서 종료되던 문제를 수정했습니다.
개선 사항
- 아티팩트 로깅을 논블로킹 방식으로 만들어 성능을 개선했습니다.
- Stable-Baselines3용 wandb 인테그레이션을 추가했습니다.
- keras 콜백 검증 로깅 추론 로직을 개선했습니다.
- Public API를 통해 스윕 상태를 노출합니다.
- API를 통한 스윕 run 페치 성능을 개선했습니다.
버그 수정
- run에 diff.patch 파일이 없을 때 wandb restore가 404를 반환하던 문제를 수정했습니다.
- pandas 데이터프레임을 로깅하려 할 때 wandb.log가 예외를 발생시키던 문제를 수정했습니다.
- 파일 업로드가 끝나기 전에 run이 완료된 것으로 표시될 수 있던 문제를 수정했습니다.
개선 사항
- 재개된 run에서는 command와 같은 run 메타데이터를 다시 로드하지 않도록 했습니다.
- pandas 데이터프레임을 자동으로 W&B Tables로 변환하여 로깅할 수 있도록 했습니다.
.wandb디렉터리를 처리하도록log_code()의 exclude 함수 동작을 수정했습니다.- PyTorch 모델 토폴로지 처리 방식을 개선했습니다.
- W&B 백엔드에 대한 부하를 줄이기 위해 config 디바운스 간격을 30초로 늘렸습니다.
- 이름, 프로그램, 설정을 가진 스윕을 생성할 때 CLI의 신뢰성을 개선했습니다.
버그 수정
log_artifact()가 네트워크 오류에 더 잘 대응하도록 개선했습니다.- 중복된 아티팩트 의존성을 제거했습니다.
- Windows에서의 urlib3 이슈에 대한 우회 방법을 추가했습니다.
- ipython이 멈추던 회귀 문제를 수정했습니다.
- numpy 고정밀 부동소수점 값을 로깅할 수 있도록 했습니다.
- 파일 기반 미디어 또는 아티팩트 객체의 충돌 가능성을 줄였습니다.
- PyTorch 그래프를 로깅할 때 wandb.watch() 회귀 문제를 수정했습니다.
개선 사항
- 조인된 테이블과 파티션된 테이블 로깅을 지원합니다.
- 스윕 설정에 대한 스키마 검증 경고를 처리합니다.
- 오류를 더 잘 처리할 수 있도록 wandb sync를 개선했습니다.
- wandb를 사용하는 스크립트와 리포지토리에 레이블을 지정하는 기능을 추가했습니다.
버그 수정
- Wandb.login()이 host 매개변수를 제대로 유지하지 못하던 문제를 수정했습니다.
- TensorBoard 디렉터리를 동기화할 때 step 정보가 제대로 동기화되지 않던 문제를 수정했습니다.
- Python 2.7에서 일부 유니코드 관련 문제를 수정했습니다.
- ComplementNB에 대한
plot_calibration_curve버그를 수정했습니다. - 일부 Linux 시스템에서 SendFile을 사용하지 않도록 폴백했습니다.
- 콘솔에서 줄이 잘려 보이던 문제를 수정했습니다.
- 콘솔 로깅이 블로킹될 수 있던 콘솔 관련 문제를 수정했습니다.
기능 향상
- 선점형 스윕(preemptible sweeps)을 지원합니다.
- 스윕 제어를 위한 커맨드라인을 추가했습니다.
- 아티팩트 컬렉션 속성을 로드하는 기능을 추가했습니다.
버그 수정
- 장애 기간 동안 run들이 crashed 상태로 표시되던 남은 문제들을 찾아 수정했습니다.
define_metric, PyTorch Lightning, 그리고 설정을 자주 저장하는 경우에 대한 성능을 개선했습니다.- CUDA 텐서를 config 또는 summary에 로깅하려 할 때 발생하던 문제를 수정했습니다.
- graph 계산을 위해 torch의
backward_hooks의존성을 제거했습니다. - SageMaker에서 run을 재개하지 못하던 문제를 수정했습니다.
- wandb 사용 시 pdb가 안정적으로 동작하지 못하던 문제를 수정했습니다.
- 번들된 라이브러리에서 발생하던 사용 중단(deprecation) 경고를 수정했습니다(사용자 기여).
- 라이브러리가 실수로 콘솔에 로그를 출력하던 로깅 동작을 수정했습니다.
- 비활성화 모드에서 wandb 디렉터리와 로그 파일을 생성하지 않도록 수정했습니다.
- Tables 출시 준비를 위해 타입 이름을 변경했습니다.
기능 향상
- Public API에서 그룹 이름을 변경할 수 있도록 허용했습니다.
버그 수정
- 네트워크 처리 문제를 추가로 수정하여 run들이 crashed 상태로 표시되는 이슈를 해결했습니다(wandb sync로 복구 가능).
- 크래시된 프로세스의 리포팅과 로깅을 개선하기 위해 로깅 및 예외 처리를 개선했습니다.
버그 수정
- 네트워크 처리 문제를 수정하여 run들이 crashed 상태로 표시되던 이슈를 해결했습니다(wandb sync로 복구 가능).
- Dict 출력을 가진 모델을 지원하기 위해
register_full_backward_hook을 사용합니다. - 테이블 컬럼에 마침표 사용을 허용합니다.
- fork된 프로세스를 사용할 때 발생하던 아티팩트 캐시 충돌 문제를 수정했습니다.
- PyTorch Lightning 사용 시 커스텀 차트가 제대로 표시되지 않던 문제를 수정했습니다.
기능 향상
- 실험적인 증분 아티팩트(incremental artifact) 지원을 추가했습니다.
- 로깅에 속도 제한이 걸렸을 때 경고 메시지를 개선했습니다.
버그 수정
tensorboard_sync조건을 수정하여 짧은 run의 마지막 메트릭이 누락되던 문제를 해결했습니다.- TensorBoard 파일이 감지될 때
wandb sync동작 문제를 수정했습니다. - Databricks 노트북에서 API 키 프롬프트 문제를 수정했습니다.
기능 향상
- DSViz를 Keras WandbCallback에 통합했습니다.
- conda 의존성 지원을 추가했습니다(사용자 기여).
버그 수정
- 동기화가 중단되던 네트워크 처리 문제를 수정했습니다(wandb sync로 복구 가능).
- SageMaker와 Hugging Face 인테그레이션을 함께 사용할 때 발생하던 인증 문제를 수정했습니다.
- float가 아닌 값이 포함된 테이블에서 NaN 값 처리 문제를 수정했습니다.
- 모듈 로드 시 불필요한 파일 접근을 방지하기 위해 API 객체를 지연 로드하도록 했습니다.
기능 향상
- Public API history 접근자 사용 시 에러 메시지를 개선했습니다.
버그 수정
- 병렬 아티팩트 읽기를 사용할 때 발생할 수 있는 아티팩트 캐시 레이스 컨디션을 수정했습니다.
checksum=False일 때 아티팩트 참조를 수정했습니다.
개선 사항
- 사용자 지정 x축 등을 단순화하기 위해
run.define_metric()을 릴리스했습니다. wandb.Table()에 열 연산자add_column,get_column,get_index를 추가했습니다.
버그 수정
- stdout/stderr 콘솔 로깅에 대한 주요 수정 사항을 적용했습니다.
- policy=
live로 파일을 저장할 때 과도한 네트워크 사용을 방지했습니다. - 큰 업데이트를 전송하려 할 때 발생하던 오류를 수정했습니다 (
wandb sync에서 가장 자주 발생).
개선 사항
- 로그된 테이블에 대해
run_table아티팩트를 자동으로 생성합니다. - 아티팩트에 대괄호 표기법을 추가했습니다.
wandb login에서 서버 URL을 지정할 때 URL 검증을 개선했습니다.
버그 수정
- 로그된 아티팩트가
wait()이후에도 접근 가능하도록 수정했습니다. - spell.run 인테그레이션을 수정했습니다.
- 캐리지 리턴이 포함된 콘솔 로그 동기화 성능을 개선했습니다.
- 클래스 이름과 라벨이 없는 데이터가 섞인 혼동 행렬 문제를 수정했습니다.
개선 사항
- run을 생성하지 않고도 아티팩트를 저장할 수 있는 기능을 추가했습니다.
wandb.Table에 Foreign Table References를 추가했습니다.- 동일한 런타임 객체를 여러 아티팩트에 로그할 수 있도록 허용했습니다.
- 실험적인
run._define_metric()지원을 추가했습니다. - 지원되지 않는 멀티프로세스
wandb.log()호출에 대해 경고를 표시하고 무시하도록 했습니다.
버그 수정
- 0.10.x에서의 시스템 메트릭 로깅 속도를 수정했습니다.
Audio외부 참조 문제를 수정했습니다.tensorboard_sync를 사용하는 짧은 run에서 발생하던 문제를 수정했습니다.- 스윕 실행 시
wandb.init(id=)호출을 무시하도록 했습니다. - 필요한 경우 아티팩트 메타데이터를 정제(sanitize)합니다.
개선 사항
wandb sync --sync-tensorboard로 tfevents 동기화를 허용했습니다.
버그 수정
- 0.10.18 이후 발생한
artifact.get()회귀(regression)를 수정했습니다. - 0바이트 아티팩트를 허용합니다.
- 코드 저장 및 프로그램 이름 보고를 수정했습니다.
개선 사항
wandb.Object3D()에 glb 파일 지원을 추가했습니다.wandb.Audio()에 외부 참조 지원을 추가했습니다.- TensorBoard
pr_curves플러그인을 위한 사용자 지정 차트 지원을 추가했습니다. - 전체 코드 디렉터리를 아티팩트에 저장할 수 있도록 지원했습니다.
버그 수정
wandb.login()이 이제 비활성화 모드를 준수합니다.- Colab에서 TPU를 로그하려 할 때 발생하는 예외를 처리했습니다.
개선 사항
- 멀티프로세싱이 아닌 환경을 지원하기 위해
WANDB_START_METHOD=thread를 추가했습니다. - export API의 Run 객체에
group과job_type을 추가했습니다. - 아티팩트 독스트링(docstring)을 개선했습니다.
개선 사항
- Public API에 run 삭제 및 파일 삭제 기능을 추가했습니다.
tensorboard_sync와 wandb.log() history 간의 step을 맞췄습니다.- POSIX 시스템에서 fork를 사용할 수 있도록
WANDB_START_METHOD를 추가했습니다. allow_mixed_types를 사용하여 wandb.Table()에서 혼합 타입을 지원합니다.
버그 수정
- 로그가 제대로 닫히지 않아 파일이 누수될 수 있는 잠재적인 문제를 수정했습니다.
- 네트워크 문제를 더 잘 처리하고 오류를 리포트하도록
wandb verify를 개선했습니다. - 파일 시스템 캐시의 영향을 줄여 파일 다운로드 동작을 더 결정론적으로 만들었습니다.
버그 수정
- Python 3.5에서 발생한 회귀(regression) 문제를 수정했습니다.
- Mac에서 번들로 포함된 watchdog 경고가 표시되지 않도록 했습니다.
개선 사항
- Artifacts가 대규모 분산 워크플로를 위한 병렬 writer를 지원합니다.
- Artifacts가 데이터셋 시각화를 위한 분산 테이블을 지원합니다.
- PR 템플릿을 개선했습니다.
- 더 많은 타입 어노테이션을 추가했습니다.
- watchdog 0.9.0을 번들로 포함해 별도 의존성에서 제거했습니다.
- 새로운 문서 생성기를 도입했습니다.
- Public API에 서명된 URL의 리다이렉트를 피하기 위한
file.direct_url을 추가했습니다.
버그 수정
- 스윕을 실행할 때
config-defaults.yaml을 덮어쓸 수 있도록 허용했습니다. wandb verify에 대한 일반적인 버그 수정 및 개선을 수행했습니다.- Spyder IDE에서 위젯을 비활성화했습니다.
- Spyder IDE에서 WANDB_SILENT를 수정했습니다.
- file:// 아티팩트를 참조할 때
name속성을 준수하도록 했습니다.
개선 사항
- 로컬 설치 문제를 진단할 수 있도록
wandb verify를 추가했습니다.
버그 수정
- S3에 기록할 때 발생하는 tensorboard_sync 문제를 수정했습니다.
- git secrets가 저장되지 않도록 방지했습니다.
- moviepy 사용 시 자세한 콘솔 메시지를 비활성화했습니다.
- 파일을 덮어쓸 때 체크포인트가 있는 아티팩트가 더 견고하게 동작하도록 수정했습니다.
- 아티팩트 재사용 ID 문제를 수정했습니다.
개선 사항
- Artifacts에서 wandb.Audio를 지원하도록 추가했습니다.
버그 수정
- 0.10.13에서 도입된 wandb config 회귀 문제를 수정했습니다.
- 키에 슬래시가 포함된 미디어를 지원하던 변경 사항을 롤백했습니다.
개선 사항
- Mac M1 GPU 모니터링을 지원하도록 추가했습니다.
- TPU 모니터링을 지원하도록 추가했습니다.
- SageMaker 인테그레이션을 비활성화하는 설정을 추가했습니다.
버그 수정
- tensorboardX와 tf1에서 tensorboard_sync 문제를 수정했습니다.
- 슬래시가 포함된 이미지 로깅 문제를 수정했습니다.
- 커스텀 차트 관련 문제를 수정했습니다.
wandb pull사용 시 오류 메시지를 개선했습니다.wandb.Table()사용 시 오류 메시지를 개선했습니다.- silent 모드가 실제로 조용히 동작하도록 했습니다.
wandb online이 로깅을 다시 활성화하도록 수정했습니다.- 여러 아티팩트 관련 문제를 수정했습니다.
기능 개선
- Artifact.used_by 및 Artifact.logged_by 추가.
- 아티팩트를 로깅할 때 타입 일관성을 검증.
- 다운로드된 에셋이 필요 없도록 JoinedTable 개선.
- 의존 아티팩트를 재귀적으로 다운로드하는 기능 추가.
- Keras 및 TF2+에서 그래디언트 로깅 활성화.
- PyTorch 모델이 wandb.watch()에 전달되었는지 검증.
- public 메서드/객체에 대한 docstring 개선.
- 서로 다른 크기의 이미지 시퀀스를 로깅할 때 경고 표시.
버그 수정
- summary에서 잘못 생성되던 파일 이름 수정.
- 익명 모드에서 URL에 API 키가 포함되도록 수정.
- disabled 모드에서의 pickle 이슈 수정.
- from_id로 아티팩트를 조회하는 쿼리 수정.
- 서로 다른 이미지 경로를 가진 Tables 처리 방식 수정.
기능 개선
wandb disabled또는wandb.init(mode="disabled")로 wandb 로깅 비활성화.- wandb.Image()를 로깅할 때 아티팩트를 클론하는 기능 지원.
버그 수정
- 여러 미디어 아티팩트 개선 및 내부 리팩터링.
- 아티팩트 오류 처리 방식 개선.
- 노트북 이름이 무시되던 문제 수정.
- Jupyter 로깅을 위한 silent 모드 범위 확장.
- 번들된 라이브러리가 Python 경로에 간섭하던 문제 수정.
- 다양한 예외(0으로 나누기, int 변환, TypeError) 수정.
기능 개선
- 혼동 행렬(confusion matrix) 플롯 추가.
- wandb.init()/reinit/finish에서 더 나은 Jupyter 메시지 제공.
버그 수정
- fastai 2.1.5 지원을 위한 수정(log_args 제거).
- 디렉터리가 변경되었을 때 미디어 로깅 문제 수정.
기능 개선
- 아티팩트 미디어 로깅 추가(알파).
- 스크립트로 제어 가능한 알림(alerts) 추가.
- sweep 공개 API에 url 속성 추가.
- wandb SDK 함수에 대한 docstring 업데이트.
버그 수정
- 오프라인 모드에서 네트워크 연결이 발생하던 경우 수정.
- Python sweeps 및 run 중지 관련 이슈 수정.
- API 키가 실수로 표시될 수 있던 로깅 문제 수정.
- 호스트가 잘못 지정된 경우의 wandb 로그인 문제 수정.
- wandb.init() 없이도 wandb.restore()를 호출할 수 있도록 허용.
- 비어 있는 summary에서 재시작(run_id 재사용) 문제 수정.
- 아티팩트 다운로드 이슈 수정.
- 누락되어 있던 wandb.unwatch() 함수 추가.
- 불필요한 wandb 디렉터리가 생성되지 않도록 방지.
- 오래된 six 버전을 사용할 때 collections import 문제 수정.
기능 개선
- callable 객체를 직렬화할 수 있도록 허용.
버그 수정
- Python 3.9와의 호환성 문제 수정.
- 0.10.6에서 도입된
wandb sync실패 문제 수정. - 실패하는 run에 대한 Python 에이전트 처리 개선.
- 드물게 run 재시작이 동작하지 않던 조건 수정.
- 스레드 컨텍스트에서 호출될 때 symlink 처리 개선.
- wandb.init() 호출 전에 디렉터리를 변경할 때의 문제 수정.
버그 수정
- 로그인 후 Jupyter 환경에서도 코드 저장이 활성화되도록 했습니다.
- 대형 스윕 설정에 대해 스윕 에이전트의 타임아웃을 연장했습니다.
WANDB_SILENT환경 변수를 지원합니다.- 이미지를 로깅할 때 누락된 Python 패키지에 대해 경고합니다.
wandb.restore()가 diff 패치를 적용하도록 수정했습니다.- 아티팩트 오류 메시지를 개선했습니다.
config-defaults.yaml및 지정된 YAML 설정 파일 목록 로딩을 수정했습니다.
기능 개선
- 새로운 커스텀 플롯
wandb.plot.*을(를) 추가했습니다. - 새로운 Python 기반 스윕 에이전트
wandb.agent()를 추가했습니다.
버그 수정
- 콘솔 로그 수정(Windows에서의 tqdm, 종료 예외 수정).
- Run 객체에 더 많은 속성(group, job_type, urls)을 추가했습니다.
- SageMaker 로그인 문제를 수정했습니다.
- 플롯이 run 종료 시점까지 업로드되지 않던 문제를 수정했습니다.
기능 개선
- 0.10.0 이전 run 디렉터리를 동기화하려 할 때 경고를 추가했습니다.
- wandb run 동기화 정보에 대한 Jupyter 지원을 개선했습니다.
버그 수정
- 아티팩트 다운로드 문제를 수정했습니다.
tensorboard_sync관련 여러 문제를 수정했습니다.- Jupyter/Python 스윕 관련 여러 문제를 수정했습니다.
- 로그인이 타임아웃되던 문제를 수정했습니다.
- run을 재개(resume)할 때 설정(config)이 덮어써지던 문제를 수정했습니다.
- sacred observer를 0.10.x 릴리스로 포팅했습니다.
- 예측된 바운딩 박스가 정답 박스에 의해 덮어써지던 문제를 수정했습니다.
wandb.init()에 누락되어 있던save_code파라미터를 추가했습니다.
기능 개선
- API에
upload_file을 추가했습니다. wandb.finish()를 매칭되는wandb.init()없이도 호출할 수 있습니다.
버그 수정
- 파일이 잘못된 병렬 run으로 로깅되던 문제를 수정했습니다.
- 누락된 속성/메서드
as_dict(),sweep_id를 수정했습니다. wandb.summary.update()가 모든 키를 업데이트하지 않던 문제를 수정했습니다.- UI 설정에 따라 코드 저장이 제대로 활성화되지 않던 문제를 수정했습니다.
- TensorBoard가 프로그램 종료 전에 이미지를 로깅하도록 수정했습니다.
- 설정(config)과 summary 메트릭 관련 resume 문제를 수정했습니다.
기능 개선
- S3 및 GCS 파일을 처리하기 위한
sync_tensorboard기능을 추가했습니다. - 로그인 시 호스트를 지정할 수 있는 기능을 추가했습니다.
- 속성을 수정할 수 있도록 아티팩트 API를 개선했습니다.
버그 수정
- 서버 설정을 따르도록 코드 저장 동작을 수정했습니다.
- 제한된 네트워크에서
wandb.init()을 실행할 때의 문제를 수정했습니다. - 설정 변경을 무시하던 문제를 수정했습니다.
- 아티팩트 다운로드 문제를 수정했습니다.
기능 개선
- run 종료 시점에 히스토리 스파크라인을 추가했습니다.
- 아티팩트를 개선하고 링크를 위한 API를 추가했습니다.
- 오프라인 지원과 동기화를 개선했습니다.
- 테스트를 단순화하기 위한 기본 noop 모드를 지원하도록 했습니다.
- Windows/PyCharm 지원을 개선했습니다.
- Run 객체에 더 많은 수정 가능한 속성을 추가했습니다.
- Public API에서 과거 run에 아티팩트를 연결(attach)하는 기능을 지원합니다.
버그 수정
- 로직 단순화로 인해 다수의 버그가 수정되었습니다.
개선 사항
- wandb.sacred.WandbObserver에서 새로운 sacred observer를 사용할 수 있습니다.
- HTTP URL 아티팩트 참조 추적이 개선되었습니다.
버그 수정
- run을
summary_metrics대신summary로 쿼리할 때 의미 있는 오류 메시지를 출력합니다.
개선 사항
- 아티팩트의 하위 경로에서 이제 download()에 선택적인 루트 디렉터리 인자를 전달할 수 있습니다.
- Artifact.new_file이 선택적 mode 인자를 받도록 변경되었습니다.
- 이제 fastai v2와 함께 패키징되므로 기존 fastai 문서를 제거했습니다!
버그 수정
- yaml 파싱 오류 처리 로직을 수정했습니다.
- torch docstring의 잘못된 철자를 수정했습니다. 제보해 주신 @mkkb473님께 감사드립니다.
개선 사항
- sklearn 플롯에서 사용되지 않는 y_probas를 제거했습니다. 기여해 주신 @dreamflasher님께 감사드립니다.
- 아티팩트 삭제를 위한 새로운 API가 추가되었습니다.
버그 수정
- 로그인되어 있지 않을 때
wandb restore가 동작하지 않던 문제를 수정했습니다. - Windows에서 아티팩트 다운로드 경로를 수정했습니다.
- 업로드 시 408 오류가 발생하면 재시도하도록 했습니다.
- 마스크 숫자 타입 문제를 수정했습니다. 제보해 주신 @numpee님께 감사드립니다.
- 아티팩트 참조 이름이 뒤섞이던 문제를 수정했습니다.
개선 사항
- 기본 PyTorch 히스토그램 로깅 주기가 100 스텝에서 1000 스텝으로 변경되었습니다.
버그 수정
- 커맨드라인을 사용할 때 로그인 프롬프트가 여러 번 뜨던 문제를 수정했습니다.
- “no method rename_file” 오류를 수정했습니다.
- PyTorch에서 특수한 경우의 히스토그램 계산 문제를 수정했습니다.
- Jupyter에서 세션 히스토리를 저장할 때 발생하던 오류를 수정했습니다.
- Public API에서 아티팩트 메타데이터를 올바르게 반환하도록 수정했습니다.
- matplotlib / plotly 렌더링 오류를 수정했습니다.
개선 사항
- 새로운 아티팩트 CLI 커맨드가 추가되었습니다!
- 새로운 아티팩트 API 커맨드가 추가되었습니다!
- wandb sync에서 대용량 wandb-history.jsonl 파일 동기화가 개선되었습니다.
- 로컬 아티팩트 무결성을 보장하기 위한 새로운 Artifact.verify 메서드가 추가되었습니다.
- API 커맨드를 위한 테스트 하니스가 개선되었습니다.
- run 디렉터리 이름에 UTC 시간이 아닌 로컬 시간이 저장되도록 변경했습니다. 기여해 주신 @aiyolo님께 감사드립니다!
- 전반적으로 docstring이 개선되었습니다.
- Wandb.Table이 이제 테이블로 데이터프레임을 로깅하기 위한
dataframe인자를 지원합니다!
버그 수정
- Python 2에서 Artifacts가 동작하도록 수정했습니다.
- Windows에서 Artifacts 기본 다운로드 위치가 올바르게 동작하도록 수정했습니다.
- GCS 참조가 올바르게 캐시/다운로드되도록 수정했습니다. 제보해 주신 @yoks님께 감사드립니다!
- numpy 배열의 JSON 인코딩 문제를 수정했습니다.
- 문자열 비교 오류 메시지를 수정했습니다.
개선 사항
- 아티팩트 캐싱을 대폭 개편했습니다.
- 아티팩트를 위한 캐시 디렉터리를 설정할 수 있습니다.
- 아티팩트를 위한 다운로드 디렉터리를 설정할 수 있습니다.
- 로컬 아티팩트 무결성을 보장하기 위한 새로운 Artifact.verify 메서드가 추가되었습니다.
- use_artifact는 더 이상
type을 요구하지 않습니다. - 삭제된 아티팩트를 다시 커밋할 수 있게 되었습니다.
- Lidar 씬이 이제 벡터를 지원합니다.
버그 수정
- 아티팩트 다운로드가 오류를 반환하던 문제를 수정했습니다.
- 세그멘테이션 마스크가 non-uint8 데이터를 처리하도록 수정했습니다.
api.runs()의 경로 파싱 로직을 수정했습니다.
버그 수정
- 파일이 항상 프로젝트의 최신 run에 로깅되던 문제를 수정했습니다.
- 첫 번째
wandb.init호출 시 URL이 올바르게 표시되지 않던 문제를 수정했습니다.
버그 수정
- Jupyter에서 여러 번
init을 호출하는 경우를 처리하도록 수정했습니다. - 시그널을 캡처할 때 발생하는
ValueError예외를 처리하도록 했습니다. 감사합니다, @jsbroks. - wandb agent가 rate limiting을 올바르게 처리하도록 했습니다.
기능 개선
wandb.Artifact가 이제 일반적으로 사용 가능합니다!feature_importances가 이제 CatBoost를 지원합니다. 감사합니다, @neomatrix369.
버그 수정
- Jupyter 세션을 저장할 때 발생하는 모든 예외를 처리하도록 했습니다.
- TF >= 2.2에서
validation_data가 자동으로 설정되도록 했습니다. - TF >= 2.2에서 Keras 콜백에
_implements_*훅이 이제 구현되었습니다.
기능 개선
- 원시 소스 코드 저장이 기본적으로 비활성화되었습니다.
- 서버에서 코드 저장을 활성화할 수 있도록 부팅 시 글로벌 설정을 지원합니다.
- 코드 저장을 수동으로 활성화하기 위한 새로운
code_save=True인자가wandb.init에 추가되었습니다.
버그 수정
- 셀이 완료 시 멈추지 않도록 했습니다.
- PyCharm 셸에서 Jupyter 인테그레이션 문제를 수정했습니다.
- 세션 히스토리 저장이 출력의
None메타데이터를 처리하도록 했습니다.
기능 개선
- Jupyter 노트북에서 세션 히스토리를 저장하도록 했습니다.
- Kaggle 인터넷 활성화 알림을 추가했습니다.
wandb.plots.feature_importances가 더 많은 모델 타입에서 동작하도록 확장했습니다. 감사합니다, @neomatrix369!
버그 수정
- Jupyter 노트북에 대한 코드 저장 기능을 복원했습니다.
- Jupyter에서 스레드 관련 오류를 수정했습니다.
- Jupyter에서 마지막 히스토리 행이 누락되지 않도록 했습니다.
기능 개선
- 시맨틱 세그멘테이션을 위한 기본 클래스 레이블을 추가했습니다.
- 바운딩 박스 API를 시맨틱 세그멘테이션 API와 유사하게 개선했습니다.
버그 수정
- ROC/PR 커브 로깅을 개선하기 위해 미디어 테이블의 행 수를 늘렸습니다.
- 사전에 구간화된 히스토그램이 올바르게 처리되지 않던 문제를 수정했습니다.
- PyTorch 히스토그램에서
nan값을 처리하도록 했습니다. - 바이너리 이미지 마스크 처리 문제를 수정했습니다.
기능 개선
- 모든 열린 파일을 닫아
ResourceWarning을 피하도록 했습니다. 감사합니다, @CrafterKolyan!
버그 수정
- “tensor” 프로토버퍼를 파싱하여 TensorBoard 2.1에서의 동기화 문제를 수정했습니다.
기능 개선
- wandb.plots에 ROC, precision_recall, HeatMap, explainText, POS, NER를 추가했습니다.
- wandb.Molecule() 로깅을 추가했습니다.
- Kaggle run의 메트릭을 수집하도록 했습니다.
- run 객체에서 watch를 호출할 수 있는 기능을 추가했습니다.
버그 수정
- 전역 디버깅 로그를 실수로 수집하지 않도록 했습니다.
기능 개선
- 바운딩 박스 어노테이션을 개선했습니다.
- 활성 GPU 시스템 메트릭을 로깅합니다.
- wandb init이 호출된 경우에만 wandb/settings 파일을 작성하도록 했습니다.
- wandb local 명령을 개선했습니다.
버그 수정
- 전력 메트릭이 없는 일부 디바이스에서 GPU 로깅 문제를 수정했습니다.
- 스윕 구성 명령 처리 방식을 수정했습니다.
- TensorFlow 문자열 로깅을 수정했습니다.
기능 개선
- 메인 파이썬 모듈의 코드 저장 기능을 추가했습니다.
- 바운딩 박스 및 세그멘테이션 마스크에 대한 메타데이터를 지정할 수 있는 기능을 추가했습니다.
버그 수정
- wandb.log()에서 커밋되지 않은 데이터가 유지되지 않는 상황을 수정했습니다.
기능 개선
- Keras 콜백과 함께 run 요약에 최상의 메트릭과 에포크를 추가했습니다.
- 피클링된 설정이 필요한 환경을 위해 wandb.run.config_static을 추가했습니다.
버그 수정
- wandb.watch()와 DataParallel 사용 시 실패를 일으키던 회귀(regression) 문제를 수정했습니다.
- Python 3.8과의 호환성을 개선했습니다.
- Windows에서의 모델 로깅을 수정했습니다.
버그 수정
- 노트북에서 wandb.watch()를 사용할 때 발생하는 예외를 수정했습니다.
- GPU에서 희소 텐서의 그래디언트 로깅 지원을 개선했습니다.
기능 개선
- scikit-learn 지원을 추가했습니다.
- wandb.config를 빌드할 때 특정 키를 지정하거나 제외할 수 있는 기능을 추가했습니다.
버그 수정
- 희소 텐서에서 wandb.watch() 문제를 수정했습니다.
- ray 0.8.1과의 비호환성을 수정했습니다.
- 누락된 pyyaml 의존성을 추가했습니다.
- “W&B process failed to launch” 문제를 수정했습니다.
- 큰 모델 그래프와 플롯을 로깅하는 기능을 개선했습니다.
기능 개선
- 스윕 구성에서 에이전트 커맨드 라인을 설정할 수 있는 기능을 추가했습니다.
버그 수정
- fast.ai 예측 로깅을 수정했습니다.
- 즉시 실행(eager) TensorFlow 텐서 로깅을 수정했습니다.
- 노트북 이름 로깅 및 wandb.watch()와 관련된 Jupyter 문제를 수정했습니다.
개선 사항
- 스윕을 실행할 때 wandb.init()에서 지정한 프로젝트와 엔티티를 무시하도록 했습니다.
버그 수정
- 에이전트 “flapping” 감지를 수정했습니다.
- 스윕이 보류 중일 때 로컬 컨트롤러가 시작되지 않던 문제를 수정했습니다.
개선 사항
- LightGBM 지원을 추가했습니다.
- 로컬 보드 지원(실험적)을 추가했습니다.
- 스윕 설정을 수정할 수 있는 기능을 추가했습니다.
- 시스템 메트릭에 GPU 전력 로깅을 추가했습니다.
버그 수정
- 설정이 잘못되었을 때 스윕 에이전트가 계속해서 실패하지 않도록 했습니다.
개선 사항
- ray/tune hyperopt 검색 전략에 대한 베타 지원을 추가했습니다.
- 에이전트별 최대 run 수를 지정할 수 있는 기능을 추가했습니다.
- 미리 프로젝트를 생성하지 않고도 스윕을 시작하는 경험을 개선했습니다.
버그 수정
- 반복된 wandb.Api().Run(id).scan_history() 호출에서 최신 데이터를 가져오도록 수정했습니다.
- notebook/python 환경에서 early_terminate/hyperband 문제를 수정했습니다.
개선 사항
- 메트릭의 하위 구간을 가져오기 위해 run.scan_history에 min_step과 max_step을 추가했습니다.
- 프로세스당 여러 run을 더 잘 지원하기 위해 이제 wandb.init(reinit=True)가 자동으로 wandb.join()을 호출합니다.
버그 수정
- TensorFlow 2.0에서 wandb.init(sync_tensorboard=True)가 다시 동작하도록 수정했습니다.
개선 사항
- 문자열로 전달되는 태그를 처리하도록 했습니다.
버그 수정
- 설치 오류를 수정하기 위해 graphql-core < 3.0.0으로 고정했습니다.
- TQDM 진행률 표시줄이 로그를 올바르게 업데이트하도록 수정했습니다.
- 크기가 너무 큰 summary 또는 history 로그는 이제 드롭되어 재시도 시 중단 상태에 빠지지 않도록 했습니다.
버그 수정
- 0.8.13 이후 일부 버전의 TensorBoard 동기화 회귀 문제를 수정했습니다.
- Jupyter에서 발생하던 네트워크 오류를 수정했습니다.
버그 수정
- Jupyter에서 sync_tensorboard와 함께 wandb.init을 여러 번 호출할 때의 문제를 수정했습니다.
- 스레드를 사용하고 wandb.log를 호출할 때 발생하던 RuntimeError 경쟁 상태를 수정했습니다.
- 오류 보고가 비활성화된 경우 Sentry를 초기화하지 않도록 했습니다.
개선 사항
- wandb.sweep() 공개 API 객체에 best_run()을 추가했습니다.
- 공개 API에서 wandb.config 객체의 내부 추적 키를 제거했습니다.
버그 수정
- 값이 최대 크기에 도달했을 때 표시되는 대용량 객체 경고를 개선했습니다.
- wandb.save에 문자열이 전달되지 않을 경우 경고를 표시합니다.
- 0.8.12에서 회귀가 발생한 이후로 동작하지 않던 UI의 run 중지 기능이 다시 작동합니다.
- 로컬에 이미 존재하는 파일도 정상적으로 복원됩니다.
- 0.8.10부터 일부 키가 잘못된 step에 기록되던 TensorBoard 문제를 수정했습니다.
- Wandb.Video가 잘못 float로 변환하던 동작을 수정하고 이제 uint8만 허용합니다.
- SageMaker 환경 감지가 더 견고해졌습니다.
- 재개(resume) 시 config가 올바르게 채워집니다.
- run.dir이 설정된 경우 Wandb.restore가 root를 준수합니다(#658).
- wandb.watch를 여러 번 호출해도 히스토그램과 그래프에 올바르게 네임스페이스를 적용합니다.
개선 사항
- Sweeps가 이제 Windows에서도 동작합니다!
- public api에 Run에 대한 sweep 속성을 추가했습니다.
- Jupyter와 터미널 출력에 sweep 링크를 추가했습니다.
- TensorBoard 로깅이 과거 결과를 가져올 때 올바른 타임스탬프를 저장합니다.
- TensorBoard 로깅이 이제 rate_limits 설정과 이벤트 타입 필터링을 지원합니다.
- stdout에 파일 디스크립터가 없을 때는 단순 출력 방식을 사용해 출력 내용을 미러링합니다.
- 로컬 디렉터리에 쓸 수 없는 경우 시스템 임시 디렉터리에 wandb 메타 파일을 기록합니다.
- public API에 beta api.reports를 추가했습니다.
- pytorch 모델에서 훅을 제거하기 위한 wandb.unwatch를 추가했습니다.
- 사용된 프레임워크를 config._wandb에 저장합니다.
버그 수정
- TensorBoard 네임스페이스에서 비디오를 로깅할 때 중첩 디렉터리를 생성합니다.
- wandb.log에서
async=True를 사용할 때 발생하던 레이스 컨디션을 수정했습니다. - Run.summary가 올바른 사전처럼 동작합니다.
- Run.summary 하위 사전들이 올바르게 렌더링됩니다.
- 세그멘테이션 마스크에 class_colors를 전달할 때 None을 처리합니다.
- tensorflow2에 SessionHook이 없는 경우를 처리합니다.
- Windows에서 인자를 올바르게 이스케이프합니다.
- 익명 모드에서 로그인이 멈추던 문제를 수정했습니다.
- Tf2 keras 패치가 누락된 callbacks 인자를 처리하도록 수정했습니다.
개선 사항
- /docs의 docstring에서 자동 생성되는 문서를 업데이트했습니다.
- Wandb.init(config=config_dict)는 sweep에서 지정한 파라미터를 변경하지 않습니다.
- Wandb.config 객체에 setdefaults 메서드를 추가해 스윕 지원을 개선했습니다.
- 이모지를 포함한 터미널 및 Jupyter 메시지를 개선했습니다!
- 서로 다른 모델에 대해 wandb.watch를 여러 번 호출할 수 있습니다.
- 여러 tfevent 파일을 감시하는 기능에 대한 지원을 개선했습니다.
- Windows에서 더 이상
wandb run이 필요 없으며, 이제python script_name.py만 실행하면 됩니다. wandb agent가 이제 Windows에서 동작합니다.- wandb.log를 사전 없이 호출했을 때 더 친절한 오류 메시지를 제공합니다.
- Keras 콜백에 메트릭을 N개 배치마다 로깅하기 위한 새로운
log_batch_frequency를 추가했습니다.
버그 수정
- Python 2.7 및 오래된 pip 의존성과의 호환성 문제를 수정했습니다.
개선 사항
- 새 계정을 생성하고 api_key를 입력하는 온보딩 플로우를 개선했습니다.
버그 수정
- config 값이 0 또는 False일 때 public api가 잘못된 데이터를 반환하던 문제를 수정했습니다.
- 재개된 run이 더 이상 run id로 run 이름을 덮어쓰지 않습니다.
개선 사항
- config에 spell.run id 기록을 추가했습니다.
버그 수정
- Wandb 매직이 tf.keras와 keras가 모두 로드된 경우를 처리합니다.
- 여러 로거의 global_step이 달라도 TensorBoard 로깅에서 step이 누락되지 않습니다.
- 최신 tf.keras에서 Keras 그래디언트 로깅이 동작합니다.
- TensorFlow 2에서 Keras의 validation_data가 올바르게 설정됩니다.
- @chmod644 덕분에 wandb pull 명령이 디렉터리가 없으면 생성합니다.
- 파일 업로드 배치는 이제 최소 크기를 검사합니다.
- Sweeps가 다시 Python 2에서 동작합니다.
- Scan_history가 전체 포인트 집합을 순회합니다.
- 자격 증명을 얻을 수 없는 경우 Jupyter가 로컬 모드로 실행됩니다.
기능 향상
- 이제 Sweeps를 Jupyter 노트북 내부에서나 순수 Python 코드에서 직접 실행할 수 있습니다! https://docs.wandb.com/sweeps/python.
- 새로운 OpenAI Gym 인테그레이션이 비디오를 자동으로 로깅하며, wandb.init의 monitor_gym 키워드 인자로 활성화할 수 있습니다.
- wandb.ray.WandbLogger에 Ray Tune 로깅 콜백이 추가되었습니다.
- 전역 설정을 위한 새로운 전역 설정 파일이 ~/.config/wandb에 추가되었습니다.
- fastai용 테스트를 추가했습니다(@borisdayma께 감사).
- Public API 성능이 개선되었습니다.
- 일관성을 위해 Public API에서 username을 entity로 대체했습니다.
- 익명 로그인 지원이 기본적으로 활성화되었습니다.
- Jupyter에서 익명 로그인을 사용할 수 있는 새로운 wandb.login 메서드가 추가되었습니다.
- 데이터 프레임 관련 의존성 오류 메시지가 더 명확해졌습니다.
- Spell.run과의 초기 인테그레이션이 추가되었습니다.
- JPEG 아티팩트를 피하기 위해 모든 이미지를 이제 PNG로 렌더링합니다.
- Public API에 projects 필드가 추가되었습니다.
버그 수정
- log가 호출되기 전에 Run.summary 업데이트가 Jupyter에서 동작합니다.
- NumPy 설치를 필수로 요구하지 않습니다.
- summary에서 중첩 키를 설정하는 기능이 동작합니다.
- 중첩 디렉터리의 노트북이 올바르게 저장됩니다.
- 404에 대해 재시도하지 않으며, 서버에서 더 명확한 오류 메시지를 제공합니다.
- Public API에서 경로를 로드할 때 선행 슬래시를 제거합니다.
기능 향상
- 작은 파일을 gzipped tarball로 배치 업로드합니다.
- TensorBoardX GIF를 wandb에 로깅합니다.
버그 수정
- Wandb.init이 시작 시 네트워크 오류를 올바르게 처리합니다.
- Keras 콜백은 data_type 또는 input_type이 설정된 경우에만 예제를 로깅합니다.
- 특정 엣지 케이스의 PyTorch 모델 로깅 버그를 수정했습니다.
- Jupyter에서 TensorBoard를 여러 번 패치하는 경우를 처리합니다.
- Sweep이 run 디렉터리에서 config.yaml을 가져옵니다.
- 데이터 프레임이 정수 라벨을 처리합니다.
- Jupyter 서버를 쿼리할 때 잘못된 JSON을 처리합니다.
기능 향상
- fastai 예제 로깅 시 고정 시드를 사용합니다.
- fastai 콜백의 최대 이미지 개수를 늘렸습니다.
- 비디오 로깅을 위한 새로운 wandb.Video 태그가 추가되었습니다.
- wandb.log의 Sync=False 인자가 로깅을 별도 스레드에서 수행하도록 합니다.
- 커스텀 검색 로직을 위한 새로운 로컬 sweep 컨트롤러가 추가되었습니다.
- 온보딩을 더 쉽게 하기 위해 익명 로그인 지원을 추가했습니다.
- Jupyter에서 wandb.init을 여러 번 호출해도 오류가 발생하지 않습니다.
버그 수정
- Keras 콜백이 더 이상 2D 데이터의 input_type을 추측하지 않습니다.
- Wandb.Image가 높이가 1px인 이미지를 처리합니다.
기능 향상
- Wandb Public API에 모든 history 행을 반환하는
run.scan_history가 추가되었습니다. - init 호출 이전에 Wandb.config를 사용하면 유용한 오류 메시지를 출력합니다.
- init 호출 이전에 Wandb.summary를 사용하면 유용한 오류 메시지를 출력합니다.
- Filestream API가 백엔드의 새로운 URL을 가리키도록 변경되었습니다.
버그 수정
- Fastai 콜백이
val_loss를 가정하는 대신 기본 모니터를 사용합니다. - 노트북 인트로스펙션이 에러 케이스를 처리하고, 실패 시 스택트레이스를 출력하지 않습니다.
- name을 설정할 때 description 경고를 출력하지 않습니다.
- Keras 콜백에서 발생하던 데이터프레임 로깅 오류를 수정했습니다.
- run 재개 시 로그의 라인 오프셋 문제를 수정했습니다.
- Wandb.config가 YAML로 기록하기 전에 non-builtin 타입을 캐스팅합니다.
- 설치 시 누락된 패키지 문제를 해결하기 위해 backports.tempfile을 벤더링했습니다.
기능 개선
- Sweeps를 쿼리하기 위한 Python export API에
api.sweep를 추가했습니다. - 노트북 이름을 추론할 수 없는 경우를 대비해 노트북 이름을 지정하는
WANDB_NOTEBOOK_NAME를 추가했습니다. - 호스트 이름을 오버라이드하기 위한
WANDB_HOST를 추가했습니다. - run이 Jupyter 내에서 실행되었는지 여부를 저장합니다.
- 이제 Wandb에서 웹 UI를 통해 run을 중지할 수 있습니다.
wandb.log에 step 인자로 전달된 float 값을 처리합니다.- Wandb.config가 전체 유니코드를 지원합니다.
- 코드 저장이 활성화되어 있고 git에서 추적하지 않는 경우, 메인 파일을 wandb에 동기화합니다.
- XGBoost 콜백: wandb.xgboost.wandb_callback().
버그 수정
- 큰 numpy 배열이 포함된 plotly 차트가 렌더링되지 않던 문제를 수정했습니다.
wandb docker가 nvidia가 존재할 때도 정상적으로 동작합니다.- 문자열이 아닌 키가 log로 전송될 때 더 나은 에러를 표시합니다.
- AMI 설치 문제를 해결하기 위해 pyyaml 의존성을 완화했습니다.
- Jupyter 노트북에서 magic 기능이 동작합니다.
기능 개선
- Keras용 auto-dataframes 프리뷰 릴리스를 추가했습니다.
- 더 간단한 config를 위해 Keras 콜백에 input_type과 output_type을 추가했습니다.
- Public API가 특정 키와 커스텀 xaxis 조회를 지원합니다.
버그 수정
- 파일 최종 스캔 시 WANDB_IGNORE_GLOBS가 올바르게 적용됩니다.
- 모든 API에서 run.id, run.name, run.notes를 통합했습니다.
- pseudo tty를 설정할 때 비표준 터미널 크기를 처리합니다.
- Jupyter 노트북 인트로스펙션 로직을 수정했습니다.
- Run.summary.update()가 변경 사항을 서버에 영구 반영합니다.
- TensorBoard 동기화가 잘못된 히스토그램과 잘린 파일에 대해서도 견고하게 동작합니다.
기능 개선
- magic 프리뷰 릴리스: wandb.init(magic=True)를 호출하면 가능할 때 자동으로 config와 메트릭을 추적합니다.
- CLI가 이제 백엔드의 로컬 설치를 지원합니다.
- Fastai 콜백이 예시 이미지를 로깅하는 기능을 지원합니다.
버그 수정
- Windows에서 이미지 로깅이 동작합니다.
- Wandb sync가 단일 타임스텝만 있는 tfevents를 처리합니다.
- 실행 중인 run에 대한 개요 페이지에서 잘못된 명령을 수정했습니다.
- TensorBoard를 스트리밍할 때 512개를 초과하는 bin을 가진 히스토그램을 처리합니다.
- 디렉터리가 아닌 파일에 대해 wandb sync를 호출했을 때 더 나은 에러 메시지를 제공합니다.
기능 개선
- 스윕에서 하이퍼파라미터를 처리하기 위한 새로운 헬퍼 함수
wandb.config.user_items()를 추가했습니다. - 테스트 향상을 위한 더 나은 모킹(mocking)을 도입했습니다.
버그 수정
- 서버에서 쿼리할 때
wandb.run에 Entity가 유지됩니다. - 동기화를 피하기 위해 임시 파일은 항상 임시 디렉터리를 사용합니다.
- 업로드 중 파일 크기가 줄어들면 에러를 발생시킵니다.
- Windows에서 이미지가 올바르게 로그됩니다.
- CVE를 해결하기 위해 pyyaml 요구 버전을 상향했습니다.
- 메모리 누수를 방지하기 위해 행 이력을 더 이상 저장하지 않습니다.
개선 사항
- Summary가 새로운 데이터프레임 형식을 지원합니다.
- WANDB_SILENT 환경 변수는 모든 wandb 메시지를 debug.log에 기록합니다.
- Windows 및 TensorBoard 로깅의 에러 메시지를 개선했습니다.
- 각 run이 끝날 때 Output.log가 업로드됩니다.
- run 시작 시 메타데이터, requirements, 패치가 업로드됩니다.
- git 저장소가 아닌 곳에서 실행할 때 메인 Python 파일을 저장합니다.
- diff 및 코드 저장을 막기 위해 WANDB_DISABLE_CODE를 추가했습니다.
- Jupyter에서 실행할 때 노트북 이름을 저장합니다.
- Colab 자동 로그인 기능을 지원합니다.
- Colab 노트북의 URL을 저장합니다.
- 이 라이브러리의 버전을 config에 저장합니다.
- sys.executable을 메타데이터에 저장합니다.
- fastai 콜백이 더 이상 path를 요구하지 않습니다.
- Wandb.init이 이제 notes 인자를 허용합니다.
- CLI에서 message 인자를 notes와 name으로 대체했습니다.
버그 수정
- Wandb sync가 TensorBoard embeddings를 처리합니다.
- Wandb sync가 TensorBoard의 이미지를 올바르게 처리합니다.
- Tf.keras가 단일 입력 functional 모델을 올바르게 처리합니다.
- Wandb.Api().runs는 재사용 가능한 이터레이터를 반환합니다.
- 숨김 디렉터리 안의 WANDB_DIR이 동기화를 방해하지 않습니다.
- Run.files()가 모든 파일을 순회합니다.
- Pytorch recursion too deep 에러를 수정했습니다.
개선 사항
- Wandb sync가 파일을 건너뛰기 위한 glob 패턴과 함께 —ignore 인자를 허용합니다.
- Run.summary에 모든 키를 순회할 수 있는 items() 메서드가 추가되었습니다.
버그 수정
- 액세스 거부 시 더 나은 에러 메시지를 제공합니다.
- 선택적 패키지가 설치되어 있지 않을 때 더 나은 에러 메시지를 제공합니다.
- 터미널에 출력되는 URL이 URL 이스케이프 처리됩니다.
- 네임스페이스된 TensorBoard 이벤트가 히스토그램과 함께 동작합니다.
- Public API가 실패 시 재시도하고 커넥션 풀을 재사용합니다.
- 원격이 origin으로 push되지 않았을 때 git 에러를 포착합니다.
- 빌드되지 않은 모델을 처리하기 위해 Keras graph 수집을 on_train_begin으로 이동했습니다.
- 가중치를 저장할 수 없는 더 많은 경우를 처리합니다.
- 재개 후 summary 업데이트가 유지됩니다.
- PyTorch histc 로깅이 0.4.1에서 수정되었습니다.
wandb syncTensorBoard import 문제를 수정했습니다.
개선 사항
- Wandb.init(tensorboard=True)가 TensorFlow 2 및 Eager Execution과 함께 동작합니다.
- Wandb.init(tensorboard=True)가 이제 tb-nightly 및 PyTorch와 함께 동작합니다.
- 누락된 validation_data를 추가하여 tf.keras 예제를 자동으로 로그합니다.
- 보안을 개선하고 macOS에서 방화벽 경고를 방지하기 위해 소켓이 localhost에만 바인드됩니다.
- 소스 사용자를 가져오기 위한 user 객체를 Public API에 추가했습니다.
- Public API에 run.display_name을 추가했습니다.
- 콘솔 출력에 display name을 표시합니다.
wandb run에 —tags, —job_group, —job_type을 추가했습니다.- 크래시로 간주하기 전 최소 실행 시간을 지정하는 환경 변수를 추가했습니다.
- CI에 flake8 테스트를 추가했습니다(@cclauss님께 감사!).
버그 수정
- Wandb-docker-run이 이미지 다이제스트를 허용합니다.
- Keras 콜백이 tensorflow2-alpha0에서 동작합니다.
- Keras 모델 그래프가 이제 입력 레이어를 먼저 배치합니다.
개선 사항
- PyTorch에 그래디언트와 가중치에 대한 로그 주기를 추가했습니다.
- PyTorch 로깅 성능을 개선했습니다.
- Wandb.init이 run 이름 지정을 위한 name 파라미터를 허용합니다.
- Wandb.run.name이 커스텀 display name을 반영합니다.
- 중첩된 summary 값 처리가 개선되었습니다.
- wandb.Table.add_row는 더 이상 사용되지 않으며 wandb.Table.add_data를 권장합니다.
- fast.ai 콜백에 대한 초기 지원이 추가되었습니다(@borisdayma님께 감사!).
버그 수정
- Run.get_url이 엔티티를 지정하지 않은 경우 기본 엔티티를 자동으로 사용합니다.
- wandb restore가 슬래시만 있는 run 경로를 허용합니다.
- PyYaml 사용 중단(deprecation) 경고를 수정했습니다.
- 매니페스트에 entrypoint 셸 스크립트를 추가했습니다.
- CUDA 버전에서 개행 문자를 제거했습니다.
버그 수정
- 대소문자를 구분하지 않는 Docker 자격 증명 정보를 처리하도록 했습니다.
- 프라이빗 클라우드 로그인 플로우의 app_url을 수정했습니다.
- sweep 에이전트를 시작할 때 404 응답에 대해서는 재시도하지 않도록 했습니다.
버그 수정
- DNS 조회 실패가 시작을 막지 못하도록 했습니다.
- 디버그 로깅을 중앙화했습니다.
- wandb agent가 SIGINT를 보낸 후 SIGKILL을 보내기까지 더 오래 기다리도록 했습니다.
기능 개선
- WANDB_DOCKER 환경 변수를 통해 Docker 이미지를 로깅하는 기능을 지원합니다.
- Kubernetes에서 실행될 때 WANDB_DOCKER가 자동으로 설정됩니다.
- 환경 변수를 자동으로 설정하고 코드를 마운트하는 새로운 wandb-docker-run 명령을 추가했습니다.
- wandb.restore가 Docker로 실행된 run을 Docker로 다시 실행하는 것을 지원합니다.
- Python 패키지가 이제 requirements.txt 파일에 기록 및 저장됩니다.
- cpu_count, gpu_count, gpu, os, python 버전이 wandb-metadata.json에 저장됩니다.
- export API가 이제 username/project:run_id와 같은 Docker 스타일 경로를 지원합니다.
- 처음 사용하는 사용자에게 더 나은 메시지와 로그인 정보를 제공합니다.
버그 수정
- Jupyter 로깅 문제를 수정했으며, 로거 레벨을 변경하지 않습니다.
- Jupyter에서 재개(resume) 기능을 수정했습니다.
기능 개선
- wandb에 로그인하지 않은 사용자에게도 Wandb.init이 정상적으로 동작하도록 개선했습니다.
- 머신에서 로그인이 되어 있어야만 하도록 Wandb.init에 force 플래그를 추가했습니다.
- 활성화된 경우 TensorBoard 및 TensorBoardX 로깅이 자동으로 계측되도록 했습니다.
- 로깅을 위해 TensorBoard를 패치하는 tensorboard 옵션을 Wandb.init에 추가했습니다.
- Wandb.save가 이제 하위 디렉터리의 파일에 대한 기본 경로를 인수로 받을 수 있습니다.
- Wandb.tensorflow 및 Wandb.tensorboard를 이제 직접 임포트하지 않고도 사용할 수 있습니다.
wandb sync가 이제 wandb run 디렉터리를 탐색하여 모든 run을 동기화합니다.
버그 수정
- Jupyter 로깅 문제를 수정했으며, 로거 레벨을 변경하지 않습니다.
- Jupyter에서 재개(resume) 기능을 수정했습니다.
기능 개선
- wandb에 로그인하지 않은 사용자에게도 Wandb.init이 정상적으로 동작하도록 개선했습니다.
- 머신에서 로그인이 되어 있어야만 하도록 Wandb.init에 force 플래그를 추가했습니다.
- 활성화된 경우 TensorBoard 및 TensorBoardX 로깅이 자동으로 계측되도록 했습니다.
- 로깅을 위해 TensorBoard를 패치하는 tensorboard 옵션을 Wandb.init에 추가했습니다.
- Wandb.save가 이제 하위 디렉터리의 파일에 대한 기본 경로를 인수로 받을 수 있습니다.
- Wandb.tensorflow 및 Wandb.tensorboard를 이제 직접 임포트하지 않고도 사용할 수 있습니다.
wandb sync가 이제 wandb run 디렉터리를 탐색하여 모든 run을 동기화합니다.
버그 수정
- Jupyter 로깅 문제를 수정했으며, 로거 레벨을 변경하지 않습니다.
- Jupyter에서 재개(resume) 기능을 수정했습니다.
기능 개선
- wandb에 로그인하지 않은 사용자에게도 Wandb.init이 정상적으로 동작하도록 개선했습니다.
- 머신에서 로그인이 되어 있어야만 하도록 Wandb.init에 force 플래그를 추가했습니다.
- 활성화된 경우 TensorBoard 및 TensorBoardX 로깅이 자동으로 계측되도록 했습니다.
- 로깅을 위해 TensorBoard를 패치하는 tensorboard 옵션을 Wandb.init에 추가했습니다.
- Wandb.save가 이제 하위 디렉터리의 파일에 대한 기본 경로를 인수로 받을 수 있습니다.
- Wandb.tensorflow 및 Wandb.tensorboard를 이제 직접 임포트하지 않고도 사용할 수 있습니다.
wandb sync가 이제 wandb run 디렉터리를 탐색하여 모든 run을 동기화합니다.
버그 수정
- Jupyter 로깅 문제를 수정했으며, 로거 레벨을 변경하지 않습니다.
- Jupyter에서 재개(resume) 기능을 수정했습니다.
기능 개선
- wandb에 로그인하지 않은 사용자에게도 wandb.init이 정상적으로 동작하도록 개선했습니다.
- 머신에서 로그인이 되어 있어야만 하도록 wandb.init에 force 플래그를 추가했습니다.
- 활성화된 경우 TensorBoard 및 TensorBoardX 로깅이 자동으로 계측되도록 했습니다.
- 로깅을 위해 TensorBoard를 패치하는 tensorboard 옵션을 wandb.init에 추가했습니다.
- wandb.save가 이제 하위 디렉터리의 파일에 대한 기본 경로를 인수로 받을 수 있습니다.
- wandb.tensorflow 및 wandb.tensorboard를 이제 직접 임포트하지 않고도 사용할 수 있습니다.
wandb sync가 이제 wandb run 디렉터리를 탐색하여 모든 run을 동기화합니다.
버그 수정
- Jupyter 로깅을 수정하여 로거 레벨이 변경되지 않도록 함.
- Jupyter에서 재개(resume) 기능을 수정함.
개선 사항
- wandb에 로그인하지 않은 사용자라도 Wandb.init이 문제 없이 동작하도록 개선함.
- 머신이 로그인되어 있어야만 하도록 Wandb.init에 force 플래그를 추가함.
- 활성화되었을 때 Tensorboard 및 TensorboardX 로깅이 자동으로 계측되도록 함.
- 로깅을 위해 tensorboard를 패치하는 tensorboard 옵션을 Wandb.init에 추가함.
- Wandb.save가 이제 하위 디렉터리의 파일에 대한 기본 경로를 받을 수 있도록 처리함.
- Wandb.tensorflow와 wandb.tensorboard에 직접 임포트하지 않고도 접근할 수 있게 함.
wandb sync가 이제 wandb run 디렉터리를 순회하며 모든 run을 동기화함.
버그 수정
- Jupyter 로깅을 수정하여 로거 레벨이 변경되지 않도록 함.
- Jupyter에서 재개(resume) 기능을 수정함.
개선 사항
- wandb에 로그인하지 않은 사용자라도 Wandb.init이 문제 없이 동작하도록 개선함.
- 머신이 로그인되어 있어야만 하도록 Wandb.init에 force 플래그를 추가함.
- 활성화되었을 때 Tensorboard 및 TensorboardX 로깅이 자동으로 계측되도록 함.
- 로깅을 위해 tensorboard를 패치하는 tensorboard 옵션을 Wandb.init에 추가함.
- Wandb.save가 이제 하위 디렉터리의 파일에 대한 기본 경로를 받을 수 있도록 처리함.
- Wandb.tensorflow와 wandb.tensorboard에 직접 임포트하지 않고도 접근할 수 있게 함.
wandb sync가 이제 wandb run 디렉터리를 순회하며 모든 run을 동기화함.
버그 수정
- Jupyter에서 커널 재시작 시 재개가 제대로 동작하도록 수정했습니다.
- Wandb.save가 파일 크기 증가 여부와 상관없이 항상 파일이 업로드되도록 보장합니다.
기능 향상
- 자동 재개를 위한 replace=True 키워드를 init에 추가했습니다.
- 재개 여부를 감지하는 데 사용할 수 있는 새로운 run.resumed 속성을 추가했습니다.
- 재개 시 초기 에포크를 설정하는 데 사용할 수 있는 새로운 run.step 속성을 추가했습니다.
- Keras 콜백이 성능이 향상될 때마다 최적의 모델을 저장하도록 했습니다.
버그 수정
- 정말로 numpy를 요구하지 않도록 했습니다.
- wandb.init 전에 wandb.log가 호출된 경우 더 나은 오류 메시지를 제공합니다.
- wandb.watch를 여러 번 호출하지 못하게 했습니다.
- 로그 / plotly에서 datetime 속성을 처리합니다.
기능 향상
- 스윕에 environment를 추가했습니다.
- 공개 API와 wandb.init에서 태깅을 활성화했습니다.
- 임의의 HTML을 로깅하기 위한 새로운 미디어 타입 wandb.Html을 추가했습니다.
- 커스텀 인테그레이션을 위한 Public api.create_run 메서드를 추가했습니다.
- wandb.save에 glob 지원을 추가하여, 파일이 기록되는 대로 저장되도록 했습니다.
- 재개 시 파일을 가져오기 위한 wandb.restore를 추가했습니다.
버그 수정
- 큰 리포지토리에서 diff를 생성할 때 타임아웃을 추가했습니다.
- 파일 동기화가 멈출 수 있는 엣지 케이스를 수정했습니다.
- 종료 전에 모든 파일 변경 사항이 캡처되도록 보장합니다.
- 코드가 전달되지 않는 sys.exit 호출을 처리합니다.
- numpy를 요구하지 않도록 했습니다.
기능 향상
- 로컬 디렉터리를 클라우드로 푸시하는 새로운
wandb sync명령을 추가했습니다. - 트레이닝 중 tfevents 파일 동기화를 지원합니다.
- TFJob으로 실행 중인지 감지하고 자동으로 그룹화합니다.
- 파이프라인을 위한 초기 헬퍼를 포함한 새로운 Kubeflow 모듈을 추가했습니다.
기능 향상
- AWS SageMaker에 대한 초기 지원을 추가했습니다.
hook_torch를 사용 중단 예정 경고와 함께watch로 이름을 변경했습니다.- 존재하지 않을 경우 Projects가 자동으로 생성됩니다.
- GPU memory_allocated 메트릭을 추가했습니다.
- Keras Graph가 엣지를 저장합니다.
버그 수정
- PyTorch 그래프 파싱이 더 견고해졌습니다.
- PyTorch 0.3 지원을 수정했습니다.
- 파일 다운로드 API가 WANDB_API_KEY 인증을 지원합니다.
기능 향상
- Sweeps가 새로운 백엔드와 함께 동작합니다(초기 릴리스).
- summary는 summary에 직접 값을 써서 덮어쓰는 경우를 제외하고 모든 history 메트릭을 추적합니다.
- 데이터 API에서 파일을 지원합니다.
버그 수정
- 최종 업로드 진행률에 진행 중인 미디어 파일 업로드를 표시합니다.
기능 향상
- Wandb.Audio가 duration을 지원합니다.
버그 수정
- filestream API에서 username 헤더를 전달하도록 했습니다.
개선 사항
- 새로운 wandb.Audio 데이터 타입을 추가했습니다.
- 메트릭을 로깅할 때 사용할 수 있는 새로운 step 키워드 인자를 추가했습니다.
- wandb.init() 호출 시 또는 환경 변수를 통해 run 그룹과 job 타입을 지정할 수 있는 기능을 추가했습니다. 이를 통해 UI에서 분산 트레이닝 run을 자동으로 그룹화할 수 있습니다.
- 서비스 계정 API 키를 사용할 때 사용자 이름(username)을 오버라이드할 수 있는 기능을 추가했습니다.
버그 수정
- Python 2에서 non-tty 환경도 처리합니다.
- 존재하지 않는 git 바이너리를 처리합니다.
- Keras step 동안 같은 이미지가 가끔 두 번 로깅되던 문제를 수정했습니다.
개선 사항
- PyTorch.
- 그래프를 기록하고 PyTorch 모델의 그래디언트와 파라미터를 로깅하는 새로운
wandb.hook_torch메서드를 추가했습니다. wandb.Image가 PyTorch 텐서를 감지하고, 이미지를 렌더링하기 위해 torchvision.utils.make_grid를 사용합니다.
- 그래프를 기록하고 PyTorch 모델의 그래디언트와 파라미터를 로깅하는 새로운
버그 수정
wandb restore가 git 저장소 내부에서 실행되지 않은 경우도 처리합니다.
버그 수정
- 이제 Python 2에서 stdout과 stderr를 raw 모드로 열어 bpdb 같은 도구가 제대로 동작하도록 보장합니다.
개선 사항
- 치명적인 에러는 이제 WANDB_ERROR_REPORTING이 false로 설정되지 않는 한 Sentry로 리포트됩니다.
- 시작 시 에러 처리와 메시지를 개선했습니다.
버그 수정
- wandb.log를 호출할 때 첫 번째 이미지가 기록되지 않았던 문제가 있었는데, 이제 정상적으로 기록됩니다.
wandb.log와run.summary가 이제 키에서 공백을 제거합니다.
버그 수정
- 최신 ipython이 > 2.0으로 고정되어 있기 때문에 prompt_toolkit < 1.0.15를 내장했습니다.
- Data API 성능을 개선하기 위해
summary에 접근할 때만 wandb.h5를 지연 로드합니다.
개선 사항
- Jupyter.
- 첫 번째 wandb.log 호출 이후 시스템 메트릭을 자동으로 시작하도록,
wandb.monitor는 사용 중단(deprecated)되었습니다. - 실시간 결과를 표시하기 위한 새로운 %%wandb Jupyter 매직 메서드를 추가했습니다.
- Jupyter 설명용 iframe을 제거했습니다.
- 첫 번째 wandb.log 호출 이후 시스템 메트릭을 자동으로 시작하도록,
- Data API가 이제
api.runs메서드에per_page및order옵션을 지원합니다. - wandb.Table 로깅에 대한 초기 지원을 추가했습니다.
- matplotlib 로깅에 대한 초기 지원을 추가했습니다.