GLM-5.3 Praktische Gids: Altijd-aan Denken, Drie Inspanningsniveaus en de API Ondersteuningsmatrix

AIHubMix7 min leestijd
GLM-5.3 Praktische Gids: Altijd-aan Denken, Drie Inspanningsniveaus en de API Ondersteuningsmatrix

Titel: GLM-5.3 Praktische Gids: Altijd-Aan Denken, Drie Inspanningsniveaus & API Ondersteuningsmatrix

Beschrijving: Augustus 2026 GLM-5.3 gids: altijd-aan denken met drie niveaus van redeneerinspanning, redeneer samenvattingen, parallelle tool-aanroepen, gestructureerde output en automatische caching — met geverifieerde AIHubMix Chat / Responses / Messages voorbeelden.


Dit artikel behandelt de belangrijkste API-wijzigingen en gebruiksnotities voor GLM-5.3. GLM-5.3 is het vlaggenschipmodel van Z.ai dat op 2026-08-14 is uitgebracht — het gebruikt hetzelfde basismodel als GLM-5.2, waarbij elke verbetering voortkomt uit post-training. Op AIHubMix is de model-ID coding-glm-5.3 (momenteel een beperkte preview-route), beschikbaar via de Chat Completions, Responses en Claude-compatibele Messages API's. Zie ook: de officiële Z.ai release blog.

De "Geverifieerde" conclusies en voorbeeldantwoorden in elke sectie komen van daadwerkelijke aanroepen die op 2026-08-14 zijn gedaan via de AIHubMix API's (Chat Completions / Responses / Messages).

1. Model Specificaties in een Oogopslag

Item Waarde
Contextvenster 1M tokens (officiële exacte waarde: 1.048.576)
Max output 128K (max_tokens geverifieerd plafond: 131.072 — overschrijding retourneert 400)
Invoermodaliteiten Tekst
Denken Altijd aan, kan niet worden uitgeschakeld; reasoning_effort heeft drie niveaus — low / high / max, standaard max
Relatie tot GLM-5.2 Zelfde basismodel, geüpgraded via post-training: veel sterkere codering en prestaties bij langetermijntaken, plus opkomende cybercapaciteiten
AIHubMix model-ID coding-glm-5.3 (beperkte preview-route; we zullen opvolgen zodra de officiële commerciële API wordt gelanceerd)
Geverifieerd: max_tokens: 999999 retourneert 400 met het geldige bereik dat in de foutmelding is vermeld — het plafond is echt gevalideerd, niet stilzwijgend afgekapt.
# max_tokens=999999 -> HTTP 400
"max_tokens parameter ongeldig: waarde moet binnen [1,131072] zijn"

2. GLM-5.3 vs GLM-5.2: Altijd-Aan Denken, Intensiteit via reasoning_effort

Item GLM-5.2 GLM-5.3
Basismodel Identiek aan 5.2 (alle verbeteringen komen van post-training)
thinking.type enabled / disabled — kan worden uitgeschakeld enabled alleen — kan niet worden uitgeschakeld
reasoning_effort 7-waarde compatibiliteitsmapping (effectieve niveaus: max/high) Drie niveaus low / high / max, standaard max
Positionering Algemeen vlaggenschip Versterkt voor codering en langetermijn agenttaken, met opkomende cybercapaciteiten

Dit zijn de twee belangrijkste API-wijzigingen in GLM-5.3 ten opzichte van GLM-5.2:

  1. thinking.type ondersteunt disabled niet meer — denken kan niet worden uitgeschakeld. Officiële migratieadvies: applicaties die vroeger {"type": "disabled"} verzonden, moeten overschakelen naar {"type": "enabled"} en reasoning_effort instellen op "low".
  2. reasoning_effort versmalt naar drie niveaus: low (licht) / high (verbeterd) / max (diep, de standaard). De 7-waarde compatibiliteitsmapping uit het GLM-5.2-tijdperk is niet meer van toepassing; Z.ai raadt max aan voor coderingstaken.
