What's Changed
Added
- Added creation, deletion, and updating of registries in the SDK. (@estellazx in #9453)
artifact.is_linkproperty to artifacts to determine if an artifact is a link artifact (such as in the Registry) or source artifact. (@estellazx in #9764)artifact.linked_artifactsto fetch all the linked artifacts to a source artifact andartifact.source_artifactto fetch the source artifact of a linked artifact. (@estellazx in #9789)run.link_artifact(),artifact.link(), andrun.link_model()all return the linked artifact upon linking (@estellazx in #9763)- Multipart download for artifact file larger than 2GB, user can control it directly using
artifact.download(multipart=True). (@pingleiwandb in #9738) Project.idproperty to get the project ID on awandb.public.Project(@tonyyli-wandb in #9194).- New public API for W&B Automations (@tonyyli-wandb in #9693, #8935, #9194, #9197, #8896, #9246)
- New submodules and classes in
wandb.automations.*to support programmatically managing W&B Automations. Api.integrations(),Api.slack_integrations(),Api.webhook_integrations()to fetch a team's existing Slack or webhook integrations.Api.create_automation(),Api.automation()/Api.automations(),Api.update_automation(),Api.delete_automation()to create, fetch, edit, and delete Automations.
- New submodules and classes in
- Create and edit automations triggered on
RUN_METRIC_CHANGEevents, i.e. on changes in run metric values (absolute or relative deltas). (@tonyyli-wandb in #9775) - Ability to collect profiling metrics for Nvidia GPUs using DCGM. To enable, set the
WANDB_ENABLE_DCGM_PROFILINGenvironment variable totrue. Requires thenvidia-dcgmservice to be running on the machine. Enabling this feature can lead to increased resource usage. (@dmitryduev in #9780)
Fixed
run.log_codecorrectly sets the run configscode_pathvalue. (@jacobromero in #9753)- Correctly use
WANDB_CONFIG_DIRfor determining system settings file path (@jacobromero in #9711) - Prevent invalid
ArtifactandArtifactCollectionnames (which would make them unloggable), explicitly raising aValueErrorwhen attempting to assign an invalid name. (@tonyyli-wandb in #8773) - Prevent pydantic
ConfigErrorin Pydantic v1 environments from not calling.model_rebuild()/.update_forward_refs()on generated types with ForwardRef fields (@tonyyli-wandb in #9795) wandb.init()no longer raisesPermission deniederror when the wandb directory is not writable or readable (@jacobromero in #9751)- Calling
file.delete()on files queried viaapi.Runs(...)no longer raisesCommError(@jacobromero in #9748)- Bug introduced in 0.19.1