Idle GPUs, working together
Built on pooled compute. Powered by open-weight models.
Delivering batch AI at campus scale.
Everything a batch needs
From upload to download, the pool does the rest.
Batch API
Upload a JSONL of prompts, submit a batch, download results. OpenAI-compatible — existing code migrates by changing one line.
Distributed GPU workers
Jobs route to real GPUs pooled from labs and clusters. Workers pull work, so they run anywhere — even behind campus NAT.
Organizations & teams
A lab is an org. Owner, admin and viewer roles, shared worker keys, and every job attributable to the team that ran it.
Usage analytics
Requests, models, and per-worker contribution tracked from day one — the utilization evidence your institution wants.
One-line migration
OpenAI-compatible REST
Files and batches, verbatim. Your SDK already speaks it.
Model catalogue
Pick a pinned model id from /v1/models — copy, paste, run.
Dashboard
Submit, track, and download without touching curl.
Built for machines that come and go
Pull-based by design
Workers poll for work and disappear without ceremony. Intermittent lab machines are a feature, not a failure.
Fault tolerant
Silent workers are detected in minutes and their jobs requeued automatically. Batches survive the hardware they run on.
Curated model catalogue
Every servable model is a pinned artifact — weights, quantization, runtime. Reproducible by construction.
Put idle GPUs to work
It is software you host — a commons, not a cloud bill.
Home
Who are you?¶
Pick the one that describes why you are here. Each guide is meant to be read front to back, once. Everything assumes someone runs their own deployment — Sheshnag is software you host, not a service you sign up for.
I have prompts to run¶
Someone already runs a deployment and gave you a URL and a key. You swap
base_url, submit a JSONL batch, poll it, download the results.
→ Run your prompts on Sheshnag
I have a GPU to lend¶
You want your machine to pick up jobs from a deployment someone else runs. One
command, one key, about ten minutes — no repository clone, no Python, no
database, no sudo.
I want to change the code¶
Frontend, backend and daemon running locally, tests green, and the contract in front of you. It carries the process too — branching, review, who merges.
I want to run Sheshnag for my institution¶
You are standing up the control plane on your own premises: TLS, an admin account, the model catalogue, the first provider onboarded.
→ Run Sheshnag for your institution
Reference¶
Look these up; do not read them front to back.
| Page | What it answers |
|---|---|
| OpenAI compatibility | Which OpenAI parameters are honoured, ignored, or rejected |
| Structured outputs | Getting schema-constrained JSON out of a batch |
| Model catalogue | How a model becomes servable — curation, pinning, digests |
| Data model | Tables, relationships, and why they are shaped that way |
| Google OAuth | Configuring Google sign-in for a deployment |
| Machine inspection | What the daemon detects about a host, and how |
Every reference page is dated and verified against the code it describes. Where a document and the code disagree, the code is the fact and the document is the bug — please open an issue.
Elsewhere in the repository¶
These live outside the documentation site because they address contributors and agents rather than product readers:
The component READMEs are stubs now: the API contract is API reference and the daemon's internals are Daemon internals.
Sheshnag is licensed under the Apache License 2.0 — see
LICENSE.