What's Changed
Notable Changes
wandb.InternalApi, thewandb.PublicApiandwandb.apis.PublicApialiases, and thewandb.apis.internalandwandb.sdk.internal.internal_apimodules have been removed. Usewandb.Api()instead.wandb.apiandwandb.ensure_configured()are deprecated. Usewandb.login(prompt=False)to check whether the user is logged in, andwandb.Api()for everything else.- The legacy
wandb syncoptions have been removed. Runwandb syncwith no arguments instead ofwandb sync --sync-all, and use--job-typeinstead of--job_type. Seewandb sync --help.
Added
wandb.login(prompt=False)uses the configured credentials when there are any and returnsFalseotherwise, without asking for an API key or switching to offline mode. Use it to check whether the user is logged in without blocking (@dmitryduev in #12741)- The automations API supports sending a prompt to ARIA as an automation action with
SendPromptToAria(@gdecarvalhovaz-lgtm in #12594) - W&B LEET TUI:
- Charts with custom x-axes set with
run.define_metric(...), including glob definitions such asrun.define_metric("train/*", step_metric="train/step"). The axis name is shown as[x: train/step]in the chart header. Applies to runs opened from local.wandbfiles (@dmitryduev in #12568, #12728) - Filter console logs: with the logs pane focused, press
/and type a pattern (regex, or glob afterTab) to show only the matching lines. New matches are followed as they arrive, andctrl+/clears the filter (@dmitryduev in #12736) - The metrics, system metrics and runs filters are remembered for each wandb directory and applied again the next time you open it, in both the workspace and the single-run view. They are stored in
.wandb-leet.jsoninside the directory. Clearing a filter forgets it (@dmitryduev in #12735) - The border or separator line you drag to resize a pane or sidebar is highlighted while you drag it (@dmitryduev in #12617)
- Charts with custom x-axes set with
Changed
wandb status --settingsno longer prints the API key, andwandb projectsno longer prints project descriptions (@dmitryduev in #12723)- System metrics on Apple Silicon Macs start about 1.5 seconds sooner after a run starts (@dmitryduev in #12679)
- W&B LEET TUI is faster on long runs: a run with 100 metrics and 400k steps opens 10 times faster, frames render about 30 percent faster, and live chart updates no longer redraw every point (@dmitryduev in #12535, #12536, #12537, #12538, #12539, #12734)
Deprecated
wandb.apiandwandb.ensure_configured()are deprecated and will be removed in a future release.wandb.apinow only providesapi_key,default_entityandviewer(). Usewandb.login(prompt=False)to check whether the user is logged in, andwandb.Api()for the rest (@dmitryduev in #12715)wandb.sandboxand thewandb beta sandboxcommands are deprecated and will be removed in a future release. Use thecwsandboxpackage directly (@nicholaspun-wandb in #12647, #12689)
Removed
- Removed
wandb.InternalApi, thewandb.PublicApiandwandb.apis.PublicApialiases, and thewandb.apis.internalandwandb.sdk.internal.internal_apimodules. Usewandb.Api()instead (@dmitryduev in #12715, #12716, #12724) - Removed the legacy
wandb syncoptions. Runwandb syncwith no arguments instead ofwandb sync --sync-all, and use--job-typeinstead of--job_type(@timoffex in #12686)
Fixed
- File uploads and downloads that take longer than 20 seconds no longer fail with
CommError: Failed to execute API request: the service process is busy and did not respond in time. This was a regression in 0.29.0 (@dmitryduev in #12603) wandb.init()andwandb.Api()no longer stall for up to 10 seconds when the W&B server is slow to respond. This was a regression in 0.29.0 (@mitja-kleider and @jacobromero in #12697)- Requests rejected with HTTP 402 Payment Required, such as plan and quota limits including artifact usage limits, are no longer retried. The error is reported right away (@Vedant527 in #12628)
- Syncing a run whose artifacts were already uploaded no longer fails when the artifact files are no longer on disk. This was a regression in 0.29.0 (@dmitryduev in #12750)
- A failed artifact upload no longer deletes the files it was uploading, so
wandb synccan retry it. After a successful upload, only files in the artifact's staging directory are cleaned up (@dmitryduev in #12749) wandb syncnow explains when a.wandbfile ends with an incomplete record, which happens while the run is still writing or after it was killed mid-write, and how to retry, instead of reporting an internal error (@dmitryduev in #12751)- Passing
aliasesortagstoRun.log_artifact()in the public API no longer fails with a server error (@dmitryduev in #12719) wandb.Imagemasks given as float arrays with values outside 0-255 now raiseTypeError, as integer arrays already did, instead of being saved with wrong class ids (@Kayvan-Zahiri in #12685)- System metrics are collected as soon as a run starts instead of one sampling interval (15 seconds by default) later, so short runs record system metrics and system charts no longer start with a gap (@dmitryduev in #12649)
wandb.init()no longer waits up to 5 seconds for the GPU and TPU metrics collector to start (@dmitryduev in #12651)- In Jupyter notebooks, system metrics are collected while a cell runs and paused between cells. Since 0.19.10 the two were swapped, so system metrics were only collected while the notebook was idle (@timoffex in #12646)
- On machines with AMD GPUs, system metrics monitoring no longer runs
rocm-smiup front, which took 1 to 3 seconds, and no longer crashes whenrocm-smireports no GPUs (@dmitryduev in #12652) - System metrics on Apple Silicon Macs:
- CPU utilization, frequency and power now cover the whole sampling interval instead of a snapshot of about 10 milliseconds, which made utilization and frequency noisy and overstated power by about 25 percent (@dmitryduev in #12676)
- Macs with 256 GB or more of RAM no longer report a memory size of 0 GB (@dmitryduev in #12677)
- CPU and GPU temperatures are no longer skewed by invalid sensor readings (@dmitryduev in #12678)
- M5 Pro and M5 Max Macs no longer report 0 efficiency cores (@dmitryduev in #12680)
- CPU frequencies on the MacBook Neo are no longer reported about 1000 times too high (@dmitryduev in #12681)
- CPU utilization and frequency are now collected for the efficiency cores of M5 Macs and the performance cores of M5 Pro and M5 Max Macs, which were missing (@dmitryduev in #12682)
- W&B LEET TUI:
wandb leetprints an error when it cannot start, for example without a terminal, instead of exiting with status 1 and no output. Debug logs (WANDB_DEBUG=true) are written next to the LEET config file instead of the current directory (@dmitryduev in #12732)wandb leetno longer sends usage telemetry in offline or disabled mode (WANDB_MODE=offlineorWANDB_MODE=disabled), like the rest of the SDK (@dmitryduev in #12733)- In narrow terminals, the workspace hides the run overview sidebar, and then the runs list, when they would leave the charts fewer than 24 columns wide. An 80-column terminal previously showed the charts as a one-column sliver between the two sidebars (@dmitryduev in #12731)
- The top y-axis label of a chart is no longer cut off when it is wider than the other labels, showing for example
+03instead of1.09e+03(@dmitryduev in #12727)