Семейство GLM
Текстовые модели GLM от Zhipu: серии GLM-5.3, GLM-5.2, GLM-5.1, GLM-5 и визуальная модель GLM-5V Turbo. Они вызываются через OpenAI-совместимый API и также поддерживают нативный API Anthropic, поэтому их можно использовать в Claude Code.
Типичные задачи
Модели
Полный список моделей и актуальные цены см. на странице моделей ; их также можно получить через Models API. Префикс ID моделей — z-ai/, его можно опустить.
z-ai/glm-5.3Только текст, контекст 1Mz-ai/glm-5.3-flashПоддерживает ввод изображенийz-ai/glm-5.1Только текстz-ai/glm-5v-turboПоддерживает изображения и PDFМодели GLM предоставляет международная площадка Zhipu (zai); у некоторых моделей есть и другие провайдеры, например Alibaba Cloud Model Studio и Volcano Engine. По умолчанию провайдер выбирается автоматически. Как указать провайдера, см. в разделе Маршрутизация провайдеров.
Примеры вызова
Python
import os
from openai import OpenAI
client = OpenAI(base_url="https://api.ofox.io/v1", api_key=os.environ["OFOX_API_KEY"])
resp = client.chat.completions.create(
model="z-ai/glm-5.1",
messages=[{"role": "user", "content": "Объясни одним предложением, что такое идемпотентность."}],
extra_body={"thinking": {"type": "disabled"}},
)
print(resp.choices[0].message.content)Режим thinking
Все модели GLM по умолчанию используют thinking. Объём thinking и время ответа по нашим замерам на одной и той же математической задаче:
Передайте "thinking": {"type": "disabled"}, чтобы отключить thinking. По нашим замерам, это работает для GLM-5.2, GLM-5.1, GLM-5, GLM-5 Turbo, GLM-5V Turbo и GLM-4.7 FlashX и заметно сокращает время ответа (например, у GLM-5 — примерно с 4,5 минуты до 10 секунд). В OpenAI SDK передавайте параметр внутри extra_body.
Токены thinking оплачиваются по цене вывода, их число указано в usage.completion_tokens_details.reasoning_tokens.
Чтение содержимого thinking
- В потоковом ответе содержимое thinking находится в
delta.reasoning_content, как и в официальном API Zhipu. - В непотоковом ответе содержимое thinking находится в
message.reasoning_details; склейте поляtextвсех элементов по порядку.
Использование в Claude Code
Модели GLM поддерживают нативный API Anthropic по адресу https://api.ofox.io/anthropic:
https://api.ofox.io/anthropicz-ai/glm-5.3curl https://api.ofox.io/anthropic/v1/messages \
-H "x-api-key: $OFOX_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "z-ai/glm-5.3",
"max_tokens": 8000,
"messages": [{"role": "user", "content": "Объясни одним предложением, что такое идемпотентность."}]
}'- При вызове через Anthropic API содержимое thinking возвращается блоками
thinking;"thinking": {"type": "disabled"}так же отключает thinking (для тех же моделей, что указаны выше). - При включённом thinking задавайте достаточно большой
max_tokensи устанавливайте таймаут клиента не менее 600 секунд.
Полный порядок настройки Claude Code см. в разделе Настройка Claude Code.
Изображения и PDF
Модели с поддержкой ввода изображений используют стандартный блок содержимого image_url; GLM-5V Turbo также принимает PDF в блоке содержимого file:
import base64
import os
from openai import OpenAI
client = OpenAI(base_url="https://api.ofox.io/v1", api_key=os.environ["OFOX_API_KEY"])
img_b64 = base64.b64encode(open("photo.png", "rb").read()).decode()
resp = client.chat.completions.create(
model="z-ai/glm-5v-turbo",
messages=[{"role": "user", "content": [
{"type": "image_url", "image_url": {"url": f"data:image/png;base64,{img_b64}"}},
{"type": "text", "text": "Опиши это изображение."},
]}],
extra_body={"thinking": {"type": "disabled"}},
)
print(resp.choices[0].message.content)GLM-5.3, GLM-5.2, GLM-5.1, GLM-5 и GLM-5 Turbo работают только с текстом — не передавайте им изображения.
JSON-вывод и вызов инструментов
Для response_format используйте {"type": "json_object"} и явно укажите в промпте «верни в формате JSON», перечислив нужные поля; для вызова инструментов используется стандартный параметр tools. Подробнее см. в разделах Структурированный вывод и Вызов функций.
Кэширование промптов
GLM автоматически кэширует повторяющиеся префиксы запросов, менять запросы не нужно. Объём попадания показывает usage.prompt_tokens_details.cached_tokens; попавшая в кэш часть оплачивается по цене чтения из кэша.
Типичные ошибки
Прочие общие ошибки: Обработка ошибок.
Официальная документация
Официальная документация описывает поведение при прямом обращении к Zhipu. При вызове через OfoxAI ID моделей и адреса API указывайте так, как описано на этой странице.
Часто задаваемые вопросы
Как записывать ID моделей GLM?
Стандартная запись — z-ai/glm-5.3; префикс можно опустить и писать glm-5.3. Запись zhipu/glm-5.3 вернёт 404.
Как отключить thinking у GLM?
Передайте "thinking": {"type": "disabled"}; в OpenAI SDK — внутри extra_body. По нашим замерам, это работает для GLM-5.2, 5.1, 5, 5 Turbo и 5V Turbo.
GLM отвечает очень медленно, приходится ждать несколько минут?
GLM по умолчанию использует thinking, и на сложные вопросы GLM-5 и GLM-5 Turbo могут расходовать десятки тысяч токенов и несколько минут. Если thinking не нужен, отключите его или перейдите на GLM-5.3 Flash с меньшим объёмом thinking.
Можно ли использовать GLM в Claude Code?
Да. Укажите ANTHROPIC_BASE_URL https://api.ofox.io/anthropic, а в качестве модели — ID модели GLM, например z-ai/glm-5.3.
Какие модели GLM умеют работать с изображениями?
Ввод изображений поддерживают GLM-5.3 Flash, GLM-5.3 FlashX и GLM-5V Turbo; GLM-5V Turbo также принимает PDF. Остальные модели GLM работают только с текстом.
GLM возвращает ошибку Prompt 超长?
Входные данные превысили контекст модели. У серии GLM-5.3 и GLM-5.2 контекст 1M токенов, у остальных — 200K токенов.