Introducing DefaultModel
copy markdown
DefaultModel is a new inference service that hosts exactly one model: the single best open source model, picked by the community.
Open source models are catching up to their closed source counterparts, but inference for them is scattered across general GPU providers. Those providers constantly swap models, and pricing, reliability and support differ from one to the next. You don't get the consistency of a provider like OpenAI.
Large labs get around this by aggregating their own GPU resources, pointing most of the capacity at their latest model, and migrating users there when a new one ships. We want the same for open source models.
One model, all the GPUs
So we're taking a different approach. We host one model, the best one, voted by you, the community. We host it for a quarter, and every quarter you vote to keep it or replace it based on the latest releases.
That constraint is the product. With a single model to serve:
- All GPU capacity goes into one deployment instead of a catalog
- Serving is tuned for that one model, not averaged across fifty
- Performance stays consistent across every request, with no degradation in quality
- When a better model wins the vote, you migrate by changing one model ID instead of rewriting an integration
Features
- Consistent performance across every request
- Zero data retention by design, hosted in America 🇺🇸
- High reliability with 99.9% uptime and no degraded serving
- Weights never degrade: what you evaluate is what serves in production
Launching with GLM 5.3 Flash
The first DefaultModel is GLM 5.3 Flash. It benchmarks against closed source models while keeping one of the best price-to-performance ratios available, and the community is already putting it to work through OpenRouter and other gateways.
| Spec | Value |
|---|---|
| Parameters | 320B MoE (18B active) |
| Context | 1M tokens |
| Modalities | Text, Image, Video |
| Price in / out | $0.50 / $1.00 per 1M tokens |
| Cached input | $0.15 per 1M tokens |
Getting started
- Sign in at defaultmodel.ai and create an API key
- Point any Chat Completions-compatible SDK at the endpoint
DefaultModel is Chat Completion standard compatible, so the OpenAI SDK, Vercel AI SDK, LangChain or plain HTTP all work. The model ID is the hosted model's name, currently glm-5.3-flash.
OpenAI SDK
Vercel AI SDK
LangChain SDK
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.defaultmodel.ai/v1",
apiKey: process.env.DEFAULTMODEL_API_KEY,
});
const completion = await client.chat.completions.create({
model: "glm-5.3-flash",
messages: [{ role: "user", content: "Explain mixture-of-experts models in one paragraph." }],
});
console.log(completion.choices[0].message.content);Streaming
Streaming works out of the box with every SDK. Same call, one flag.
OpenAI SDK
Vercel AI SDK
LangChain SDK
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.defaultmodel.ai/v1",
apiKey: process.env.DEFAULTMODEL_API_KEY,
});
const stream = await client.chat.completions.create({
model: "glm-5.3-flash",
messages: [{ role: "user", content: "Explain mixture-of-experts models in one paragraph." }],
stream: true,
});
for await (const chunk of stream) {
process.stdout.write(chunk.choices[0]?.delta?.content ?? "");
}Use it in your coding tools
Coding agents that accept a custom OpenAI-compatible provider work with the same two values: base URL https://api.defaultmodel.ai/v1 and model ID glm-5.3-flash. In Cursor, open Settings → Models, add glm-5.3-flash as a custom model, then enable Override OpenAI Base URL with that URL and save. The same setup covers Cline, Roo Code, Continue, Aider, and any other tool with an OpenAI-compatible endpoint.
OpenCode and Zed configure it in their config files:
OpenCode
Zed
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"defaultmodel": {
"npm": "@ai-sdk/openai-compatible",
"name": "DefaultModel",
"options": {
"baseURL": "https://api.defaultmodel.ai/v1",
"apiKey": "{env:DEFAULTMODEL_API_KEY}"
},
"models": {
"glm-5.3-flash": {
"name": "GLM 5.3 Flash"
}
}
}
}
}- OpenCode: save the config, run
/models, and pick GLM 5.3 Flash.{env:DEFAULTMODEL_API_KEY}reads the key from your environment. - Zed: enter the API key under Agent Settings → LLM Providers, or export it as
DEFAULTMODEL_API_KEY, which Zed derives from the provider name.
How voting works
Every quarter we list the strongest open source models on the website, based on performance and popularity. You vote for the one you want hosted, one vote per person. A challenger only takes the spot if it wins; the current model doesn't lose by default.
Models can join the ballot at any time as they're released, so a hot new release doesn't have to wait for the next cycle. The winner gets hosted for the quarter.
How migration works
We announce any deprecation one week before the end of the quarter. The new model goes live immediately after the announcement, and the old model keeps serving for a month after that, so you can switch when you're ready rather than overnight.
Because every hosted model speaks the same Chat Completions API, switching is changing the model ID. When a new model takes over, your update is one string: from glm-5.3-flash to whatever wins the next vote.
Takeaway
- One model: all capacity behind a single deployment, tuned for it
- Your pick: the community votes each quarter, and a challenger only wins if it beats the incumbent
- No lock-in: Chat Completions standard, so switching is one model ID
- Migration window: a month of overlap after every deprecation announcement
Open source models caught up. Inference for them shouldn't feel like a lottery. DefaultModel gives open models what large labs give their own: one model, all the capacity, and a community deciding what ships next.
- Get an API key
- Vote for next quarter's model
- GLM 5.3 Flash on Hugging Face
- Join the Discord