Self-hosted inference
Run your models where your data already lives.
Substrate schedules, scales and observes model workloads across your own GPUs — the same control plane whether that means two machines in a closet or four hundred in a colo.
Move your cursor to interact
This hero uses WebGL, which this browser has turned off. Everything else on the page works normally.
Running in production at
Your GPUs, scheduled properly.
Most teams buy hardware and then leave it idle two-thirds of the day because nothing sits between the models and the metal. Substrate is that layer.
Queue-aware scheduling
Batch jobs fill the gaps left by latency-sensitive traffic. Priority classes are declarative, and pre-emption is graceful rather than a hard kill.
One API across engines
vLLM, TensorRT-LLM, llama.cpp and your own containers sit behind a single OpenAI-compatible endpoint. Swap the engine without touching client code.
Traces you can act on
Per-token latency, cache-hit ratio and per-tenant spend, exported straight to OpenTelemetry. No proprietary dashboard you are forced to live in.
Nothing leaves the boundary
The control plane runs inside your network. Licence checks are offline, and there is a documented air-gapped install for regulated environments.
Median GPU utilisation after migration, across 40 clusters
Added p99 routing latency at 10k requests per second
Median time from first install to production traffic
From bare metal to first token.
Four steps. Most teams finish the first three in an afternoon.
Install the control plane
One binary or a Helm chart. It discovers the nodes you point it at and inventories every GPU it finds.
Register your models
Pull from a registry, a bucket, or a local path. Substrate handles sharding and warm-up.
Set your priority classes
Decide what pre-empts what. Interactive traffic wins by default; batch jobs backfill.
Point your clients at it
Change one base URL. Existing OpenAI SDK code keeps working unmodified.
We had eight A100s sitting at nineteen percent. The scheduling change alone paid for the year.
The air-gapped install actually worked on the first try, which has not been our experience with anything else in this category.
Try it on one node this week.
Free for a single machine, forever. No card, no call with a rep first.