Skip to main content

Single control plane for multi-node vLLM inference — deploy, serve, and manage LLMs across a GPU cluster without Kubernetes.

Project description

Aquila

Single control plane for multi-node vLLM inference. Point-and-click deployments, an OpenAI-compatible gateway, warm caching, live GPU monitoring, and a full deployment lifecycle — without Kubernetes or a managed platform.

Quick start

uv venv && source .venv/bin/activate
uv pip install aquila

Host (management server):

aquila host up --host-ip 0.0.0.0 --host-frontend-port 5173 --host-discover-port 11400

Client (each GPU node):

aquila client up --host-ip <host-ip> --host-discover-port 11400

Open http://<host-ip>:5173 — client nodes appear within seconds. Add --service for persistent systemd services.

Features

  • Deploy and manage models across GPU nodes via Docker or rootless Podman — each runs in the official vllm/vllm-openai container with a specific version, nightly build, or commit hash.
  • OpenAI-compatible gateway (/v1) with stable URLs across node moves, API key auth with per-deployment scoping, and auto-expiring snippet keys.
  • Warm cache — pause idle models to RAM and resume on demand; LRU auto-eviction frees GPU VRAM while keeping weights ready for near-instant restart.
  • Local checkpoints and LoRA adapters — upload from the browser (streamed) or pull from a URL directly onto a node.
  • Live monitoring — GPU utilization, disk usage, deployment status, per-deployment usage metrics, and 48-hour metric history charts.
  • Usage tracking — lifetime tokens, request counts, and average prefill/generation speeds from vLLM's own metrics.
  • Reproducibility manifests — export model, HF revision, seed, vLLM version, image digest, and full config per deployment.
  • Notifications — Slack/webhook alerts when deployments become ready, fail, or are about to expire.
  • Per-GPU maintenance — cordon individual GPUs while the rest of the node keeps serving; optionally drain affected deployments.
  • Extra packages and plugins — install pip packages and upload vLLM plugins per deployment via cached derived images.
  • Reverse proxy support — deploy behind nginx at any sub-path with --base-path.

Best for

  • Research labs and university clusters
  • Teams sharing GPUs across projects
  • Self-hosted multi-model inference

Supported platforms

  • Python 3.10–3.14, Node.js ≥ 23 (host only)
  • Ubuntu 22.04 and 24.04
  • NVIDIA GPUs (H100, A100, L40, RTX 4090, DGX Spark)

Full documentation

Project details


Download files

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

Source Distribution

aquila-0.3.5.tar.gz (1.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aquila-0.3.5-py3-none-any.whl (263.0 kB view details)

Uploaded Python 3

File details

Details for the file aquila-0.3.5.tar.gz.

File metadata

  • Download URL: aquila-0.3.5.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for aquila-0.3.5.tar.gz
Algorithm Hash digest
SHA256 a12f5db6d9a063ba70f54c1e031689460eac3a584384b195d63e8011a8985516
MD5 1c790b0a325d7acd38769847ffda77db
BLAKE2b-256 595532f47207ce73fb29c42c3bd8b132d8c620dedef2f7a2422436184b8079d3

See more details on using hashes here.

Provenance

The following attestation bundles were made for aquila-0.3.5.tar.gz:

Publisher: publish.yml on sisl/aquila

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file aquila-0.3.5-py3-none-any.whl.

File metadata

  • Download URL: aquila-0.3.5-py3-none-any.whl
  • Upload date:
  • Size: 263.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for aquila-0.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 87c1976b2ea4d702d70d1f61a37ef9309070bd4c702cbc67ce8c3e9d07eba8f1
MD5 a52d23893007103096ad81879d3e2ab3
BLAKE2b-256 c53ca708db3da5c5c1fe7df758f60eed097b187667e1afeca601602dfa36aee2

See more details on using hashes here.

Provenance

The following attestation bundles were made for aquila-0.3.5-py3-none-any.whl:

Publisher: publish.yml on sisl/aquila

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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