Titel: GLM-5.3 Praktischer Leitfaden: Immer Aktives Denken, Drei Anstrengungsstufen & API-Unterstützungsmatrix
Beschreibung: August 2026 GLM-5.3 Leitfaden: immer aktives Denken mit drei Anstrengungsstufen, Denkzusammenfassungen, parallelen Toolaufrufen, strukturiertem Output und automatischem Caching — mit verifizierten Beispielen für AIHubMix Chat / Responses / Messages.
Dieser Artikel behandelt die wichtigsten API-Änderungen und Nutzungshinweise für GLM-5.3. GLM-5.3 ist das Flaggschiffmodell von Z.ai, das am 14.08.2026 veröffentlicht wurde — es verwendet dasselbe Basismodell wie GLM-5.2, wobei alle Verbesserungen aus dem Nachtraining stammen. Auf AIHubMix ist die Modell-IDcoding-glm-5.3(derzeit ein zeitlich begrenzter Vorschauweg), verfügbar über die Chat Completions, Responses und Claude-kompatiblen Messages APIs. Siehe auch: den offiziellen Z.ai Veröffentlichungsblog.
Die "Verifizierten" Schlussfolgerungen und Beispielantworten in jedem Abschnitt stammen von tatsächlichen Aufrufen, die am 14.08.2026 über die AIHubMix APIs (Chat Completions / Responses / Messages) gemacht wurden.
1. Modell-Spezifikationen auf einen Blick
| Artikel | Wert |
|---|---|
| Kontextfenster | 1M Tokens (offizieller exakter Wert: 1.048.576) |
| Max. Ausgabe | 128K (max_tokens verifiziertes Limit: 131.072 — Überschreitung führt zu 400) |
| Eingabemodalitäten | Text |
| Denken | Immer aktiv, kann nicht deaktiviert werden; reasoning_effort hat drei Stufen — low / high / max, Standard max |
| Beziehung zu GLM-5.2 | Dasselbe Basismodell, aufgerüstet durch Nachtraining: viel stärkere Codierungs- und Langzeitaufgabenleistung sowie aufkommende Cyberfähigkeiten |
| AIHubMix Modell-ID | coding-glm-5.3 (zeitlich begrenzter Vorschauweg; wir werden nachfassen, sobald die offizielle kommerzielle API gestartet wird) |
Verifiziert: max_tokens: 999999 führt zu 400 mit dem gültigen Bereich, der im Fehlertext angegeben ist — das Limit ist tatsächlich validiert, nicht stillschweigend gekürzt.# max_tokens=999999 -> HTTP 400
"max_tokens parameter invalid: value must be within [1,131072]"
2. GLM-5.3 vs GLM-5.2: Immer Aktives Denken, Intensität über reasoning_effort
| Artikel | GLM-5.2 | GLM-5.3 |
|---|---|---|
| Basismodell | — | Identisch zu 5.2 (alle Gewinne stammen aus dem Nachtraining) |
thinking.type |
enabled / disabled — kann deaktiviert werden |
enabled nur — kann nicht deaktiviert werden |
reasoning_effort |
7-Wert-Kompatibilitätszuordnung (effektive Stufen: max/high) | Drei Stufen low / high / max, Standard max |
| Positionierung | Allzweck-Flaggschiff | Gestärkt für Codierungs- und Langzeitagentenaufgaben, mit aufkommenden Cyberfähigkeiten |
Dies sind die zwei wichtigsten API-Änderungen in GLM-5.3 im Vergleich zu GLM-5.2:
thinking.typeunterstützt nicht mehrdisabled— Denken kann nicht deaktiviert werden. Offizielle Migrationsanweisung: Anwendungen, die früher{"type": "disabled"}gesendet haben, sollten auf{"type": "enabled"}umschalten undreasoning_effortauf"low"setzen.reasoning_effortverengt sich auf drei Stufen:low(leicht) /high(verbessert) /max(tief, der Standard). Die 7-Wert-Kompatibilitätszuordnung aus der GLM-5.2-Ära gilt nicht mehr; Z.ai empfiehltmaxfür Codierungsaufgaben.
Verifiziert: das Senden vonthinking: {"type": "disabled"}über AIHubMix führt zu 200 und Denken geschieht weiterhin (reasoning_contentwird wie gewohnt zurückgegeben) — der Wert wird automatisch gemäß den offiziellen Kanalsemantiken umgewandelt, anstatt abgelehnt zu werden. Wenn Ihr Client auf "Denken deaktivieren, um Tokens zu sparen" angewiesen war, wechseln Sie zureasoning_effort: "low".
Verifiziert: Werte außerhalb der Enumeration fürreasoning_effortführen ebenfalls zu 200 ohne einen Fehler (fallen auf den Standardmaxgemäß den offiziellen Dokumenten zurück);lowvsmaxzeigt den erwarteten Trend des leichteren Denkens (27 vs 39 Denk-Tokens bei derselben arithmetischen Frage).
Chat Completions
Denken-Inhalte werden im reasoning_content-Feld zurückgegeben; im Streaming kommen sie als delta.reasoning_content an.
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, Standard max
extra_body={"thinking": {"type": "enabled"}},
messages=[
{"role": "user", "content": "Berechne die Quadratwurzel von (17*23-19*11), abgerundet. Nur Ziffern."}
],
)
print(completion.choices[0].message.reasoning_content)
print(completion.choices[0].message.content) # Beobachtet: "13"
Verifiziert:usage.completion_tokens_details.reasoning_tokensberichtet über die Nutzung des Denkens — 27 mitreasoning_effort="low", 39 mit"max"bei derselben Frage.
Responses
Denken-Inhalte kommen als reasoning Ausgabeobjekt zurück, mit dem Text im 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="Was ist die Hauptstadt von Frankreich? Nur Stadtname.",
)
# Beobachtete response.output Objekttypen: ["reasoning", "message"]
# reasoning-Objekt: {"type": "reasoning", "summary": [{"type": "summary_text", "text": "Der Benutzer fragt..."}]}
# usage.output_tokens_details.reasoning_tokens: 80
Verifiziert: die Standardanfrage (keinreasoningParameter) enthält bereits dasreasoningObjekt mitsummary_text— keine explizite Opt-in erforderlich.
Messages
Denken-Inhalte werden als native thinking Inhaltsblöcke zurückgegeben.
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": "Was ist die Hauptstadt von Frankreich? Nur Stadtname."}
],
)
# Beobachtete response.content Blocktypen: ["thinking", "text"]
Verifiziert: Denkblöcke werden standardmäßig zurückgegeben; thinking: {"type": "disabled"} in dieser API führt ebenfalls zu 200, wobei das Denken weiterhin geschieht (entsprechend den offiziellen "deaktiviert wird zu niedrig, Anfrage geht weiter" Kanalsemantiken).3. Toolaufrufe und parallele Tools
Funktionsaufrufe wurden auf allen drei APIs verifiziert; bei der Responses API haben wir auch parallele Toolaufrufe innerhalb eines einzelnen Durchgangs beobachtet (Z.ai erklärt ausdrücklich supports_parallel_tool_calls: true für GLM-5.3). Obergrenzen: bis zu 128 Funktionen in tools; tool_choice unterstützt nativ nur auto.
Chat Completions
completion = client.chat.completions.create(
model="coding-glm-5.3",
messages=[{"role": "user", "content": "Wie ist das Wetter heute in Peking?"}],
tools=[{
"type": "function",
"function": {
"name": "get_weather",
"description": "Wetter für eine Stadt abrufen",
"parameters": {"type": "object", "properties": {"city": {"type": "string"}}, "required": ["city"]},
},
}],
)
# Beobachtet: finish_reason "tool_calls", mit einem get_weather Aufruf in tool_calls
Verifiziert: tool_choice: "none" funktioniert — dieselbe Wetterfrage gibt einfachen Text ohne Toolaufruf zurück.Responses
response = client.responses.create(
model="coding-glm-5.3",
input="Überprüfen Sie das Wetter heute in Shanghai und Peking",
parallel_tool_calls=True,
tools=[{
"type": "function",
"name": "get_weather",
"description": "Wetter für eine Stadt abrufen",
"parameters": {"type": "object", "properties": {"city": {"type": "string"}}, "required": ["city"]},
}],
)
# Beobachtet: ein einzelner Durchgang gibt 2 parallele function_call Ausgabeobjekte zurück (eines für jede Stadt)
Verifiziert: 2 parallele Toolaufrufe in einem Durchgang, die der offiziellen Erklärung supports_parallel_tool_calls: true entsprechen.Messages
response = client.messages.create(
model="coding-glm-5.3",
max_tokens=4096,
tools=[{
"name": "get_weather",
"description": "Wetter für eine Stadt abrufen",
"input_schema": {"type": "object", "properties": {"city": {"type": "string"}}, "required": ["city"]},
}],
messages=[{"role": "user", "content": "Wie ist das Wetter heute in Peking?"}],
)
# Beobachtet: stop_reason "tool_use"; der Inhalt enthält einen tool_use Block
❗ Verifiziert: in dieser API produziert das Modell immer noch Toolaufrufe nachtool_choice: {"type": "none"}— um Tools zu deaktivieren, entfernen Sie dentoolsParameter vollständig oder verwenden Sietool_choice: "none"in der Chat Completions API stattdessen.
4. Strukturierter Output
response_format unterstützt text und json_object; die upstream listet keinen json_schema Modus. Wenn Sie eine strikte Schema-Konformität benötigen, betten Sie das JSON-Schema in die Eingabeaufforderung ein und validieren Sie es clientseitig.
Chat Completions
completion = client.chat.completions.create(
model="coding-glm-5.3",
messages=[
{"role": "user", "content": "Was ist die Hauptstadt von Frankreich? Antwort im JSON mit dem Schlüssel \"answer\"."}
],
response_format={"type": "json_object"},
)
# Beobachteter Antwortinhalt: {"answer": "Paris"}
Verifiziert: die Ausgabe ist gültiges JSON, das den angeforderten Schlüssel enthält.
Responses
response = client.responses.create(
model="coding-glm-5.3",
input="Was ist die Hauptstadt von Frankreich? Antwort im JSON mit dem Schlüssel \"answer\".",
text={"format": {"type": "json_object"}},
)
# Beobachtete Ausgabetext: {"answer": "Paris"}
Messages
# Geben Sie die JSON-Struktur in der Eingabeaufforderung an; beobachtete Ausgabe ist gültiges JSON
response = client.messages.create(
model="coding-glm-5.3",
max_tokens=4096,
messages=[
{"role": "user", "content": "Was ist die Hauptstadt von Frankreich? Antwort im JSON mit dem Schlüssel \"answer\"."}
],
)
# Beobachtete Antworttext: {"answer": "Paris"}
5. Kontext-Caching ist automatisch
Implizites Caching ist standardmäßig aktiviert, ohne Parameter zu übergeben; wiederholte lange Präfixe berichten über Cache-Treffer in der Nutzung (der Feldname variiert je nach API).
Chat Completions
# Nutzung des zweiten Aufrufs mit einem identischen langen Präfix
"prompt_tokens_details": {"cached_tokens": 960}
Verifiziert: der zweite von zwei aufeinanderfolgenden Aufrufen traf 960 zwischengespeicherte Tokens.
Responses
# Nutzung des zweiten Aufrufs mit einem identischen langen Präfix
"input_tokens_details": {"cached_tokens": 960}
Messages
# Treffer werden über usage.cache_read_input_tokens berichtet
"cache_read_input_tokens": 0
Verifiziert: wir haben in dieser Runde keinen Cache-Treffer in dieser API reproduziert (Caches erwärmen sich pro Kanal; ein Lastenausgleichswechsel kann einen Treffer verursachen). Das Trefferabrechnungsfeld folgt den Anthropic-Semantiken.
6. Sampling und Parametervalidierung
Sampling folgt den Endpunktkonventionen der GLM-Familie: temperature Bereich [0, 1] mit Standard 1.0 (Hinweis — enger als der OpenAI-Protokollbereich [0, 2]); top_p Bereich [0.01, 1] mit Standard 0.95. Z.ai empfiehlt, nur eines der beiden zu optimieren.
Verifiziert: die Parametervalidierung unterscheidet sich zwischen den APIs — die Messages API lehnt einen außerhalb des Bereichs liegendentemperature: 3mit einem 400 ab, der den gültigen Bereich[0,1]angibt, während Chat Completions / Responses denselben außerhalb des Bereichs liegenden Wert stillschweigend mit 200 akzeptieren. Bei der Migration zwischen APIs verlassen Sie sich nicht darauf, dass das Gateway außerhalb des Bereichs liegende Sampling-Werte für Sie erfasst.
# Messages API mit temperature=3 -> HTTP 400
"temperature parameter invalid: value must be within [0,1]"
7. Fähigkeit × API-Unterstützungsmatrix
Jede Zelle unten wurde mit echten Aufrufen über die AIHubMix Live-APIs am 14.08.2026 verifiziert; die Zellen zeigen die Parameter-/Feldschreibung für jede API.
| Fähigkeit | Chat Completions | Responses | Messages |
|---|---|---|---|
| Grundlegende Generierung / Streaming | ✅ | ✅ | ✅ |
| Denken-Inhalte | ✅ reasoning_content Feld |
✅ reasoning Ausgabeobjekt (summary_text) |
✅ thinking Inhaltsblock |
| Denkintensität | ✅ reasoning_effort (low/high/max, Standard max) |
✅ dasselbe wie links | ✅ akzeptiert mit 200 |
| Denken deaktivieren | ❗ Nicht möglich: disabled gibt 200 zurück und das Denken geht weiter (konvertierte zu niedrigen Semantiken) |
➖ kein Umschaltparameter | ❗ dasselbe wie Chat |
| Funktionsaufrufe | ✅ | ✅ | ✅ |
| Parallele Toolaufrufe | — | ✅ 2 function_call Objekte in einem Durchgang |
— |
| Toolaufrufe deaktivieren | ✅ tool_choice: "none" funktioniert |
✅ 200 (keine Aufrufe beobachtet) | ❗ Aufrufe wurden weiterhin nach {"type": "none"} produziert |
| Strukturierter Output (JSON-Modus) | ✅ response_format: json_object |
✅ text.format: json_object |
✅ über Eingabeaufforderungskonvention |
json_schema strikter Modus |
❗ nicht upstream gelistet — betten Sie das Schema in die Eingabeaufforderung ein | ❗ dasselbe wie links | ❗ dasselbe wie links |
| Automatische Cache-Abrechnung | ✅ usage.prompt_tokens_details.cached_tokens |
✅ usage.input_tokens_details.cached_tokens |
✅ Feld vorhanden (kein Treffer in dieser Runde reproduziert) |
| Max-Ausgabevalidierung | ✅ 400 mit Bereich [1,131072] | — | — |
| Validierung von Sampling außerhalb des Bereichs | ❗ stillschweigende 200 | ❗ stillschweigende 200 | ✅ 400 mit Bereich [0,1] |
FAQ
Was ist die GLM-5.3 Modell-ID auf AIHubMix? Brauche ich die [1m] Endung?
Die Modell-ID ist coding-glm-5.3 — verwenden Sie sie so, wie sie ist. glm-5.3[1m] ist Z.ai's Modellnamen-Syntax für den Claude Code-Client und hat nichts mit AIHubMix-Aufrufen zu tun; keine der drei APIs benötigt eine Endung.
Kann ich das Denken ausschalten?
Nein. Das Denken von GLM-5.3 ist immer aktiv und thinking.type unterstützt nur enabled; in unseren Tests führt das Senden von disabled zu 200, wobei das Denken weiterhin geschieht (konvertiert auf die low Stufe gemäß den offiziellen Semantiken). Um Denk-Tokens zu sparen, senden Sie reasoning_effort: "low".
Wie steht GLM-5.3 zu GLM-5.2?
Dasselbe Basismodell — alle Gewinne stammen aus dem Nachtraining (offizielle Formulierung: "Es verwendet dasselbe Basismodell wie GLM-5.2 — jeder Gewinn stammt aus dem Nachtraining"). Zwei harte API-Änderungen: Denken kann nicht mehr deaktiviert werden, und reasoning_effort verengt sich auf drei Stufen low/high/max (Standard max).
Was ist, wenn ich strikten json_schema strukturierten Output benötige?
Die upstream listet keinen response_format: json_schema Modus. In unseren Tests produzierte der json_object JSON-Modus gültiges JSON auf allen drei APIs; für strikte Schemata betten Sie das JSON-Schema in die Eingabeaufforderung ein und validieren Sie es clientseitig.
Ist coding-glm-5.3 die Produktionsversion?
Es ist derzeit ein zeitlich begrenzter Vorschauweg (Z.ai's Modell-API-Dokumente kennzeichnen die offizielle API als "demnächst"); AIHubMix wird nachfassen, sobald die kommerzielle API veröffentlicht wird. Siehe die Modellseite für aktuelle Preise und Status.
Für Preise und Echtzeitstatus siehe die GLM-5.3 Modellseite; für weitere Modelle besuchen Sie die Modellgalerie.




