Skip to main content

W&B Core Library

Project description

W&B Nexus: A New Backend for the W&B SDK

PyPI version PyPI - License

What is Nexus?

Greetings, developers!

What is Project Nexus? At the highest level, Nexus is a new backend for the W&B SDK.

Why would anyone care and want to use it? There are multiple reasons, but here are just two:

  • It's faster. A lot faster. We're talking orders of magnitude faster for some operations.
  • It enables clean multi-language support.

nexus is a Golang reimplementation of the W&B SDK internal process, wandb service, based on the lessons learned from the original implementation(s), but starting from a clean slate.

Installation

To install Nexus, you will need to run the following commands:

pip install "wandb[nexus]" --pre

Supported Platforms

Nexus is currently supported on the following platforms:

  • Linux:x86_64, aarch64
  • macOS: x86_64, arm64
  • Windows amd64

If you are using a different platform, you can build Nexus from the source by following the instructions in the contributing guide. Please also open a GitHub issue to let us know that you are interested in using Nexus on your platform, and we will prioritize adding support for it.

Usage example

While Nexus is still in development, you need to explicitly opt-in to use it.

import wandb

wandb.require("nexus")

# Your code here using the W&B SDK

Contributing

Please read our contributing guide to learn to set up your development environment and how to contribute to the codebase.

Feedback

Please give Nexus a try and let us know what you think, we believe it is worth it!

We are very much looking forward to your feedback, especially bug reports. Please open a GitHub issue if you encounter an error, mention that you are using Nexus.

Feature Parity Status

The following table shows the status of the feature parity between the current W&B SDK and Nexus for version 0.17.0b1.

Status legend:

  • ✅: Available: The feature is relatively stable and ready for use.
  • 🚧: In Development: The feature is available, but may be unstable or incomplete.
  • ❌: Not Available: The feature is not yet available.
Category Feature Status
Experiments
init ✅[^E.1]
log
log_artifact
log_code
config
summary
define_metric 🚧[^E.5]
tags
notes
name
alert
save
restore
mark_preempting
resume
reinit
Media
Grouping
anonymous mode
offline mode
disabled mode
multiprocessing
TensorBoard sync
console logging 🚧[^E.8]
system metrics 🚧[^E.9]
system info
auto code saving
Settings 🚧[^E.12]
Login
default entity
team entity
service account 🚧
CLI 🚧[^CLI.1]
Artifacts 🚧[^A.1]
Launch ❌[^L.1]
Sweeps 🚧[^S.1]

[^E.1]: sync_tensorboard requires TensorBoard sync support. [^E.5]: define_metric only supports default summary. [^E.8]: Only raw console logging is supported. [^E.9]: Supported system metrics: CPU, Memory, Disk, Network, NVIDIA GPU. [^E.12]: TODO: list unsupported settings. (anonymous, _flow_control*, _stats_open_metrics_endpoints, ...) [^CLI.1]: The CLI works, but uses the current Python backend under the hood for some commands. Expect the CLI to be rewritten to use the new backend. [^A.1]: Artifacts are partially supported. Expect full support in the near future. [^L.1]: Launch is not yet supported. [^S.1]: Requires verification.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

wandb_core-0.17.0b1-py3-none-win_amd64.whl (4.2 MB view hashes)

Uploaded Python 3 Windows x86-64

wandb_core-0.17.0b1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.8 MB view hashes)

Uploaded Python 3 manylinux: glibc 2.17+ ARM64

wandb_core-0.17.0b1-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.1 MB view hashes)

Uploaded Python 3 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

wandb_core-0.17.0b1-py3-none-macosx_11_0_arm64.whl (4.3 MB view hashes)

Uploaded Python 3 macOS 11.0+ ARM64

wandb_core-0.17.0b1-py3-none-macosx_10_9_x86_64.whl (4.3 MB view hashes)

Uploaded Python 3 macOS 10.9+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page