Releases: wandb/wandb
Releases Β· wandb/wandb
v0.20.1
v0.20.0
What's Changed
- wandb.Table: Added new constructor param,
log_mode
, with options"IMMUTABLE"
and"MUTABLE"
.IMMUTABLE
log mode (default) is existing behavior that only allows a table to be logged once.MUTABLE
log mode allows the table to be logged again if it has been mutated. (@domphan-wandb in #9758) - wandb.Table: Added a new
log_mode
,"INCREMENTAL"
, which logs newly added table data incrementally. (@domphan-wandb in #9810)
Notable Changes
This version removes the ability to disable the service
process. This is a breaking change.
Added
- Added
merge
parameter toArtifact.add_dir
to allow overwrite of previously-added artifact files (@pingleiwandb in #9907) - Support for pytorch.tensor for
masks
andboxes
parameters when creating awandb.Image
object. (@jacobromero in #9802) sync_tensorboard
now supports syncing tfevents files stored in S3, GCS and Azure (@timoffex in #9849)- GCS paths use the format
gs://bucket/path/to/log/dir
and rely on application-default credentials, which can be configured usinggcloud auth application-default login
- S3 paths use the format
s3://bucket/path/to/log/dir
and rely on the default credentials set throughaws configure
- Azure paths use the format
az://account/container/path/to/log/dir
and theaz login
credentials, but also require theAZURE_STORAGE_ACCOUNT
andAZURE_STORAGE_KEY
environment variables to be set. Some other environment variables are supported as well, see here.
- GCS paths use the format
- Added support for initializing some Media objects with
pathlib.Path
(@jacobromero in #9692) - New setting
x_skip_transaction_log
that allows to skip the transaction log. Note: Should be used with caution, as it removes the gurantees about recoverability. (@kptkin in #9064) normalize
parameter towandb.Image
initialization to normalize pixel values for Images initialized with a numpy array or pytorch tensor. (@jacobromero in #9883)
Changed
- Various APIs now raise
TypeError
instead ofValueError
or other generic errors when given an argument of the wrong type. (@timoffex in #9902) - Various Artifacts and Automations APIs now raise
CommError
instead ofValueError
upon encountering server errors, so as to surface the server error message. (@ibindlish in #9933) wandb.sdk.wandb_run.Run::save
method now requires theglob_str
argument (@dmitryduev in #9962)
Removed
- Removed support for disabling the
service
process. Thex_disable_service
/_disable_service
setting and theWANDB_DISABLE_SERVICE
/WANDB_X_DISABLE_SERVICE
environment variable have been deprecated and will now raise an error if used (@kptkin in #9829) - Removed ability to use
wandb.docker
after only importingwandb
(@timoffex in #9941)wandb.docker
is not part ofwandb
's public interface and is subject to breaking changes. Please do not use it.
- Removed no-op
sync
argument fromwandb.Run::log
function (@kptkin in #9940) - Removed deprecated
wandb.sdk.wandb_run.Run.mode
property (@dmitryduev in #9958) - Removed deprecated
wandb.sdk.wandb_run.Run::join
method (@dmitryduev in #9960)
Deprecated
- The
start_method
setting is deprecated and has no effect; it is safely ignored (@kptkin in #9837) - The property
Artifact.use_as
and parameteruse_as
forrun.use_artifact()
are deprecated since these have not been in use for W&B Launch (@ibindlish in #9760)
Fixed
- Calling
wandb.teardown()
in a child of a process that calledwandb.setup()
no longer raisesWandbServiceNotOwnedError
(@timoffex in #9875)- This error could have manifested when using W&B Sweeps
- Offline runs with requested branching (fork or rewind) sync correctly (@dmitryduev in #9876)
- Log exception as string when raising exception in Job wait_until_running method (@KyleGoyette in #9607)
wandb.Image
initialized with tensorflow data would be normalized differently than when initialized with a numpy array (@jacobromero in #9883)- Using
wandb login
no longer prints a warning aboutwandb.require("legacy-service")
(@timoffex in #9912) - Logging a
Table
(or other objects that create internal artifacts) no longer raisesValueError
when logged from a run whose ID contains special characters. (@tonyyli-wandb in #9943) wandb.Api
initialized with thebase_url
now respects the provided url, rather than the last login url (@jacobromero in #9942)
v0.19.11
What's Changed
Added
- Added creation, deletion, and updating of registries in the SDK. (@estellazx in #9453)
artifact.is_link
property to artifacts to determine if an artifact is a link artifact (such as in the Registry) or source artifact. (@estellazx in #9764)artifact.linked_artifacts
to fetch all the linked artifacts to a source artifact andartifact.source_artifact
to 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.id
property 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_CHANGE
events, 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_PROFILING
environment variable totrue
. Requires thenvidia-dcgm
service to be running on the machine. Enabling this feature can lead to increased resource usage. (@dmitryduev in #9780)
Fixed
run.log_code
correctly sets the run configscode_path
value. (@jacobromero in #9753)- Correctly use
WANDB_CONFIG_DIR
for determining system settings file path (@jacobromero in #9711) - Prevent invalid
Artifact
andArtifactCollection
names (which would make them unloggable), explicitly raising aValueError
when attempting to assign an invalid name. (@tonyyli-wandb in #8773) - Prevent pydantic
ConfigError
in 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 denied
error 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
v0.19.10
What's Changed
Added
- The new
reinit="create_new"
setting causeswandb.init()
to create a new run even if other runs are active, without finishing the other runs (in contrast toreinit="finish_previous"
). This will eventually become the default (@timoffex in #9562) - Added
Artifact.history_step
to return the nearest run step at which history metrics were logged for the artifact's source run (@ibindlish in #9732) - Added
data_is_not_path
flag to skip file checks when initializingwandb.Html
with a sting that points to a file.
Changed
Artifact.download()
no longer raises an error when usingWANDB_MODE=offline
or when an offline run exists (@timoffex in #9695)
Removed
- Dropped the
-q
/--quiet
argument to thewandb
magic in IPython / Jupyter; use thequiet
run setting instead (@timoffex in #9705)
Deprecated
- The following
wandb.Run
methods are deprecated in favor of properties and will be removed in a future release (@kptkin in #8925):run.project_name()
is deprecated in favor ofrun.project
run.get_url()
method is deprecated in favor ofrun.url
run.get_project_url()
method is deprecated in favor ofrun.project_url
run.get_sweep_url()
method is deprecated in favor ofrun.sweep_url
Fixed
- Fixed ValueError on Windows when running a W&B script from a different drive (@jacobromero in #9678)
- Fix base_url setting was not provided to wandb.login (@jacobromero in #9703)
wandb.Html()
no longer raisesIsADirectoryError
with a value that matched a directory on the users system. (@jacobromero in #9728)
v0.19.9
What's Changed
Added
- The
reinit
setting can be set to"default"
(@timoffex in #9569) - Added support for building artifact file download urls using the new url scheme, with artifact collection membership context (@ibindlish in #9560)
Changed
- Boolean values for the
reinit
setting are deprecated; use "return_previous" and "finish_previous" instead (@timoffex in #9557) - The "wandb" logger is configured with
propagate=False
at import time, whereas it previously happened when starting a run. This may change the messages observed by the root logger in some workflows (@timoffex in #9540) - Metaflow now requires
plum-dispatch
package. (@jacobromero in #9599) - Relaxed the
pydantic
version requirement to support both v1 and v2 (@dmitryduev in #9605) - Existing
pydantic
types have been adapted to be compatible with Pydantic v1 (@tonyyli-wandb in #9623) wandb.init(dir=...)
now creates any nonexistent directories indir
if it has a parent directory that is writeable (@ringohoffman in #9545)- The server now supports fetching artifact files by providing additional collection information; updated the artifacts api to use the new endpoints instead (@ibindlish in #9551)
- Paginated methods (and underlying paginators) that accept a
per_page
argument now only acceptint
values. Defaultper_page
values are set directly in method signatures, and explicitly passingNone
is no longer supported (@tonyyli-wandb in #9201)
Fixed
- Calling
wandb.init()
in a notebook finishes previous runs as previously documented (@timoffex in #9569)- Bug introduced in 0.19.0
- Fixed an error being thrown when logging
jpg
/jpeg
images containing transparency data (@jacobromero in #9527) wandb.init(resume_from=...)
now works without explicitly specifying the run'sid
(@kptkin in #9572)- Deleting files with the Public API works again (@jacobromero in #9604)
- Bug introduced in 0.19.1
- Fixed media files not displaying in the UI when logging to a run with a custom storage bucket (@jacobromero in #9661)
v0.19.8
What's Changed
Fixed
- Media file paths containing special characters (?, *, ], [ or \) no longer cause file uploads to fail in
wandb-core
(@jacobromero in https://github.com//pull/9475)
Changed
v0.19.7
What's Changed
Added
- Registry search api (@estellazx in #9472)
Changed
- changed moviepy constraint to >=1.0.0 (@jacobromero in #9419)
wandb.init()
displays more detailed information, in particular when it is stuck retrying HTTP errors (@timoffex in #9431)
Removed
Fixed
- Fixed incorrect logging of an "wandb.Video requires moviepy [...]" exception when using moviepy v2. (@Daraan in #9375)
wandb.setup()
correctly starts up the internal service process; this semantic was unintentionally broken in 0.19.2 (@timoffex in #9436)- Fixed
TypeError: Object of type ... is not JSON serializable
when using numpy number types as values. (@jacobromero in #9487)
v0.19.6
What's Changed
Added
- Prometheus API support for Nvidia DCGM GPU metrics collection (@dmitryduev in #9369)
Changed
Fixed
- Fixed a performance issue causing slow instantiation of
wandb.Artifact
, which in turn slowed down fetching artifacts in various API methods. (@tonyyli-wandb in #9355) - Some errors from
wandb.Api
have better string representations (@timoffex in #9361) - Artifact.add_reference, when used with file URIs for a directory and the name parameter, was incorrectly adding the value of
name
to the path of the file references (@ssisk in #9378) - Fixed a bug causing
Artifact.add_reference()
withchecksum=False
to log new versions of local reference artifacts without changes to the reference URI. (@tonyyli-wandb in #9326)
v0.19.5
What's Changed
Added
- Added
wandb login --base-url {host_url}
to login as an alias ofwandb login --host {host_url}
. (@jacobromero in #9323)
Changed
- Temporarily disabled collecting per-core CPU utilization stats (@dmitryduev in #9350)
Fixed
- Fixed a bug causing
offline
mode to make network requests when logging media artifacts. If you are using an older version of W&B Server that does not support offline artifact uploads, use the settingallow_offline_artifacts=False
to revert to older compatible behavior. (@domphan-wandb in #9267) - Expand sanitization rules for logged table artifact name to allow for hyphens and dots. This update brings the rules up-to-date with the current rules for artifact names. (Allowing letters, numbers, underscores, hyphens, and dots) (@nicholaspun-wandb in #9271)
- Correctly handle run rewind settings
fork_from
andresume_from
. (@dmitryduev in #9331)
v0.19.4
What's Changed
Fixed
- Fix incorrectly reported device counts and duty cycle measurements for TPUs with single devices per chip / multiple devices on the host and make TPU metrics sampling more robust (@dmitryduev in #9266)
- Handle non-consecutive TPU device IDs in system monitor (@dmitryduev in #9276)