Overview
Introduction
Stac runs open-source AI models in production for one fixed monthly price — never per token, never cut off mid-request.
Start here
Explore the guides
Stac is inference infrastructure for open-source language models. You pick a plan, we run the model that plan is built for on dedicated capacity, and you pay a flat monthly price for that capacity. There's no per-token meter, no surprise bill at the end of the month, and no DevOps work on your side.
The API is OpenAI-compatible, so most clients work by changing two lines: the
base URL and the API key. Anthropic-compatible clients (like Claude Code) work
the same way, pointed at /v1/messages instead.
curl https://api.trystac.com/v1/chat/completions \
-H "Authorization: Bearer $STAC_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "your-stack-model",
"messages": [{ "role": "user", "content": "Hello" }]
}'from openai import OpenAI
client = OpenAI(
base_url="https://api.trystac.com/v1",
api_key=os.environ["STAC_API_KEY"],
)
response = client.chat.completions.create(
model="your-stack-model",
messages=[{"role": "user", "content": "Hello"}],
)import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.trystac.com/v1",
apiKey: process.env.STAC_API_KEY,
});
const response = await client.chat.completions.create({
model: "your-stack-model",
messages: [{ role: "user", content: "Hello" }],
});Already have an OpenAI or Anthropic integration? Point it at
https://api.trystac.com/v1 and it keeps working — same request shape, same
streaming format, your own model. The model field is set by your stack, not
by the request — you can leave it as-is when switching providers.
Why fixed pricing
Per-token pricing makes cost a function of usage you don't control. A retry loop, a long context, or a spike in traffic all land on the same invoice, and the only way to cap it is to cap your product.
Stac inverts that. You reserve capacity — a stack — and the stack costs the same whether it serves ten requests a day or ten thousand. What varies is latency under load, not price, and that's something you can plan for.
| Per-token providers | Stac | |
|---|---|---|
| Billing unit | Tokens in + tokens out | Reserved capacity |
| Cost predictability | Varies with traffic | Fixed monthly |
| Request cutoffs | Truncated on quota | None |
| Cold starts | Common on shared tiers | Never — capacity is reserved ahead of time |
| Model choice | Provider's catalog | Chosen per plan; custom on Enterprise |
What you get
A stack is a deployment with its own model, its own system prompt, its own knowledge base, and its own API keys. Nothing about your configuration is shared with other customers.
- Reserved capacity. Your traffic never competes with another customer's for a request slot.
- OpenAI- and Anthropic-compatible API. Chat completions, streaming, function calling, both request shapes.
- Behavior configuration. System prompt and generation parameters, editable from the dashboard without a redeploy.
- Knowledge base. Upload documents; retrieval is handled for you.
- Usage logs. Every request tracked by model, status, tokens, and duration.
Next steps
Create a stack
Pick a plan. Provisioning takes a few minutes.
Generate an API key
Keys are scoped to a single stack and shown once, at creation.
Send your first request
Follow the quickstart — it takes about five minutes.

