Cover: Model library. GLM-5.3: specs, benchmarks, and how to run it on Lyceum.

For a coding agent, the repeated-input price decides most of the bill. Each turn resends the same history, and that history bills at $0.26 when it comes from the cache.

Is GLM-5.3 worth moving to from GLM-5.2, and what does one agent turn cost? The question comes up once an agent runs thousands of turns a day. Small price gaps then add up, and so do small quality gaps.

What's new

Z.ai released GLM-5.3 on 14 August 2026. It is the same pretrained model as GLM-5.2, trained further by Z.ai. Z.ai says every gain comes from that extra training.

Z.ai reports a 50% improvement over GLM-5.2 on its own coding test, Z.ai Code Bench. That test is not public, so the table below shows public tests from the same model card. These are Z.ai's numbers, run with reasoning at its maximum. We have not re-run them.

Benchmark (what it tests)GLM-5.3GLM-5.2
Terminal Bench 3.0 (long tasks in a command-line terminal)28.34.6
DeepSWE v1.1 (fixing bugs in real code repositories)66.946.2
SWE-Marathon v1.1 (very long software projects)42.519.4
CyberGym (finding security flaws in source code)84.577.2
Humanity's Last Exam with tools (hard expert questions)62.554.7

The biggest jumps in the table are on long, multi-step work. Scores from a vendor's own setup do not show how the model handles your prompts.

Our own change came on 1 October 2026. We now send each GLM-5.3 request, where we can, to a GPU that already holds the start of its prompt. That saves GPU time, so we lowered the prices. We call the method cache-aware routing: repeat turns go to the copy of the model that already holds their history.

Specs and context window

The context window is how many tokens one request can hold: prompt, history and answer together. For GLM-5.3, it is 1M tokens.

SpecGLM-5.3 on our API
Model IDz-ai/glm-5.3
Input and outputText in, text out
Context window1M tokens
Longest answer per request131,072 tokens
Time limit per request300 seconds
ReasoningOn by default
Tool callingSupported
Parameters744B total, 40B active per token
LicenceGLM-5.3 License
Processing regionEU-hosted

GLM-5.3 is a mixture of experts (MoE). Each token passes through only a small part of the network: 40 billion of its 744 billion parameters. So each token takes far less computing than the full size suggests.

Reasoning means the model writes out its working before it answers. That working counts toward your output tokens and your max_tokens limit. GLM-5.3 does not read images. An image request returns a 400 error.

The licence lets you use, change and resell the model. Only API providers with over $10 billion in yearly revenue need a security review by Z.ai first.

We also measure speed in our own status checks. Over the seven days before 23 October 2026, the median time to first token (the wait before the first token arrives) was 295 ms. That first token can be a reasoning token, so the visible answer starts later. Output then ran at 77 tokens per second. At that rate, 1,000 tokens take about 13 seconds. Current numbers are on the GLM-5.3 model page, and incidents show on our status page.

Pricing

GLM-5.3 is billed per token, with no base fee. Prices are in US dollars per million tokens, as listed on 23 October 2026.

Token typePrice per 1M tokensBefore 1 October 2026
Input$1.40$1.75
Cached input$0.26$0.44
Output$4.40$4.50

Cached input is the part of a prompt that matches the start of a recent request exactly. We reuse the work already done on it, which is called prompt caching. That part bills at the cached rate. Caching is automatic but best effort. A request that misses pays the full input price.

Here is one agent turn as a worked example. The token counts are hypothetical. The turn resends 40,000 tokens of system prompt, tool definitions and history. It adds 2,000 new tokens and writes 1,000 tokens of output.

Cache hit:  40,000 x $0.26/1M + 2,000 x $1.40/1M + 1,000 x $4.40/1M = $0.0176
Cache miss: 42,000 x $1.40/1M + 1,000 x $4.40/1M                    = $0.0632
Same turnCost per turnCost per 1,000 turns
GLM-5.3, history cached$0.0176$17.60
GLM-5.3, no cache$0.0632$63.20
GLM-5.2, history cached$0.0227$22.70

A miss costs about 3.6 times as much as a hit. On a hit, GLM-5.3 costs about 22% less than GLM-5.2 for the same turn. The example favours caching, because it assumes the history never grows. In a real agent, each new output and tool result bills as fresh input the first time it is resent. It also assumes 1,000 output tokens. A turn with long reasoning writes more and costs more.

