Releases: wandb/wandb
Releases 路 wandb/wandb
v0.17.0
What's Changed
Added
- The
wandb
package now includes thewandb-core
binary by @timoffex in #7381wandb-core
is a new and improved backend for the W&B SDK that focuses on performance, versatility, and robustness.- Currently, it is opt-in. To start using the new backend, add
wandb.require("core")
to your script after importingwandb
.
wandb-core
now supports Artifact file caching by @moredatarequired in #7364 and #7366- Added artifact_exists() and artifact_collection_exists() methods to Api to check if an artifact or collection exists by @amusipatla-wandb in #7483
wandb launch -u <git-uri | local-path>
creates and launches a job from the given source code by @bcsherma in #7485
Fixed
- Prevent crash on
run.summary
for finished runs by @dmitryduev in #7440 - Correctly report file upload errors when using wandb-core by @moredatarequired in #7196
- Implemented a stricter check for AMD GPU availability by @dmitryduev in #7322
- Fixed
run.save()
on Windows by @timoffex in #7412 - Show a warning instead of failing when using registries other than ECR and GAR with the Kaniko builder by @TimH98 in #7461
- Fixed
wandb.init()
type signature includingNone
by @timoffex in #7563
Changed
- When using
wandb-core
need to specify a required flag (wandb.require("core")
) to enable it, before it was picked up automatically by @kptkin in #7228 - Use ETags instead of MD5 hashes for GCS reference artifacts by @moredatarequired in #7337
Removed
- Removed the deprecated
wandb.plots.*
functions and top-level third-party integrationswandb.[catboost,fastai,keras,lightgbm,sacred,xgboost]
. Please usewandb.plot
instead ofwandb.plots
andwandb.integration.[catboost,fastai,keras,lightgbm,sacred,xgboost]
instead ofwandb.[catboost,fastai,keras,lightgbm,sacred,xgboost]
. By @dmitryduev in #7552 - Removed the
[async]
extra and the_async_upload_concurrency_limit
setting by @moredatarequired in #7416 - Removed undocumented settings:
_except_exit
andproblem
by @timoffex in #7563
v0.16.6
What's Changed
Added
- Added support for overriding kaniko builder settings in the agent config by @TimH98 in #7191
- Added link to the project workspace of a run in the footer by @kptkin in #7276
- Added support for overriding stopped run grace period in the agent config by @TimH98 in #7281
- Added setting (
_disable_update_check
) to disable version checks during init by @kptkin in #7287 WandbLogger.sync
in the OpenAI Fine-Tuning integration gets a newlog_datasets
boolean argument to turn off automatic logging of datasets to Artifacts by @morganmcg1 in #7150- Reduced default status print frequency of launch agent. Added verbosity controls to allow for increased status print frequency and printing debug information to stdout by @TimH98 in #7126
Changed
- Limit policy option on artifact cli's put() to choices, ["mutable", "immutable"] by @ibindish in #7172
- Updated artifact public api methods to handle nullable Project field on the ArtifactSequence/ArtifactCollection type, based on gorilla server changes by @ibindlish in #7201
Fixed
- Fixed
run.save()
not working with files insiderun.dir
, introduced in previous release - Fixed wandb.login causing runs not to be associated with launch queue by @KyleGoyette in #7280
- Fixed job artifact download failing silently and causing run crash when using W&B Launch by @KyleGoyette #7285
- Fix handling of saving training files to Artifacts in the OpenAI Fine-Tuning integration by @morganmcg1 in #7150
v0.16.5
What's Changed
Added
- Added feature to move staging files to cache (instead of copying) for mutable artifact file uploads when caching is enabled by @ibindlish in #7143
- Added support to skip caching files to the local filesystem while uploading files to artifacts by @ibindlish in #7098
- Added support to skip staging artifact files during upload by selecting a storage policy by @ibindlish in #7142
- Preliminary support for forking a run using
wandb.init(fork_from=...)
by @dannygoldstein in #7078 run.save()
acceptspathlib.Path
values; by @timoffex in #7146
Changed
Fixed
- In case of transient server issues when creating the wandb API key kubernetes secret, we'll retry up to 5 times by @TimH98 in #7108
Removed
New Contributors
Full Changelog: v0.16.4...v0.16.5
v0.16.4
What's Changed
馃獎 Enhancements
- feat(artifacts): Add ability to change artifact collection types by @biaslucas in #6971
- feat(launch): add support for installing deps from pyproject.toml by @bcsherma in #6964
- feat(sdk): Use a hard-coded limit for requests to the backend by @timoffex in #7058
- feat(sdk): Respect backpressure headers from backend by @timoffex in #7065
- feat(sdk): Rate-limit GraphQL and filestream separately by @timoffex in #7089
- feat(launch): support kaniko build with user-provided pvc and docker config by @bcsherma in #7059
- feat(sdk): W&B to W&B Importer by @andrewtruong in #6897
馃敤 Fixes
- fix(launch): Fix passing of template variables in the sweeps-on-launch scheduler by @dannygoldstein in #6959
- fix(core): link job artifact to a run to be specified as input by @kptkin in #6940
- fix(launch): Fix sagemaker entrypoint to use given entrypoint by @KyleGoyette in #6969
- fix(core): parse upload headers correctly by @kptkin in #6983
- fix(core): properly propagate server errors by @kptkin in #6944
- fix(core): make file upload faster by using parallelism by @kptkin in #6975
- fix(core): don't send git data if it's not populated by @kptkin in #6984
- fix(sdk): fix console logging resumption, avoid overwrite by @kptkin in #6963
- fix(cli): remove hostname validation when using --host on wandb login by @Jamil in #6999
- fix(sdk): Don't discard past visualizations when resuming a run by @timoffex in #7005
- fix(core): avoid retrying on conflict status code by @kptkin in #7011
- fix(sdk): Fix visualization config merging for resumed runs in wandb-core by @timoffex in #7012
- fix(core): replace usage of standard library's json with
segmentio
's by @kptkin in #7027 - fix(core): remove stderr as writer for the logs by @kptkin in #7022
- fix(core): disable negative steps from initialization by @kptkin in #7030
- fix(sdk): Report API: Fix report loading in pydantic26 by @andrewtruong in #6988
- fix(artifacts): Revert "make upload request async to support progress reporting (#6497)" by @jlzhao27 in #7049
- fix(launch): Fix entrypoint specification when using a Dockerfile.wandb by @KyleGoyette in #7080
- fix(sdk): fix stream releasing probe handle too early by @jlzhao27 in #7056
- fix(launch): Always attempt to pull latest image for local container by @KyleGoyette in #7079
New Contributors
Full Changelog: v0.16.3...v0.16.4
v0.16.3
What's Changed
馃獎 Enhancements
- feat(core): generate data type info in core by @dmitryduev in #6827
- feat(core): add support for Launch 馃殌 by @kptkin in #6822
- feat(public-api): Added option to control number of grouped sampled runs in reports by @thanos-wandb in #6840
- feat(sdk): add shared mode to enable multiple independent writers to the same run by @dmitryduev in #6882
- perf(artifacts): Reduce artifact download latency via optional cache copy + threads by @biaslucas in #6878
- feat(artifacts): Add partial file downloads, via directory prefix by @biaslucas in #6911
- feat(integrations): Update the Diffusers Integration by @soumik12345 in #6804
- feat(integrations): Update Ultralytics Integration by @soumik12345 in #6796
- feat(integrations): Add Pytorch Lightning Fabric Logger by @ash0ts in #6919
- feat(core): update go packages by @kptkin in #6908
馃敤 Fixes
- fix(launch): Remove project and runner fields from agent config by @KyleGoyette in #6818
- fix(launch): recognize deleted k8s jobs as failed by @bcsherma in #6824
- fix(launch): warn of extra fields in environment block instead of erroring by @bcsherma in #6833
- fix(sdk): entity override bug where ENVVAR is prioritized over kwargs by @biaslucas in #6843
- fix(launch): Local container runner doesn't ignore override args by @TimH98 in #6844
- fix(sdk): merge-update config with sweep/launch config by @dannygoldstein in #6841
- fix(sdk): fix retry logic in wandb-core and system_tests conftest by @dmitryduev in #6847
- fix(core): use RW locks in system monitor's assets management by @dmitryduev in #6852
- fix(launch): set build context to entrypoint dir if it contains Dockerfile.wandb by @bcsherma in #6855
- security(launch): Mount wandb api key in launch job pods from a k8s secret by @TimH98 in #6722
- fix(launch): wandb job create should not look for requirements.txt if Dockerfile.wandb is next to entrypoint by @bcsherma in #6861
- fix(sdk): fix _parse_path when only id is passed to wandb.Api().run() by @luisbergua in #6858
- fix(media): Update video.py: Fix fps bug by @stellargo in #6887
- fix(sdk): clean up temp folders by @dmitryduev in #6891
- fix(artifacts): fix long artifact paths on Windows by @ArtsiomWB in #6846
- fix(sdk): Update Report API to work with pydantic2.6 by @andrewtruong in #6925
- fix(launch): fetch all commits to enable checking out by sha by @bcsherma in #6926
- fix(sweeps): dont swallow exceptions in pyagent by @dannygoldstein in #6927
- fix(artifacts): artifact file upload progress in nexus by @ibindlish in #6939
- fix(sdk): exercise caution in system monitor when rocm-smi is installed on a system with no amd gpus by @dmitryduev in #6938
- fix(cli): typo in cli.py by @eltociear in #6892
- fix(launch): remove deadsnakes from accelerator build step by @bcsherma in #6933
馃摎 Docs
- docs(sdk): update sweep
docstrings
by @ngrayluna in #6830 - docs(sdk): Updates the Tables reference docs. by @katjacksonWB in #6880
- docs(sdk): Artifact docstrings PR by @ngrayluna in #6825
New Contributors
- @biaslucas made their first contribution in #6843
- @stellargo made their first contribution in #6887
- @timoffex made their first contribution in #6916
Full Changelog: v0.16.2...v0.16.3
v0.16.2
What's Changed
馃獎 Enhancements
- feat(nexus): refactor store logic and add store writer by @kptkin in #6678
- feat(nexus): add AMD GPU monitoring by @dmitryduev in #6606
- feat(nexus): add console log file upload by @kptkin in #6669
- feat(launch): add registry uri field to builders by @bcsherma in #6626
- feat(core): add
wandb beta sync
feature to upload runs to W&B by @kptkin in #6620 - feat(launch): CLI supports allow-listed queue parameters by @TimH98 in #6679
- feat(core): add support for requirements and patch.diff by @kptkin in #6721
- feat(core): capture SLURM-related env vars in metadata by @dmitryduev in #6710
- feat(launch): --priority flag on
wandb launch
command to specify priority when enqueuing jobs. by @nickpenaranda in #6705 - feat(sdk): add verify feature to wandb login by @dmitryduev in #6747
- feat(launch): Sweeps on Launch honors selected job priority for sweep runs by @nickpenaranda in #6756
- feat(core): 馃 commence operation SDKrab 馃 by @dmitryduev in #6000
- feat(artifacts): make upload request async to support progress reporting by @jlzhao27 in #6497
- feat(core): add TensorBoard log dir watcher by @kptkin in #6769
- feat(core): upload wandb-summary.json and config.yaml files by @kptkin in #6781
馃敤 Fixes
- fix(nexus): update error message and remove extra by @kptkin in #6667
- fix(nexus): clean up issues with file sending by @kptkin in #6677
- fix(core): add jitter to retry clients' backoff strategy by @dmitryduev in #6706
- fix(artifacts): only skip file download if digest matches by @szymon-piechowicz-wandb in #6694
- fix(core): fix resume and add tests by @dmitryduev in #6714
- fix(launch): capture errors from the creation of k8s job from yaml by @bcsherma in #6730
- fix(launch): Get default entity before checking template vars by @TimH98 in #6745
- fix(artifacts): remove run creation for artifact downloads if not using core by @ibindlish in #6746
- fix(artifacts): Retrieve ETag for ObjectVersion instead of Object for versioned buckets by @ibindlish in #6759
- fix(artifacts): revert #6759 and read object version etag in place by @ibindlish in #6774
- fix(core): put back the upload file count by @kptkin in #6767
- fix(core): add send cancel request to sender by @dmitryduev in #6787
- fix(core): check errors in memory monitoring by @dmitryduev in #6790
- fix(sdk): add job_type flag in CLI to allow override of job_type by @umakrishnaswamy in #6523
- fix(integrations): Handle ultralytics utils import refactor by @jthetzel in #6741
- fix(core): download artifacts with wandb-core without an active run by @dmitryduev in #6798
- fix(sdk): fix error logging matplotlib scatter plot if the minimum version of plotly library is not met by @walkingmug in #6724
- fix(sdk): allow overriding the default .netrc location with NETRC env var by @dmitryduev in #6708
馃摎 Docs
- docs(sdk): Corrected description for email field by @ngrayluna in #6716
- docs(core): update the
README-libwandb-cpp.md
doc by @NinoRisteski in #6794
New Contributors
- @jthetzel made their first contribution in #6741
- @walkingmug made their first contribution in #6724
Full Changelog: v0.16.1...v0.16.2
v0.16.1
What's Changed
馃獎 Enhancements
- perf(artifacts): remove recursive download by @szymon-piechowicz-wandb in #6544
- feat(nexus): add debounce summary in handler by @kptkin in #6570
- feat(integrations): fix bug in ultralytics import and version pinning by @soumik12345 in #6605
- feat(launch): Support template variables when queueing launch runs by @KyleGoyette in #6602
- feat(cli): add --skip-console option to offline sync cli command by @kptkin in #6557
- feat(nexus): add basic graphql versioning mechanism by @dmitryduev in #6624
- feat(nexus): add Apple M* GPU stats monitoring by @dmitryduev in #6619
- feat(launch): add helper to load wandb.Config from env vars by @bcsherma in #6644
- feat(integrations): port OpenAI WandbLogger for openai-python v1.0 by @ayulockin in #6498
- feat(integrations): fix version check for openAI WandbLogger by @ayulockin in #6648
- feat(integrations): Diffusers autologger by @soumik12345 in #6561
- feat(sdk): Adding parameter to image to specify file type jpg, png, bmp, gif by @fdsig in #6280
馃敤 Fixes
- fix(nexus): make offline sync work properly by @dmitryduev in #6569
- fix(launch): Fix run existence check to not depend on files being uploaded in the run by @KyleGoyette in #6548
- fix(launch): gcp storage uri verifaction failed due to improper async wrapping by @bcsherma in #6581
- fix(sdk): updating summary with nested dicts now doesn't throw an error by @ArtsiomWB in #6578
- fix(launch): Add prioritization mode to RunQueue create by @TimH98 in #6610
- fix(nexus): create symlink to the server logs in the runs folder by @kptkin in #6628
- fix(integrations): single value problem in wandb/wandb_torch.py::log_tensor_stats by @gmongaras in #6640
- fix(integrations): tmin vs tmax in wandb/wandb_torch.py::log_tensor_stats by @dmitryduev in #6641
- fix(nexus): minor fix up for non server cases by @kptkin in #6645
- fix(sdk): make old settings more robust by @dmitryduev in #6654
- fix(sdk): handle tags when resuming a run by @dmitryduev in #6660
馃摎 Docs
- docs(integrations): fix doc-string typo in a keras callback by @evilpegasus in #6586
New Contributors
- @evilpegasus made their first contribution in #6586
- @yogeshg made their first contribution in #6573
- @gmongaras made their first contribution in #6640
Full Changelog: v0.16.0...v0.16.1
v0.16.0
What's Changed
馃獎 Enhancements
- feat(nexus): add nested config support by @kptkin in #6417
- feat(nexus): finish artifact saver by @szymon-piechowicz-wandb in #6296
- feat(nexus): add sync file counts in the footer by @dmitryduev in #6371
- feat(nexus): implement directory watcher and related functionality by @kptkin in #6257
- feat(launch): run agent on an event loop by @bcsherma in #6384
- feat(nexus): add sampled history by @kptkin in #6492
- feat(artifacts): prototype for models api by @ibindlish in #6205
- perf(launch): register sweep scheduler virtual agents async by @bcsherma in #6488
- feat(nexus): make file uploads work with local by @dmitryduev in #6509
- feat(sdk): allow users to log custom chart tables in a different section by @luisbergua in #6422
- feat(nexus): generalize uploader to filemanager to allow downloads by @ibindlish in #6445
- feat(sdk): drop python 3.6 support by @dmitryduev in #6493
- feat(artifacts): delete staging files in Nexus by @szymon-piechowicz-wandb in #6529
- feat(artifacts): set up artifact downloads to use sdk nexus core by @estellazx in #6275
- feat(nexus): add file upload progress and make completion callback a list of callbacks by @kptkin in #6518
- feat(launch): add wandb.ai/run-id label to jobs by @bcsherma in #6543
馃敤 Fixes
- fix(sdk): ensures that complete run.config is captured in SageMaker by @fdsig in #6260
- fix(sdk): Improve error handling for gitlib for FileNotFoundErrors by @j316chuck in #6410
- fix(sdk): increase max message size, handle errors by @szymon-piechowicz-wandb in #6398
- fix(launch): Agent better balances multiple queues by @TimH98 in #6418
- fix(artifacts): remove versioning enabled check in GCS reference handler by @szymon-piechowicz-wandb in #6430
- fix(launch): add google-cloud-aiplatform to launch shard by @bcsherma in #6440
- fix(nexus): add use_artifact as passthrough messages by @kptkin in #6447
- fix(launch): adjust vertex environment variables by @Hojland in #6443
- fix(artifacts): update artifacts cache file permissions for NamedTemporaryFile by @ibindlish in #6437
- fix(nexus): fix a number of issues by @dmitryduev in #6491
- fix(media): saving mlp figure to buffer and reading with PIL should specify format by @mova in #6465
- fix(nexus): send content-length, check response status code in uploader by @szymon-piechowicz-wandb in #6401
- fix(sdk): fix step logic when resuming runs with no metrics logged by @luisbergua in #6480
- fix(sdk): hook_handle being set to list instead of dict on unhook by @vatsalaggarwal in #6503
- fix(launch): verify gcp credentials before creating vertex job by @bcsherma in #6537
- fix(launch): add load option to docker buildx by @KyleGoyette in #6508
- fix(artifacts): fix perf regressions in artifact downloads and fix file download location by @ibindlish in #6535
- fix(sdk): add warning when
log_code
can't locate any files by @umakrishnaswamy in #6532 - fix(sdk): adjust ipython hooks for v8.17 by @dmitryduev in #6563
馃摎 Docs
- docs(media): fix
Graph
docstring by @harupy in #6458 - docs(public-api): Fix suggested command for uploading artifacts by @geke-mir in #6513
New Contributors
- @j316chuck made their first contribution in #6410
- @harupy made their first contribution in #6458
- @Hojland made their first contribution in #6443
- @mova made their first contribution in #6465
- @geke-mir made their first contribution in #6513
- @luisbergua made their first contribution in #6422
- @vatsalaggarwal made their first contribution in #6503
Full Changelog: v0.15.12...v0.16.0
v0.15.12
What's Changed
馃獎 Enhancements
- feat(nexus): implement config debouncing mechanism by @kptkin in #6331
- feat(integrations): fix channel swapping on ultrlytics classification task by @soumik12345 in #6382
- feat(nexus): implement nexus alpha cpp interface by @raubitsj in #6358
- feat(nexus): expose system metrics in the run object (PoC) by @dmitryduev in #6238
- feat(integrations): Pin ultralytics version support to
v8.0.186
by @soumik12345 in #6391
馃敤 Fixes
- fix(launch): get logs from failed k8s pods by @bcsherma in #6339
- fix(artifacts): Allow adding s3 bucket as reference artifact by @ibindlish in #6346
- fix(launch): Fix race condition in agent thread clean up by @KyleGoyette in #6352
- fix(artifacts): don't assume run and its i/o artifacts are in the same project by @szymon-piechowicz-wandb in #6363
- fix(artifacts): fix wandb.Api().run(run_name).log_artifact(artifact) by @szymon-piechowicz-wandb in #6362
- fix(sweeps): ValueError with None value in sweep by @gtarpenning in #6364
- fix(artifacts): fix typo in s3 handler by @ibindlish in #6368
- fix(artifacts): fix the argument order for new argument target_fraction by @moredatarequired in #6377
- fix(nexus): fix potential race in config debouncer by @dmitryduev in #6385
- fix(sdk): fix graphql type mapping by @szymon-piechowicz-wandb in #6396
- fix(sdk): fix concurrency limit in uploader by @szymon-piechowicz-wandb in #6399
馃摎 Docs
- docs(sdk): fix reference docs GH action by @dmitryduev in #6350
- docs(sdk): Update generate-docodile-documentation.yml by @ngrayluna in #6351
Full Changelog: v0.15.11...v0.15.12
v0.15.11
What's Changed
馃獎 Enhancements
- feat(nexus): add support for code saving in script mode by @kptkin in #6243
- feat(nexus): add support for
policy=end
inwandb.save
by @kptkin in #6267 - feat(nexus): add system info to metadata by @dmitryduev in #6244
- feat(nexus): add nvidia gpu system info to metadata by @dmitryduev in #6270
- feat(launch): delete run queues with public api by @bcsherma in #6317
- feat(sdk): introduce custom proxy support for wandb http(s) traffic by @kptkin in #6300
馃敤 Fixes
- fix(sdk): Fix logger when logging filestream exception by @KyleGoyette in #6246
- fix(launch): use watch api to monitor launched CRDs by @bcsherma in #6226
- fix(launch): forbid enqueing docker images without target project by @bcsherma in #6248
- fix(sdk): add missing Twitter import for API users by @fdsig in #6261
- fix(artifacts): get S3 versionIDs from directory references by @moredatarequired in #6255
- fix(launch): make watch streams recover from connection reset by @bcsherma in #6272
- fix(public-api): use json.loads(..., strict=False) to ignore invalid utf-8 and control characters in api.Run.load by @dmitryduev in #6299
- fix(sdk): correctly identify colab as a jupyter-like env in settings by @dmitryduev in #6308
- fix(sdk): improve memory management for summary updates by @dmitryduev in #5569
- fix(artifacts): Add environment variable to configure batch size for download urls by @ibindlish in #6323
- fix(launch): fail rqis if no run is created by @bcsherma in #6324
馃摎 Docs
- docs(sdk): fixes a broken link in Image docs. by @katjacksonWB in #6252
- docs(nexus): add docs on running nexus-related system tests locally by @dmitryduev in #6191
- docs(nexus): add user-facing Nexus docs for Beta release by @dmitryduev in #6276
- docs(nexus): fix pip install nexus instruction by @dmitryduev in #6309
馃拝 Cleanup
- Update README.md by @NinoRisteski in #6325
New Contributors
- @katjacksonWB made their first contribution in #6252
- @NinoRisteski made their first contribution in #6325
Full Changelog: v0.15.10...v0.15.11