Skip to content

GLM-5.3 Flash

Call GLM-5.3 Flash through the OpenAI-compatible Chat Completions API.

ItemValue
Base URLhttps://api.hop-base.com/v1
Modelglm-5.3-flash
ChatPOST /v1/chat/completions

Use a key that includes the GLM Official API group; keys without it get a 404.

curl https://api.hop-base.com/v1/chat/completions \
  -H "Authorization: Bearer sk-your-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "glm-5.3-flash",
    "temperature": 1,
    "top_p": 0.95,
    "reasoning_effort": "max",
    "messages": [{
      "role": "user",
      "content": "Hello, introduce yourself"
    }]
  }'

Model and specifications

Zhipu released and open-sourced GLM-5.3 Flash on 2026-08-26; it is the first natively multimodal member of the GLM-5 series.

ItemValue
Model IDglm-5.3-flash
ArchitectureMoE, 320B total parameters, 18B active per token
AttentionHybrid sparse plus linear attention
Context window1M tokens
Max output128K tokens
Input modalitiesText, image, video, file
OutputText
ThinkingAlways on; returned in reasoning_content

Compared with GLM-5.3, attention compute is 3.01x lower and the KV cache 4.44x smaller.

Group and setup

  • glm-5.3-flash is sold through the GLM Official API group. When creating or editing an API key under API Keys in the console, add this group to the key; only a key that includes it can call the model.
  • Keys without this group get a clear 404 when calling glm-5.3-flash; add the group to an existing key in the console, or create a new key with it.
  • Rates take Zhipu's official list price for this model as their basis and are published on the pricing page; your own effective rate is shown in the signed-in model catalog.
  • The same group also sells glm-5.3; see GLM-5.3.

Fill in your client like this:

FieldValue
API address / Base URLhttps://api.hop-base.com/v1
EndpointPOST /v1/chat/completions only — /v1/responses and /v1/messages are not supported and return 400
API Keysk-your-key
Modelglm-5.3-flash
API formatOpenAI Chat Completions (routing required)

Only CC Switch and other routing-capable clients ask for the API format.

Request parameters

For POST /v1/chat/completions. The gateway only rejects empty messages and sets no range on the rest; "recommended" values are the ones Zhipu publishes for this model.

ParameterRequiredType & limitsDefaultDescription
modelRequiredglm-5.3-flash—Exact match
messagesRequiredNon-empty array; text, image, video, and file content—Missing or empty returns a gateway 400
max_tokensOptionalInteger, up to 128K (official limit)Service defaultShared by thinking and answer
reasoning_effortOptionallow / high / maxService defaultRecommended max; thinking can only be on
temperatureOptionalNumber; no gateway rangeService defaultRecommended 1
top_pOptionalNumber; no gateway rangeService defaultRecommended 0.95
tools, tool_choiceOptionalAs in OpenAIautoSee Tool calling
tool_streamOptionalBooleanfalseRecommended true when streaming with tools
streamOptionalBooleanfalsetrue returns server-sent events
stream_options.include_usageOptionalBooleanfalseMust be true to get usage when streaming

For every field, see API reference · Chat Completions and pick GLM-5.3 Flash.

Streaming and usage

Send "stream": true. To get token counts, also add stream_options.include_usage; the final chunk then carries a usage object.

When the request also includes tools, turn on tool_stream: true so tool-call arguments stream incrementally instead of arriving in one block at the end.

curl https://api.hop-base.com/v1/chat/completions \
  -H "Authorization: Bearer sk-your-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "glm-5.3-flash",
    "stream": true,
    "stream_options": {"include_usage": true},
    "tool_stream": true,
    "messages": [{"role": "user", "content": "Write a haiku about latency"}]
  }'

Tool calling

Function calling uses the standard OpenAI fields. Send tools, read choices[].message.tool_calls from the response, run the function, and send the result back as a tool message.

curl https://api.hop-base.com/v1/chat/completions \
  -H "Authorization: Bearer sk-your-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "glm-5.3-flash",
    "messages": [{"role": "user", "content": "What is the weather in Tokyo?"}],
    "tools": [{
      "type": "function",
      "function": {
        "name": "get_weather",
        "description": "Get the current weather for a city",
        "parameters": {
          "type": "object",
          "properties": {"city": {"type": "string"}},
          "required": ["city"]
        }
      }
    }]
  }'

Thinking output

The model always thinks; there is no switch to turn it off. The trace is returned in reasoning_content alongside the answer in content, and in streaming mode it arrives as delta.reasoning_content.

Render it separately, or drop it, but do not concatenate it into the answer. Size max_tokens for the answer and the trace together.

Next steps