Заглавие: Ръководство за GLM-5.3: мислене, винаги включено, три нива на усилие & матрица на поддръжка на API
Описание: Ръководство за GLM-5.3 от август 2026: мислене, винаги включено, с три нива на reasoning_effort, резюмета на разсъжденията, паралелни извиквания на инструменти, структуриран изход и автоматично кеширане, с проверени примери за AIHubMix Chat / Responses / Messages.
Тази статия обхваща ключовите промени в API и бележките за употреба на GLM-5.3. GLM-5.3 е флагманският модел на Z.ai, пуснат на 2026-08-14. Той използва точно същия базов модел като GLM-5.2, като всички подобрения идват от последващото обучение. В AIHubMix идентификаторът на модела еcoding-glm-5.3(в момента ограничен по време преглед маршрут), достъпен през Chat Completions, Responses и Claude-съвместимите Messages API. Вижте също: официалния блог на Z.ai за пускането.
Заключенията „Проверено“ и примерните отговори във всеки раздел идват от реални извиквания, направени на 2026-08-14 през AIHubMix API (Chat Completions / Responses / Messages).
1. Спецификации на модела накратко
| Параметър | Стойност |
|---|---|
| Контекстен прозорец | 1M токена (официална точна стойност: 1,048,576) |
| Максимален изход | 128K (max_tokens проверен таван: 131,072, при превишаване се връща 400) |
| Входни модалности | Текст |
| Мислене | Винаги включено, не може да се изключи; reasoning_effort има три нива: low / high / max, по подразбиране max |
| Връзка с GLM-5.2 | Същият базов модел, подобрен чрез последващо обучение: значително по-силна производителност при програмиране и задачи с дълъг хоризонт, плюс новопоявили се кибервъзможности |
| Идентификатор на модела в AIHubMix | coding-glm-5.3 (ограничен по време преглед маршрут; ще публикуваме актуализация веднага щом официалният търговски API бъде пуснат) |
Проверено: max_tokens: 999999 връща 400 с допустимия диапазон, посочен в тялото на грешката. Таванът е наистина валидиран, а не тихо съкратен.# max_tokens=999999 -> HTTP 400
"max_tokens parameter invalid: value must be within [1,131072]"
2. GLM-5.3 срещу GLM-5.2: мисленето е винаги включено, интензитетът се задава чрез reasoning_effort
| Параметър | GLM-5.2 | GLM-5.3 |
|---|---|---|
| Базов модел | — | Идентичен с 5.2 (всички подобрения от последващото обучение) |
thinking.type |
enabled / disabled, може да се изключи |
enabled само, не може да се изключи |
reasoning_effort |
Съвместимостно картиране с 7 стойности (ефективни нива: max/high) | Три нива low / high / max, по подразбиране max |
| Позициониране | Универсален флагман | Засилен за програмиране и агентни задачи с дълъг хоризонт, с новопоявили се кибервъзможности |
Това са двете най-важни промени в API при GLM-5.3 спрямо GLM-5.2:
thinking.typeвече не поддържаdisabled: мисленето не може да се изключи. Официалният съвет за миграция е приложенията, които преди изпращаха{"type": "disabled"}, да преминат към{"type": "enabled"}и да зададатreasoning_effortна"low".reasoning_effortсе свежда до три нива:low(леко) /high(засилено) /max(дълбоко, по подразбиране). 7-стойностното съвместимостно картиране от епохата на GLM-5.2 вече не важи. Z.ai препоръчваmaxза задачи по програмиране.
Проверено: изпращането наthinking: {"type": "disabled"}през AIHubMix връща 200, а мисленето продължава (reasoning_contentсе връща както обикновено). Стойността се преобразува автоматично според официалната семантика на канала, вместо да бъде отхвърлена. Ако вашият клиент разчита на „изключване на мисленето за спестяване на токени“, преминете къмreasoning_effort: "low".
Проверено: стойности извън допустимите заreasoning_effortсъщо връщат 200 без грешка (като се връща към подразбиращата сеmaxспоред официалната документация).lowсрещуmaxпоказва очакваната тенденция към по-леко мислене (27 срещу 39 токена за разсъждение при един и същ аритметичен въпрос).
Chat Completions
Съдържанието на мисленето се връща в полето reasoning_content; при стрийминг пристига като 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, default max
extra_body={"thinking": {"type": "enabled"}},
messages=[
{"role": "user", "content": "Compute the square root of (17*23-19*11), rounded down. Digits only."}
],
)
print(completion.choices[0].message.reasoning_content)
print(completion.choices[0].message.content) # Observed: "13"
Проверено:usage.completion_tokens_details.reasoning_tokensотчита използването за мислене: 27 приreasoning_effort="low"и 39 при"max"за същия въпрос.
Responses
Съдържанието на мисленето се връща като изходен елемент reasoning, като текстът е в масива summary като 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="What is the capital of France? City name only.",
)
# Observed response.output item types: ["reasoning", "message"]
# reasoning item: {"type": "reasoning", "summary": [{"type": "summary_text", "text": "The user is asking..."}]}
# usage.output_tokens_details.reasoning_tokens: 80
Проверено: заявката по подразбиране (без никакъв параметърreasoning) вече включва елементаreasoningсъсsummary_text. Не е нужно изрично включване.
Messages
Съдържанието на мисленето се връща като нативни блокове със съдържание thinking.
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": "What is the capital of France? City name only."}
],
)
# Observed response.content block types: ["thinking", "text"]
Проверено: блоковете thinking се връщат по подразбиране; thinking: {"type": "disabled"} при този API също връща 200, като мисленето продължава (съответства на официалната семантика на канала „disabled се преобразува в low, заявката продължава“).3. Извикване на инструменти и паралелни инструменти
Извикването на функции е проверено като работещо при всичките три API. При Responses API наблюдавахме и паралелни извиквания на инструменти в един ход (Z.ai изрично декларира supports_parallel_tool_calls: true за GLM-5.3). Горни граници от доставчика: до 128 функции в tools; tool_choice нативно поддържа само auto.
Chat Completions
completion = client.chat.completions.create(
model="coding-glm-5.3",
messages=[{"role": "user", "content": "What's the weather in Beijing today?"}],
tools=[{
"type": "function",
"function": {
"name": "get_weather",
"description": "Get weather for a city",
"parameters": {"type": "object", "properties": {"city": {"type": "string"}}, "required": ["city"]},
},
}],
)
# Observed: finish_reason "tool_calls", with a get_weather call in tool_calls
Проверено: tool_choice: "none" работи. Същият въпрос за времето връща обикновен текст без извикване на инструмент.Responses
response = client.responses.create(
model="coding-glm-5.3",
input="Check today's weather in Shanghai and Beijing",
parallel_tool_calls=True,
tools=[{
"type": "function",
"name": "get_weather",
"description": "Get weather for a city",
"parameters": {"type": "object", "properties": {"city": {"type": "string"}}, "required": ["city"]},
}],
)
# Observed: a single turn returns 2 parallel function_call output items (one for each city)
Проверено: 2 паралелни извиквания на инструменти в един ход, което съответства на декларацията supports_parallel_tool_calls: true.Messages
response = client.messages.create(
model="coding-glm-5.3",
max_tokens=4096,
tools=[{
"name": "get_weather",
"description": "Get weather for a city",
"input_schema": {"type": "object", "properties": {"city": {"type": "string"}}, "required": ["city"]},
}],
messages=[{"role": "user", "content": "What's the weather in Beijing today?"}],
)
# Observed: stop_reason "tool_use"; content contains a tool_use block
❗ Проверено: при този API моделът все още генерира извиквания на инструменти следtool_choice: {"type": "none"}. За да изключите инструментите, премахнете напълно параметъраtoolsили използвайтеtool_choice: "none"в Chat Completions API.
4. Структуриран изход
response_format поддържа text и json_object; доставчикът не посочва режим json_schema. Когато ви трябва строго съответствие със схема, вградете JSON Schema в промпта и валидирайте от страна на клиента.
Chat Completions
completion = client.chat.completions.create(
model="coding-glm-5.3",
messages=[
{"role": "user", "content": "What is the capital of France? Answer in JSON with the key \"answer\"."}
],
response_format={"type": "json_object"},
)
# Observed response content: {"answer": "Paris"}
Проверено: изходът е валиден JSON, съдържащ търсения ключ.
Responses
response = client.responses.create(
model="coding-glm-5.3",
input="What is the capital of France? Answer in JSON with the key \"answer\".",
text={"format": {"type": "json_object"}},
)
# Observed output text: {"answer": "Paris"}
Messages
# Specify the JSON structure in the prompt; observed output is valid JSON
response = client.messages.create(
model="coding-glm-5.3",
max_tokens=4096,
messages=[
{"role": "user", "content": "What is the capital of France? Answer in JSON with the key \"answer\"."}
],
)
# Observed response text: {"answer": "Paris"}
5. Кеширането на контекста е автоматично
Имплицитното кеширане е включено по подразбиране и не изисква параметри. Повтарящи се дълги префикси докладват попадения в кеша в usage (името на полето варира според API).
Chat Completions
# usage of the second call with an identical long prefix
"prompt_tokens_details": {"cached_tokens": 960}
Проверено: второто от две последователни извиквания попадна в 960 кеширани токена.
Responses
# usage of the second call with an identical long prefix
"input_tokens_details": {"cached_tokens": 960}
Messages
# hits are reported via usage.cache_read_input_tokens
"cache_read_input_tokens": 0
Проверено: в този рунд не успяхме да възпроизведем попадение в кеша при този API (кешовете се затоплят по канал, а превключване на балансьора може да причини промах). Полето за отчитане на попаденията следва семантиката на Anthropic.
6. Валидиране на семплиране и параметри
Семплирането следва конвенциите на крайните точки на GLM семейството: temperature с диапазон [0, 1] и по подразбиране 1.0 (забележка: по-тесен от [0, 2] при протокола на OpenAI); top_p с диапазон [0.01, 1] и по подразбиране 0.95. Z.ai препоръчва да се настройва само един от двата параметъра.
Проверено: валидирането на параметрите се различава между API. Messages API отхвърля извън допустимия диапазонtemperature: 3с 400, който посочва допустимия диапазон[0,1], докато Chat Completions и Responses тихо приемат същата стойност извън диапазона с 200. При миграция между API не разчитайте шлюзът да улови вместо вас стойностите за семплиране извън диапазона.
# Messages API with temperature=3 -> HTTP 400
"temperature parameter invalid: value must be within [0,1]"
7. Матрица на поддръжка: възможност × API
Всяка клетка по-долу е проверена с реални извиквания през живите AIHubMix API на 2026-08-14. Клетките показват написанието на параметъра или полето за всеки API.
| Възможност | Chat Completions | Responses | Messages |
|---|---|---|---|
| Базово генериране / стрийминг | ✅ | ✅ | ✅ |
| Съдържание на мисленето | ✅ поле reasoning_content |
✅ изходен елемент reasoning (summary_text) |
✅ блок със съдържание thinking |
| Интензитет на мисленето | ✅ reasoning_effort (low/high/max, по подразбиране max) |
✅ същото като вляво | ✅ прието с 200 |
| Изключване на мисленето | ❗ Невъзможно: disabled връща 200 и мисленето продължава (семантика „преобразуване в low“) |
➖ няма параметър за превключване | ❗ същото като Chat |
| Извикване на функции | ✅ | ✅ | ✅ |
| Паралелни извиквания на инструменти | — | ✅ 2 елемента function_call в един ход |
— |
| Изключване на извикванията на инструменти | ✅ tool_choice: "none" работи |
✅ 200 (не са наблюдавани извиквания) | ❗ извикванията все още се генерират след {"type": "none"} |
| Структуриран изход (JSON режим) | ✅ response_format: json_object |
✅ text.format: json_object |
✅ чрез конвенция в промпта |
Строг режим json_schema |
❗ не е посочен от доставчика; вградете схемата в промпта | ❗ същото като вляво | ❗ същото като вляво |
| Автоматично отчитане на кеша | ✅ usage.prompt_tokens_details.cached_tokens |
✅ usage.input_tokens_details.cached_tokens |
✅ полето присъства (попадение не е възпроизведено в този рунд) |
| Валидиране на максималния изход | ✅ 400 с диапазон [1,131072] | — | — |
| Валидиране на семплиране извън диапазона | ❗ тихо 200 | ❗ тихо 200 | ✅ 400 с диапазон [0,1] |
ЧЗВ
Какъв е идентификаторът на модела GLM-5.3 в AIHubMix? Нужен ли е суфиксът [1m]?
Идентификаторът на модела е coding-glm-5.3, използвайте го както е. glm-5.3[1m] е синтаксисът за име на модел на Z.ai за клиента Claude Code и няма отношение към извикванията в AIHubMix. Нито един от трите API не изисква суфикс.
Мога ли да изключа мисленето?
Не. Мисленето при GLM-5.3 е винаги включено, а thinking.type поддържа само enabled. В нашите тестове изпращането на disabled връща 200, като мисленето продължава (преобразува се до ниво low според официалната семантика). За да спестите токени за мислене, изпратете reasoning_effort: "low".
Как GLM-5.3 се отнася към GLM-5.2?
Същият базов модел: всички подобрения идват от последващото обучение (официалната формулировка е „Използва същия базов модел като GLM-5.2 — всяко подобрение идва от последващото обучение“). Две твърди промени в API: мисленето вече не може да се изключва, а reasoning_effort се свежда до три нива low/high/max (по подразбиране max).
Ами ако ми трябва строг структуриран изход с json_schema?
Доставчикът не посочва режим response_format: json_schema. В нашите тестове режимът JSON json_object произвежда валиден JSON при всичките три API. За строги схеми вградете JSON Schema в промпта и валидирайте от страна на клиента.
Дали coding-glm-5.3 е производствената версия?
В момента това е маршрут за предварителен достъп с ограничено време (документацията за API на моделите на Z.ai отбелязва официалното API като „скоро“); AIHubMix ще съобщи веднага щом търговското API бъде пуснато. Вижте страницата на модела за актуални цени и статус.
За цени и статус в реално време вижте страницата на модела GLM-5.3; за още модели посетете галерията с модели.



