Skip to main content
One API, every provider

LLM API

Frontier and open-weight language models behind one OpenAI-compatible chat completions endpoint: point any OpenAI SDK or OpenAI-compatible tool at a per-model base URL with one ModelRunner key, and switch models by changing the URL. Billed per token at the published in/out rates, streaming, tool calling and JSON mode included where the model supports them.

6 language models available right now — every one runnable in a free playground or from any OpenAI SDK and OpenAI-compatible tool.

LLM models & pricing

ModelEndpointPriceContextFeatures
GLM-5.2 Fast Previewz-ai/glm-5.2-fast-preview$2.8 in · $8.8 out per 1M tokens1Mreasoning, tool calling, json mode
DeepSeek V4 Prodeepseek/v4$2.4 in · $4.8 out per 1M tokens1Mreasoning, tool calling, json mode
GLM-5.2z-ai/glm-5.2$1.4 in · $4.4 out per 1M tokens1Mreasoning, tool calling, json mode
Gemini 3.5 Flash-Litegoogle/gemini-3.5-flash-lite$0.3 in · $2.5 out per 1M tokens1Mtool calling, json mode
Gemini 3.7 Flashgoogle/gemini-3.7-flash$1.5 in · $7.5 out per 1M tokens1Mreasoning, tool calling, json mode
Gemini 3.5 Flashgoogle/gemini-3.5-flash$1.5 in · $9 out per 1M tokens1Mreasoning, tool calling, json mode

Full catalog on the models page; live per-configuration costs on the pricing page.

Connect any OpenAI SDK in one change

Set base_url to https://queue.modelrunner.run/<owner>/<alias>, pass a ModelRunner API key as the bearer token and use <owner>/<alias> as the model id — the SDK appends /chat/completions itself. Switch models by changing the URL; nothing else changes. Each model page lists verified integrations (LangChain, Vercel AI SDK, LiteLLM, Aider, …) with the exact config.

cURL

# Synchronous, OpenAI-compatible — the reply is in the response (or streams)
curl https://queue.modelrunner.run/z-ai/glm-5.2-fast-preview/chat/completions \
  -H "Authorization: Bearer $MODELRUNNER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "messages": [{ "role": "user", "content": "..." }] }'

Frequently asked questions

How much does an LLM API call cost?

Each language model is billed per token at its own published rates — separate prices per 1M input tokens and per 1M output tokens, shown in the table above and on every model page, with cached input at a reduced rate where the model supports it. Reasoning (thinking) tokens bill at the output rate unless a model prices them separately. There is no subscription and no per-request minimum: a short call bills a fraction of a cent, exact to six decimals, from prepaid credits.

How do I call an LLM through the API?

Every language model is served by a synchronous OpenAI-compatible chat completions endpoint at POST https://queue.modelrunner.run/<owner>/<alias>/chat/completions. Point any OpenAI SDK or OpenAI-compatible tool at base_url https://queue.modelrunner.run/<owner>/<alias> with a ModelRunner API key (Authorization: Bearer <key>) and model <owner>/<alias>; the SDK appends /chat/completions itself and the reply comes back in the response body — or as Server-Sent Events with "stream": true. These models are not submitted to the asynchronous queue path the media models use.

Which tools work with it?

Anything that speaks the OpenAI chat completions API: the official OpenAI Python and Node SDKs, LangChain (ChatOpenAI with a base_url), the Vercel AI SDK (@ai-sdk/openai-compatible), LiteLLM, Aider, and editor tools with an OpenAI-compatible provider setting. Claude Code connects through the same base URL via its Anthropic-compatible /v1/messages endpoint (ANTHROPIC_BASE_URL + ANTHROPIC_AUTH_TOKEN), and any MCP client can call a language model through the ModelRunner MCP server's run_model tool. Each model page lists the integrations we have verified with a real call, each with the exact config to paste.

Do these models support streaming, tool calling and JSON mode?

Streaming is available on every model ("stream": true returns Server-Sent Events ending with data: [DONE]). Tool calling (an OpenAI-format tools array with tool_choice) and JSON mode (response_format {"type": "json_object"}) work wherever the underlying model supports them — the features line on each model page and in the table above says which. Reasoning models also take reasoning_effort to trade thinking depth against cost.

Which LLM should I pick?

Use the cheapest tier for high-volume classification, extraction, tagging and translation; a general Flash-class model for everyday summarisation, rewriting and chat features; and a thinking model (reasoning feature) for non-trivial coding, multi-step agent loops and hard reasoning, where a single-pass answer is often wrong. The open-weight MIT-licensed rows are the option when a closed model is not acceptable. Every model page has a cost estimator and a tier comparison.