Stacked horizontal bars for one calculated agent turn of 40,000 history tokens, 2,000 new tokens and 1,000 output tokens. GLM-5.3 costs $0.0176 with the history cached (highlighted) and $0.0632 with nothing cached. GLM-5.2 costs $0.0227 cached and $0.0675 uncached. Each bar splits into resent history, new input and output.
In this calculated example at our 23 October 2026 list prices, a GLM-5.3 turn costs $0.0176 when its history comes from the cache and $0.0632 when nothing does.

How long does the cache last? A prompt start stays in GPU memory only until newer work pushes it out. In our test calls, quick follow-ups almost always hit the cache. After a pause of one to three minutes, it was hit or miss. Agents that call a tool and come straight back gain the most.

How to call it

Lyceum is a sovereign European AI inference provider for open-source models. That means the service is built and run in Europe. Our serverless models, which you pay for per token with no servers to manage, run in Paris and Finland. We don't keep your prompts or outputs, and we never use them for training.

You call GLM-5.3 with the OpenAI SDK. Set LYCEUM_API_KEY to your API key, then point the client at our base URL. The example also prints how many input tokens came from the cache.

import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["LYCEUM_API_KEY"],
    base_url="https://api.lyceum.technology/openai/v1",
)

response = client.chat.completions.create(
    model="z-ai/glm-5.3",
    messages=[
        {"role": "system", "content": "You are a code reviewer."},
        {"role": "user", "content": "Review this diff for bugs: ..."},
    ],
    max_tokens=16000,
    stream=False,
)

print(response.choices[0].message.content)
details = response.usage.prompt_tokens_details
print(details.cached_tokens if details else 0)

Three settings matter in practice, besides a generous max_tokens:

  • Reasoning: leave it on. Setting reasoning_effort to "none" does not remove the working today. The working moves into the answer text instead.
  • Tools: pass tools in the standard OpenAI format. GLM-5.3 does not enforce tool_choice set to "required" or to a named function. If message.tool_calls is empty, your agent needs a fallback.
  • Long answers: set stream to true, so tokens arrive as the model writes them. Streaming keeps the connection from timing out on your side, but every request still stops after 300 seconds. At 77 tokens per second, that is about 23,000 tokens, well below the 131,072-token answer limit.

The cached-tokens field is missing when nothing came from the cache, so read it with a fallback, as above. The serverless inference docs list every request field and limit.

GLM-5.3 also works in Claude Code, Anthropic's coding agent for the terminal. Point it at our Anthropic-compatible endpoint, which accepts the same requests Claude Code sends to Anthropic.

export ANTHROPIC_BASE_URL="https://api.lyceum.technology/anthropic"
export ANTHROPIC_AUTH_TOKEN="$LYCEUM_API_KEY"
export ANTHROPIC_MODEL="z-ai/glm-5.3"
claude

Our guide to using the Lyceum API in Claude Code covers CI setups and common errors.

Where it fits in the Lyceum catalogue

GLM-5.3 is the newest full-size GLM model on our models page. The table compares it with its GLM neighbours, as listed on 23 October 2026.

ModelInput / cached / output per 1M tokensMedian speed (7 days to 23 Oct)
GLM-5.3$1.40 / $0.26 / $4.40295 ms first token, 77 tokens/s
GLM-5.3 Instantsame as GLM-5.3not listed
GLM-5.2$1.50 / $0.38 / $4.50398 ms first token, 55 tokens/s
GLM-5.3 Flash$0.20 / $0.05 / $0.50280 ms first token, 45 tokens/s

GLM-5.3 Instant is GLM-5.3 without a separate reasoning step, at the same price. Its answers still start with a short line of working that ends in a closing </think> marker. Remove everything up to that marker, or use GLM-5.3 with reasoning on. We are fixing it.

GLM-5.2 has the same size, costs a little more and ran slower in our checks. GLM-5.3 Flash is a smaller model that costs about a sixth as much per cached turn. It also reads images.

For new coding agents, GLM-5.3 is the GLM model we would test first. Move high-volume steps to GLM-5.3 Flash where your tests show it gets them right. The weights are also open, in FP8, a compact 8-bit number format. Our article on running GLM in Europe covers the server you would need to host them yourself. To start, create an API key and run the example above on Serverless Inference.

Sources

  1. huggingface.co
  2. github.com
  3. huggingface.co