the launch kit · open source
One command. The box is yours.
snipe.py reads the market once, filters it with your own numbers, checks the fit, and creates the instance. Then the engine boots, the tunnel arms, and the model answers at an address only you hold.
The command.
One bundles read, and the very next thing after a qualifying offer is the create — from the same response, so a listing cannot vanish between the look and the rent.
rehearse first — no key, no billing
# python3 -m pip install pyyaml
python3 package/launch/snipe.py --dry-run then rent
export VAST_API_KEY=... # or ~/.config/vastai/vast_api_key python3 package/launch/snipe.py python3 package/launch/verify.py # prove the engine answers
reach it — mint once, ship the server half, dial the client half
# cargo install --git https://gitea.greyandfast.com/cd/quickquic qqt
qqt gencert -o ./qqt-certs
qqt client \
-l 127.0.0.1:18130:127.0.0.1:30000 \
-r <box-public-ip>:<t-port> --certs-dir ./qqt-certs/client No quoting, no wrapper, no daemon on your laptop. The snipe prints the box's UDP port and your client pair the moment the create returns.
The fit gate is the whole reason the kit exists.
Billing on a rented instance starts at loading, not at the first token. So a model that does not fit costs you a paid hour to discover. The gate answers one question before the create: does the weight divide onto this card count and still leave room to serve?
the law
Weights per card — checkpoint size over the tensor-parallel degree — must sit under 70% of the card's VRAM by default. A launch profile may pin its own headroom over that. A candidate that fails is skipped and named; a market where nothing passes halts with the fit reason, and no create is sent.
The gate answers the weights question only. The tensor-parallel degree must also fit the class's card count, and the ranking enforces that separately.
why the default is 70%
Because someone paid to learn it. GLM-5.3-Flash at tensor-parallel 2 is 92 GiB of weights on one card — it fits on paper under a 96 GiB card, and the load dies at about 87%, on the paid clock, on a French host. At tensor-parallel 4 the same checkpoint is 46 GiB per card and serves.
The gate's origin is that capture. The ceiling is not conservatism; it is the observed cliff with margin on it.The tunnel: qqt.
A QUIC tunnel with mutual TLS, forwarding TCP ports — the semantics of ssh -L and ssh -R, over UDP, with every connection on its own stream. It is its own project now: quickquic.ai carries the crate, the manual and the measured record. In userspace, so it runs where kernel WireGuard cannot: unprivileged container hosts, no /dev/net/tun, no capability flag.
-
One port, one binary.
The server listens on a single UDP port with no target config and no config files at all. The client dials the box's public IP directly — no platform relay, no extra round trip per byte.
-
No certificate, no tunnel.
Mutual TLS on both ends. A cert that is not signed by your CA does not handshake. Leaf certs carry a 365-day window and revocation kills a leaked one at the next handshake, not at expiry.
-
Per-stream recovery.
One lost packet stalls the one connection that lost it, not every multiplexed stream behind a shared window. Under a 3-second first-token stall, 214 chunks kept flowing to other streams with zero retransmits.
-
Observable on a box with no collector.
--stats writes one logfmt line to stderr on an interval; a Prometheus endpoint serves the same numbers. A terminal, a journal, and a redirected log all answer what the tunnel is doing.
What the kit will not do.
The omissions are contractual, not accidental. They are the reason it is safe to point at your own account.
no destroy path
No code path and no HTTP verb stops or terminates anything. The instance is left billing. You destroy it by hand in the marketplace console, which is the only place a destroy should ever happen.
no spot, ever
Every query pins on-demand. An interruptible ask dies with the host's first preemption, and a sniped cell has to hold its rate. Cheap capacity that evaporates is not capacity.
no credentials of ours
Zero personal credential, zero house hostname, zero built-in endpoint in the kit. Your key, your geography, your budget cap, your model choice — all in one params file you own.
no vendor in the runtime
Nothing on the kit's own path phones anywhere. Engine telemetry is switched off in the launch env (DO_NOT_TRACK, HF_HUB_DISABLE_TELEMETRY), and no page of this site makes a third-party request.
What it costs.
The kit is free. What you pay is the marketplace's hourly rate for the box, plus your own bandwidth on the tunnel. Two numbers, and neither is ours.
Four-card flagship cell
$5.49an hour, observed — band $4.70 to $10.00
GLM-5.3-Flash on 4× RTX PRO 6000 at TP4. The live cell in the record billed $5.4907/h listed, $4.9417/h effective after the account credit.
the profile the kit shipsTwo-card baseline cell
$2.94an hour, observed — band $2.14 to $3.47
Qwen3.8-Flash-Next at TP2. The cheap proof: the whole path — filter, gate, create, serve, tunnel — exercised end to end before you trust it with a bigger checkpoint.
the cheap proof profileDatacenter frontier cell
$16.22an hour, observed, on 8× RTX PRO 6000
GLM-5.3 at TP8. The same kit, the same one command; only the hardware class and therefore the hourly moves up. B200 and H200 shapes carry their own caps in the catalog.
when the work needs itEvery price above is a capture from a real launch, not a rate card. The marketplace moves; the catalog records the band it moved in and the date it was observed.
the kit is the same code we run
Fork it, or have someone watch it for you.
The kit is on your keys and $0. The managed fleet is $400 a month per 8-GPU cell and includes the rotation, the ledger and the contract-end roster.