Geverifieerd: het verzenden van thinking: {"type": "disabled"} via AIHubMix retourneert 200 en denken gebeurt nog steeds (reasoning_content wordt zoals gebruikelijk geretourneerd) — de waarde wordt automatisch geconverteerd volgens de officiële kanaalsemantiek in plaats van afgewezen. Als uw client afhankelijk was van "denken uitschakelen om tokens te besparen", schakel dan over naar reasoning_effort: "low".

Geverifieerd: waarden buiten de enum voor reasoning_effort retourneren ook 200 zonder een fout (terugvallen op de standaard max volgens de officiële documentatie); low versus max toont de verwachte lichtere-denken trend (27 versus 39 redeneertokens op dezelfde rekenvraag).

Chat Completions

Denken inhoud wordt geretourneerd in het reasoning_content veld; in streaming arriveert het als delta.reasoning_content.

from openai import OpenAI

client = OpenAI(
    base_url="https://aihubmix.com/v1",
    api_key="<AIHUBMIX_API_KEY>",
)

completion = client.chat.completions.create(
    model="coding-glm-5.3",
    reasoning_effort="max",          # low / high / max, standaard max
    extra_body={"thinking": {"type": "enabled"}},
    messages=[
        {"role": "user", "content": "Bereken de vierkantswortel van (17*23-19*11), naar beneden afgerond. Alleen cijfers."}
    ],
)

print(completion.choices[0].message.reasoning_content)
print(completion.choices[0].message.content)   # Geobserveerd: "13"
Geverifieerd: usage.completion_tokens_details.reasoning_tokens rapporteert het gebruik van denken — 27 met reasoning_effort="low", 39 met "max" op dezelfde vraag.

Responses

Denken inhoud komt terug als een reasoning output item, met de tekst binnen de summary array als summary_text.

from openai import OpenAI

client = OpenAI(
    base_url="https://aihubmix.com/v1",
    api_key="<AIHUBMIX_API_KEY>",
)

response = client.responses.create(
    model="coding-glm-5.3",
    input="Wat is de hoofdstad van Frankrijk? Alleen de stadsnaam.",
)

# Geobserveerde response.output item types: ["reasoning", "message"]
# redeneer item: {"type": "reasoning", "summary": [{"type": "summary_text", "text": "De gebruiker vraagt..."}]}
# usage.output_tokens_details.reasoning_tokens: 80
Geverifieerd: de standaardaanroep (geen reasoning parameter) bevat al het reasoning item met summary_text — geen expliciete opt-in nodig.

Messages

Denken inhoud wordt geretourneerd als native thinking inhoudsblokken.

from anthropic import Anthropic

client = Anthropic(
    api_key="<AIHUBMIX_API_KEY>",
    base_url="https://aihubmix.com"
)

response = client.messages.create(
    model="coding-glm-5.3",
    max_tokens=4096,
    messages=[
        {"role": "user", "content": "Wat is de hoofdstad van Frankrijk? Alleen de stadsnaam."}
    ],
)

# Geobserveerde response.content blok types: ["thinking", "text"]
Geverifieerd: denken blokken worden standaard geretourneerd; thinking: {"type": "disabled"} op deze API retourneert ook 200 met denken dat nog steeds gebeurt (consistent met de officiële "uitgeschakeld wordt omgezet naar laag, verzoek gaat door" kanaalsemantiek).

3. Tool Aanroepen en Parallelle Tools

Functie-aanroepen zijn geverifieerd werkend op alle drie de API's; op de Responses API hebben we ook parallelle tool-aanroepen binnen een enkele beurt waargenomen (Z.ai verklaart expliciet supports_parallel_tool_calls: true voor GLM-5.3). Stroomopwaartse limieten: tot 128 functies in tools; tool_choice ondersteunt van nature alleen auto.

Chat Completions

completion = client.chat.completions.create(
    model="coding-glm-5.3",
    messages=[{"role": "user", "content": "Wat is het weer in Beijing vandaag?"}],
    tools=[{
        "type": "function",
        "function": {
            "name": "get_weather",
            "description": "Krijg het weer voor een stad",
            "parameters": {"type": "object", "properties": {"city": {"type": "string"}}, "required": ["city"]},
        },
    }],
)

# Geobserveerd: finish_reason "tool_calls", met een get_weather aanroep in tool_calls
Geverifieerd: tool_choice: "none" werkt — dezelfde weer vraag retourneert platte tekst zonder tool-aanroep.

