thetaserve
One command to launch an open-weight model with vLLM on a rented GPU and get back a secured, OpenAI-compatible endpoint.
Status: beta. Runpod only. On 2026-10-22 it served Qwen3.8-27B from a 48 GB A40 at $0.59/h to a coding agent. Pods stop themselves when idle (
--idle, default 30 min) or after--max-life(default 10 h). See the build order.
Why
Strong open models such as Qwen3.8-27B and Gemma 4 31B run well on one 24-80 GB GPU. But the correct vLLM settings for each model and card take trial and error to find. You name a model and a use case. thetaserve reads the model's Hugging Face metadata and the provider's GPU prices and stock. Then it shows the cheapest GPU and settings that fit, and you select one.
Install
Prerequisite: uv. To contribute, see CONTRIBUTING.md.
uv tool install thetaserve
Quickstart
Show the options for Qwen3.8-27B as a coding model, and what thetaserve would launch:
thetaserve up --provider runpod --model qwen3.8-27b --dry-run
This shows the cheapest GPU for each weight and KV-cache precision, the memory estimate, the exact vllm serve command and the Runpod request body. It creates nothing. It needs no credentials and no network: without a Runpod key, it uses a dated sample of Runpod's GPU prices and stock and of the model's Hugging Face data, and tells you so. Run thetaserve setup for live options.
Usage
thetaserve list models # also: providers
thetaserve setup # store your Runpod API key (and optional Hugging Face token)
thetaserve up --provider runpod --model qwen3.8-27b # pick from the options
thetaserve status # endpoint, uptime, cost so far
eval "$(thetaserve env)" # OPENAI_BASE_URL and OPENAI_API_KEY for your tools
thetaserve logs -f
thetaserve stop # pause compute, keep the weights cache
thetaserve down # destroy the pod; add --purge to delete the cache volume
On Windows, thetaserve env prints PowerShell syntax; run thetaserve env | Invoke-Expression.
thetaserve reads secrets from RUNPOD_API_KEY and HF_TOKEN first, then from the system keyring. When no keyring is available (headless Linux, containers), setup stores them in a mode-600 file and tells you.
up options: --use sets the use case (coding, chat, research). --context sets the context length. --kv-cache-dtype sets the KV-cache precision. --extra-arg (repeatable) gives extra flags to vLLM. --device "NVIDIA A40" shows only the options on that GPU. See the CLI reference.
To add or change presets, models or providers, put a YAML file with the same name in your user config directory (on Linux ~/.config/thetaserve/). Its entries replace built-in entries with the same key. See Override the catalogue.
Links
- Documentation: tutorial, how-to guides, reference, explanation
- Design and decision log
- Contributing
- Changelog
- Security policy
License
Metadata
Release files for thetaserve 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| thetaserve-0.1.0.tar.gz | 141.1 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| thetaserve-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 192.9 kB
Release files / thetaserve-0.1.0.tar.gz
| Download URL | thetaserve-0.1.0.tar.gz |
|---|---|
| Size | 141.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
623a2f6b8d33e405148cb6c1b8d41e22de58ca542947052b396751cae26ff135
|
|
BLAKE2b-256 checksum How to use checksums |
450021b0ba2926127eed832afcfe5cab978b4c042e952562d6c262f32f1e2e49
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 23, 2026.
Transparency logRelease files / thetaserve-0.1.0-py3-none-any.whl
| Download URL | thetaserve-0.1.0-py3-none-any.whl |
|---|---|
| Size | 51.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e000acae8021810e4238b0bfa363973c027011579869e0d68b5f9face6d44ab5
|
|
BLAKE2b-256 checksum How to use checksums |
d67dc9751447809688480a9d7fd2003dea2d78aea7d8d7f616e995dc515de4d6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 23, 2026.
Transparency logSecurity for thetaserve 0.1.0
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.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for thetaserve-0.1.0.tar.gz
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 Oct 23, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.