Введение
GLM 5.2 — чат-модель Z.ai с длинным контекстом, здесь она доступна как один совместимый с OpenAI эндпоинт /v1/chat/completions. Она читает до 1 048 576 токенов в пределах 256 сообщений и отвечает объёмом до 131 072: внутрь уходит весь корпус, наружу — вывод.
У уровня рассуждения два значения, high и max, по умолчанию max. Принимаются temperature (от 0 до 1) и top_p, response_format возвращает JSON, в запросе можно объявить до 128 инструментов, сообщения — только текст, а ответы приходят потоком через Server-Sent Events.
Ключевые возможности и особенности
Восемь прочитанных токенов на один написанный
1 048 576 на входе и 131 072 на выходе — примерно восемь к одному, и эта форма говорит, для чего модель: прочитать квартал обращений, целый регламент или весь почтовый ящик и вернуть вывод, а не переписанный текст. Если ответ должен быть длиной со вход, сначала разделите результат на части.
По умолчанию max, high для объёма
reasoning_effort стартует с max и опускается до high для больших первичных проходов. Оба значения задаются в одном теле запроса, поэтому дешёвый проход по десяти тысячам документов и внимательный повторный взгляд на сорок из них — одна интеграция. max тратит больше бюджета ответа на рассуждение, поэтому max_tokens здесь по умолчанию равен 32 768.
JSON и инструменты в одном вызове
Установите response_format в json_object и перечислите ключи в системном сообщении или объявите до 128 функций и позвольте tool_choice решать, когда их вызывать. В обоих случаях приложение проверяет результат, прежде чем действовать.
Параметры запроса
| Параметр | Обязательно | Описание |
|---|---|---|
messages | Да | Не более 256 упорядоченных реплик, только текст. Корпус кладите в одно сообщение user, а вопрос и формат вывода — в системное. Не менее 1 элементов · Не более 256 элементов |
reasoning_effort | Нет | high или max. По умолчанию max, как в собственном API Z.ai, поэтому запрос без этого поля уже идёт в самом внимательном режиме; для массовых проходов опускайте до high. |
stop | Нет | Одна последовательность — строкой или массивом из одного элемента: Z.ai читает только одну. Ответ обрывается, как только модель её пишет, а совпавший текст не возвращается. Не менее 1 символов · Не менее 1 элементов · Не более 1 элементов |
max_tokens | Нет | Ограничивает ответ значением 131 072 — восьмая часть окна чтения. По умолчанию 32 768. |
temperature | Нет | От 0 до 1, по умолчанию 1. Держите на 0 всякий раз, когда ответ разбирает код. |
top_p | Нет | От 0,01 до 1, по умолчанию 0,95. В одном сравнении меняйте его либо temperature, но не оба. |
tools | Нет | До 128 описаний функций на запрос. Не более 128 элементов |
tool_choice | Нет | auto, none, required или объект с именем конкретной функции. |
response_format | Нет | Просите объект JSON и называйте каждый ключ в системном сообщении. |
Стоимость
Ввод $0.98 / Вывод $3.08 за 1 млн токенов
Сценарии использования
Квартал обращений в поддержку за один вызов
Загрузите в один запрос все обращения за период релиза и спросите, какие сценарии отказов повторяются, со ссылками на номера обращений как доказательство. Ничего не теряется в выборке, поэтому проявится даже закономерность, которая возникает раз в неделю.
Регламент против реального поведения продукта
Положите полный текст регламента рядом с вашей документацией по обработке данных и попросите обязательства, закрывающие их меры контроля и пробелы — каждый пробел с привязкой к пункту, из которого он следует.
Бэкенды, которые вызывают ваши внутренние инструменты
Объявите поиск заказа, возврат средств и проверку прав как инструменты в одном запросе и позвольте модели решать, какой вызвать. Результаты возвращаются сообщениями с ролью tool, так что многошаговое решение остаётся в одном диалоге.
Руководство по промптам и практические советы
Загружайте весь корпус, а не выборку
Окно обычно больше, чем поисковый индекс, который кто-то уже собирался строить. Положите материал в одно пользовательское сообщение, от старого к новому, а системное оставьте для вопроса и формата вывода.
Просите вывод, а не стенограмму
POST https://api.spicyapi.ai/v1/chat/completions с телом {"model": "zai/glm-5.2", "messages": [{"role": "system", "content": "Return one JSON object with keys: obligations, controls, gaps. Every gap must cite the clause it comes from."}, {"role": "user", "content": "<the regulation>\n\n<our data-handling policy>"}], "reasoning_effort": "high", "max_tokens": 16000, "response_format": {"type": "json_object"}, "temperature": 0}. temperature 0 делает повторные запуски сопоставимыми, когда вы перепроверяете тот же корпус.
Поднимайте только неоднозначные строки
Отправьте повторно на max, с тем же корпусом, горстку пробелов, которые первый проход пометил как неуверенные. За длинное чтение вы платите дважды, зато тщательный ответ приходится на строки, которые важны. max_tokens больше 131 072 не проходит валидацию, а части с изображениями и файлами отклоняются.
Быстрый старт API
curl --fail-with-body -sN https://api.spicyapi.ai/v1/chat/completions \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"model": "zai/glm-5.2/chat",
"messages": [
{
"role": "user",
"content": "Summarise the following release notes into three bullet points."
}
],
"stream": true
}' \
| jq --unbuffered -Rrj 'select(startswith("data: ")) | .[6:] | select(. != "[DONE]") | fromjson | if .error then "\n[error] \(.error.message)\n" else (.choices[0].delta.content? // empty) end'
Аутентификация, полная схема, опрос статуса и обработка ошибок описаны в справочнике API.