Responses

response = client.responses.create(
    model="coding-glm-5.3",
    input="Controleer het weer van vandaag in Shanghai en Beijing",
    parallel_tool_calls=True,
    tools=[{
        "type": "function",
        "name": "get_weather",
        "description": "Krijg het weer voor een stad",
        "parameters": {"type": "object", "properties": {"city": {"type": "string"}}, "required": ["city"]},
    }],
)

# Geobserveerd: een enkele beurt retourneert 2 parallelle function_call output items (één voor elke stad)
Geverifieerd: 2 parallelle tool-aanroepen in één beurt, overeenkomend met de officiële supports_parallel_tool_calls: true verklaring.

Messages

response = client.messages.create(
    model="coding-glm-5.3",
    max_tokens=4096,
    tools=[{
        "name": "get_weather",
        "description": "Krijg het weer voor een stad",
        "input_schema": {"type": "object", "properties": {"city": {"type": "string"}}, "required": ["city"]},
    }],
    messages=[{"role": "user", "content": "Wat is het weer in Beijing vandaag?"}],
)

# Geobserveerd: stop_reason "tool_use"; inhoud bevat een tool_use blok
Geverifieerd: op deze API, het model produceert nog steeds tool-aanroepen na tool_choice: {"type": "none"} — om tools uit te schakelen, verwijder de tools parameter volledig, of gebruik tool_choice: "none" op de Chat Completions API in plaats daarvan.

4. Gestructureerde Output

response_format ondersteunt text en json_object; de stroomopwaartse vermeldt geen json_schema modus. Wanneer je strikte schema-conformiteit nodig hebt, embed het JSON-schema in de prompt en valideer aan de clientzijde.

Chat Completions

completion = client.chat.completions.create(
    model="coding-glm-5.3",
    messages=[
        {"role": "user", "content": "Wat is de hoofdstad van Frankrijk? Antwoord in JSON met de sleutel \"answer\"."}
    ],
    response_format={"type": "json_object"},
)

# Geobserveerde response inhoud: {"answer": "Parijs"}
Geverifieerd: output is geldig JSON met de gevraagde sleutel.

Responses

response = client.responses.create(
    model="coding-glm-5.3",
    input="Wat is de hoofdstad van Frankrijk? Antwoord in JSON met de sleutel \"answer\".",
    text={"format": {"type": "json_object"}},
)

# Geobserveerde output tekst: {"answer": "Parijs"}

Messages

# Specificeer de JSON-structuur in de prompt; geobserveerde output is geldig JSON
response = client.messages.create(
    model="coding-glm-5.3",
    max_tokens=4096,
    messages=[
        {"role": "user", "content": "Wat is de hoofdstad van Frankrijk? Antwoord in JSON met de sleutel \"answer\"."}
    ],
)

# Geobserveerde response tekst: {"answer": "Parijs"}

5. Context Caching Is Automatisch

Impliciete caching is standaard ingeschakeld zonder parameters om door te geven; herhaalde lange prefixen rapporteren cache-hits in gebruik (de veldnaam varieert per API).

Chat Completions

# gebruik van de tweede aanroep met een identieke lange prefix
"prompt_tokens_details": {"cached_tokens": 960}
Geverifieerd: de tweede van twee achtereenvolgende aanroepen had 960 gecachete tokens.

Responses

# gebruik van de tweede aanroep met een identieke lange prefix
"input_tokens_details": {"cached_tokens": 960}

Messages

# hits worden gerapporteerd via usage.cache_read_input_tokens
"cache_read_input_tokens": 0
Geverifieerd: we hebben geen cache-hit gereproduceerd op deze API in deze ronde (caches warm per kanaal; een load-balancer switch kan een misser veroorzaken). Het hit-accounting veld volgt de semantiek van Anthropic.

6. Sampling en Parameter Validatie

Sampling volgt de GLM-familie eindpuntconventies: temperature bereik [0, 1] met standaard 1.0 (opmerking — smaller dan het OpenAI protocol [0, 2]); top_p bereik [0.01, 1] met standaard 0.95. Z.ai raadt aan om slechts één van de twee af te stemmen.

