Skip to main content

onepool

Turn the laptops in the room into one pool of ML compute.

onepool makes any group of computers on the same local network — Windows, Linux, or macOS; NVIDIA, AMD, integrated graphics, or plain CPUs — into a single ad-hoc cluster for machine learning. Not just inference: real distributed training over ordinary WiFi is the headline feature.

pip install onepool           # every machine, any OS
onepool doctor                # tells you the exact PyTorch install for your GPU
pip install "onepool[train]"  # training stack (transformers, peft, datasets)

# machine A — whoever has the job
onepool train run.yaml --pool --nodes 2   # hosts a pool, prints a session code

# machines B, C — anyone in the room
onepool join amber-fox-42                 # zero config, auto-discovered, starts working

# Ctrl-C → clean teardown. Nothing persists. No accounts. No daemons.

A live dashboard (session code, nodes, loss curve) serves at http://localhost:7070 while the pool runs. No pool handy? onepool train run.yaml alone trains on just your machine.

Why

  • Existing tools don't do this. exo (archived) was inference-only and Apple-first. hivemind targets internet-scale volunteer computing. Ray and Horovod need DevOps expertise and homogeneous clusters. Nothing lets a study group pool three mismatched laptops for an evening of fine-tuning.
  • Heterogeneous is the default, not the edge case. A 6GB RTX 3050 and a 4GB GTX 1650 in the same pool, each doing work proportional to what it can actually handle — measured, not assumed.
  • WiFi is enough. Training uses a DiLoCo-style low-communication algorithm (many local steps, rare synchronization of small pseudo-gradients) plus LoRA adapters and int8-quantized sync, so a sync round is single-digit megabytes, not gigabytes.
  • Session-based by design. A pool exists while its processes run and vanishes when they stop. Disposable clusters, not infrastructure.

Status

Pre-alpha, built in the open. Roadmap:

Milestone Scope Status
M0 CLI skeleton, hardware probe, onepool doctor ✅ done
M1 Zero-config discovery, join/leave, live dashboard ✅ done
M2 Single-node LoRA fine-tuning path ✅ done
M3 Distributed training (DiLoCo) across mixed hardware over WiFi ✅ done
M4 Sync compression, speed-proportional rounds ✅ done
v0.2 Distributed inference planned

Want to try it on your machines right now? Follow TESTING.md — a 15-minute walkthrough from pip install to a two-laptop distributed training run.

Try it now

git clone https://github.com/one-pool/onepool && cd onepool
uv sync
uv run onepool doctor    # what can this machine contribute to a pool?

onepool doctor detects your GPU(s) and tells you the exact PyTorch install command for your hardware — the one genuinely fiddly step on heterogeneous machines.

Design in one paragraph

Every node runs the same process. mDNS (plus a UDP-broadcast fallback) advertises presence; a human-readable session code carries a shared secret so only invited machines join. The node that submits a job coordinates it: it benchmarks each worker on the actual model, shards data proportional to measured throughput, and runs DiLoCo — each worker takes ~100 local AdamW steps, then the pool all-reduces int8-quantized pseudo-gradients (for LoRA runs, single-digit megabytes) into an outer Nesterov-SGD step. Workers that vanish mid-round are dropped and their shard redistributed; workers that appear are folded in at the next sync. The dashboard is a local web page served by the coordinator.

License

AGPL-3.0-or-later. Use it, fork it, learn from it — but derivatives stay open, including network services built on it. The onepool name and logo are project trademarks; see TRADEMARK.md.

Metadata

Release files for onepool 0.6.1

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

Source distribution (sdist)

Source distribution for onepool 0.6.1
File Size Uploaded
onepool-0.6.1.tar.gz 305.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for onepool 0.6.1
File Interpreter ABI Platform
onepool-0.6.1-py3-none-any.whl Python 3 none any Details

Total release size: 361.9 kB

Release files / onepool-0.6.1.tar.gz

Download URL onepool-0.6.1.tar.gz
Size 305.5 kB
Tags Source
SHA-256 checksum
How to use checksums
f64a7ea181f9e3b7968916cd79ff96565f56ab5c3e9a412bd8d175c40ae2186b
BLAKE2b-256 checksum
How to use checksums
bc8284f23b0d503426672cc1961e243a28ffd96849451c47cd3823ed4f9603b0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 11, 2026.

Transparency log

Release files / onepool-0.6.1-py3-none-any.whl

Download URL onepool-0.6.1-py3-none-any.whl
Size 56.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
631d9a0dc1908e0c52d90964215c6da57d177094d8a30eeaed8301b8bdbdead0
BLAKE2b-256 checksum
How to use checksums
9034bdeb14798efb259bdda0825002882f9cce6615779c3491fb4893960b403d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 11, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.6.1 This release

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.0.1

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