Skip to main content

Nodus Python SDK

One interface for running AI workloads on GPUs.

PyPI version Python 3.10+ License: Apache 2.0

Documentation · Parameter reference · Examples · Issues

Provide a container image and a command. Add a budget if you want a workload spending limit. Nodus finds GPU capacity and runs your workload. Use the same Python client for training, fine-tuning, or a batch of experiments.

1. Install and sign in

pip install nodus-compute
nodus login

Requires Python 3.10 or newer. Upgrading an existing installation? Use pip install --upgrade nodus-compute. These docs cover SDK 0.3.x.

Your browser opens Nodus sign-in. Sign in and approve the code matching your terminal. You can then close the tab. The terminal finishes automatically and saves your credentials. Python clients use that login without extra setup.

Running nodus login again reuses a valid login. Use nodus login --force for a fresh sign-in.

For a machine without a browser, use nodus login --no-browser. See authentication for API keys and custom deployments.

Before starting a workload, open Billing and add a payment method. New accounts start with $30 in credits, but a card is required to use them. Adding a card does not purchase credits. If you joined a shared workspace, its administrator manages the payment method.

2. Run your first workload

This GPU smoke test prints the available GPU name. No local script is uploaded. It submits paid compute with a $5 workload budget. Available capacity and account limits still determine admission.

Save this as first_workload.py:

import nodus

with nodus.Client() as client:
    workload = client.run(
        image="pytorch/pytorch:2.6.0-cuda12.4-cudnn9-runtime",
        command=[
            "python", "-c",
            "import torch\n"
            "assert torch.cuda.is_available()\n"
            "print(torch.cuda.get_device_name(0))",
        ],
        budget=5,
    )
    print("Workload:", workload.id)
    done = workload.wait()
    print(done.status, done.cost_now_usd)
    if not done.succeeded:
        raise RuntimeError(f"Workload {done.id} ended: {done.status}")
    print(done.logs())

Run it with python first_workload.py. It prints the workload ID and shows live logs, lifecycle events, and elapsed time while waiting. Training workloads also show reported steps or epochs. The final output includes status, current cost, and GPU name.

run() accepts the workload. wait() waits for a terminal status, so check succeeded before using results. Ctrl+C while waiting requests cancellation and remote resource cleanup.

The script prints the GPU name from the workload logs. For files produced by your own program, see logs and results.

Prefer the terminal?

nodus init
nodus run

init creates nodus.toml with the GPU smoke test and a $5 budget. Review the file, then run submits it and waits for completion. Edit the image, command, and budget to run your own workload. See workload files.

nodus status WORKLOAD_ID
nodus logs WORKLOAD_ID
nodus cancel WORKLOAD_ID

Choose an optional preference

Set optimization="lowest_cost", "lower_cost", "balanced", "faster", or "fastest". The default is balanced. These preferences are recorded, with preference-specific routing coming later.

Set gpu="H100" to require a GPU model, or omit it to let Nodus choose. No runtime estimate is needed. See resource options.

GPU enforcement, live logs, login verification, and spending limits require a compatible Nodus backend. Installing the SDK alone does not enable these server features. See backend compatibility before relying on them with a custom or older deployment.

Run your own code

Upload your script with client.assets.upload() or package it in a container. Choose an image with your dependencies and pass its command to client.run().

For individual options, use the Python reference and parameter reference. See troubleshooting if a run fails.

Contributing

See RELEASING.md for release steps. Licensed under Apache-2.0.

Release files for nodus-compute 0.3.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nodus-compute 0.3.3
File Size Uploaded
nodus_compute-0.3.3.tar.gz 132.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for nodus-compute 0.3.3
File Interpreter ABI Platform
nodus_compute-0.3.3-py3-none-any.whl Python 3 none any Details

Total release size: 204.9 kB

Release files / nodus_compute-0.3.3.tar.gz

Download URL nodus_compute-0.3.3.tar.gz
Size 132.7 kB
Tags Source
SHA-256 checksum
How to use checksums
dd1d3fc174b1670c15171b726f0a7f2fc58c77e528a5cd7195939e338e360d4a
BLAKE2b-256 checksum
How to use checksums
4a52c2b424754b400d6881c23b2d984a8202c98bc4dbd7ccf0046ad27b08e7b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / nodus_compute-0.3.3-py3-none-any.whl

Download URL nodus_compute-0.3.3-py3-none-any.whl
Size 72.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b59dc4bb923df068b321f2623dd8bee5005711cdbd15d4ab164194c4509395b2
BLAKE2b-256 checksum
How to use checksums
bd62c63d138a2856fc7c9cd36605185390094eb791f2e724586a3ec69dd2b315
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.3.7

2 release files

0.3.6

2 release files

0.3.5

2 release files

0.3.4

2 release files

This release

0.3.3 This release

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page