Geverifieerd: parameter validatie verschilt tussen API's — de Messages API weigert een out-of-range temperature: 3 met een 400 die het geldige bereik [0,1] vermeldt, terwijl Chat Completions / Responses stilzwijgend dezelfde out-of-range waarde met 200 accepteren. Bij migratie tussen API's, vertrouw niet op de gateway om out-of-range sampling waarden voor je te vangen.
# Messages API met temperature=3 -> HTTP 400
"temperature parameter ongeldig: waarde moet binnen [0,1] zijn"

7. Capaciteit × API Ondersteuningsmatrix

Elke cel hieronder is geverifieerd met echte aanroepen via de AIHubMix live API's op 2026-08-14; cellen tonen de parameter/veld spelling voor elke API.

Capaciteit Chat Completions Responses Messages
Basis generatie / streaming
Denken inhoud reasoning_content veld reasoning output item (summary_text) thinking inhoudsblok
Denken intensiteit reasoning_effort (low/high/max, standaard max) ✅ hetzelfde als links ✅ geaccepteerd met 200
Denken uitschakelen ❗ Niet mogelijk: disabled retourneert 200 en denken gaat door (omgezet naar lage semantiek) ➖ geen toggle parameter ❗ hetzelfde als Chat
Functie-aanroepen
Parallelle tool-aanroepen ✅ 2 function_call items in één beurt
Uitschakelen tool-aanroepen tool_choice: "none" werkt ✅ 200 (geen aanroepen waargenomen) ❗ aanroepen worden nog steeds geproduceerd na {"type": "none"}
Gestructureerde output (JSON modus) response_format: json_object text.format: json_object ✅ via promptconventie
json_schema strikte modus ❗ niet vermeld stroomopwaarts — embed het schema in de prompt ❗ hetzelfde als links ❗ hetzelfde als links
Automatische cache-accounting usage.prompt_tokens_details.cached_tokens usage.input_tokens_details.cached_tokens ✅ veld aanwezig (geen hit gereproduceerd deze ronde)
Max-output validatie ✅ 400 met bereik [1,131072]
Out-of-range sampling validatie ❗ stille 200 ❗ stille 200 ✅ 400 met bereik [0,1]

FAQ

Wat is de GLM-5.3 model-ID op AIHubMix? Heb ik de [1m] suffix nodig?
De model-ID is coding-glm-5.3 — gebruik het zoals het is. glm-5.3[1m] is Z.ai's modelnaam syntaxis voor de Claude Code client en heeft niets te maken met AIHubMix-aanroepen; geen van de drie API's heeft een suffix nodig.

Kan ik denken uitschakelen?
Nee. GLM-5.3 denken is altijd aan en thinking.type ondersteunt alleen enabled; in onze tests, het verzenden van disabled retourneert 200 met denken dat nog steeds gebeurt (omgezet naar het low niveau volgens officiële semantiek). Om tokens voor denken te besparen, stuur reasoning_effort: "low".

Hoe verhoudt GLM-5.3 zich tot GLM-5.2?
Zelfde basismodel — alle verbeteringen komen van post-training (officiële formulering: "Het gebruikt hetzelfde basismodel als GLM-5.2 — elke verbetering komt van post-training"). Twee belangrijke API-wijzigingen: denken kan niet langer worden uitgeschakeld, en reasoning_effort versmalt naar drie niveaus low/high/max (standaard max).

Wat als ik strikte json_schema gestructureerde output nodig heb?
De stroomopwaartse vermeldt geen response_format: json_schema modus. In onze tests produceerde json_object JSON modus geldig JSON op alle drie de API's; voor strikte schema's, embed het JSON-schema in de prompt en valideer aan de clientzijde.

Is coding-glm-5.3 de productie-release?
Het is momenteel een beperkte preview-route (Z.ai's model API-documentatie markeert de officiële API als "binnenkort beschikbaar"); AIHubMix zal opvolgen zodra de commerciële API wordt verzonden. Zie de modelpagina voor actuele prijzen en status.


Voor prijzen en realtime status, zie de GLM-5.3 modelpagina; voor meer modellen, bezoek de modelgalerij.