GLM-5.3 удаляет флаг «thinking: disabled», поэтому любая интеграция, передававшая {"thinking":{"type":"disabled"}}, теперь возвращает ошибку вместо ответа. Это изменение за одну ночь сломало десятки тестовых наборов и вынуждает разработчиков переписывать одну строку кода, чтобы сохранить работоспособность своих приложений.

Почему это важно

В GLM-5.2 API позволял отключать режим рассуждений (thinking mode) для тривиальных промптов. Этот вариант был распространенным паттерном в скриптах автоматизации, конвейерах пакетной обработки и ботах с низкой задержкой. В GLM-5.3 флаг был полностью удален, и были введены три уровня усилий — low, high и max, при этом max установлен по умолчанию. Новая модель всегда генерирует цепочку рассуждений (reasoning trace); её больше нельзя полностью отключить.

Что сломалось и как это распространяется

Когда тело запроса содержит "type":"disabled", сервер отклоняет полезную нагрузку, возвращая общую ошибку. Ошибки аутентификации или синтаксиса не появляются, поэтому проблему может быть трудно заметить до тех пор, пока не упадет полный прогон регрессионных тестов. Поскольку во многих кодовых базах этот флаг находился в единой переиспользуемой вспомогательной функции, последствия затронули как обширные тестовые наборы, так и рабочие эндпоинты (production endpoints).

Точное изменение кода

Замените старую полезную нагрузку:

extra_body = {"thinking": {"type": "disabled"}}

на версию, совместимую с GLM-5.3:

extra_body = {"thinking": {"type": "enabled", "effort": "low"}}

Ключ "type":"enabled" повторно активирует механизм рассуждений, а "effort":"low" максимально приближает скорость к прежнему отключенному режиму, насколько это позволяет новая модель.

Влияние на производительность

Запуск тех же промптов для проверки кода с настройкой низкого уровня усилий (low-effort) дает результаты, которые «близки к прежней скорости», но не идентичны ей. Модель по-прежнему выдает цепочку рассуждений, что добавляет несколько лишних токенов и умеренно увеличивает задержку. В высокопроизводительных нагрузках или задачах, критичных к задержке, вам следует провести бенчмаркинг на собственных данных, чтобы подтвердить приемлемость накладных расходов.

Почему стоит мигрировать, несмотря на затраты

GLM-5.3 сохраняет архитектуру со своими 744 миллиардами параметров, как и предшественник, но переориентируется на задачи программирования и агентные задачи. Независимые бенчмарки (Terminal-Bench 3.0) показывают заметный скачок в показателях, а внутренние тесты сообщают о лучшем обнаружении логических ошибок в нескольких файлах. Для команд, которые полагаются на модель для сложного анализа кода, прирост производительности может перевесить небольшое увеличение потребления токенов.

Компромисс, который нельзя игнорировать

Если приложению действительно нужны ответы без рассуждений — например, сервис чистого дополнения токенов — в GLM-5.3 для этого больше нет встроенной опции. Разработчики должны либо смириться с дополнительным выводом рассуждений, либо переключиться на другую модель, которая все еще предлагает отключенный режим.

На что обратить внимание в дальнейшем

  • Мониторинг задержки: После изменения полезной нагрузки отслеживайте время ответа и количество токенов, чтобы вовремя заметить регрессию.
  • Настройка усилий: Некоторые рабочие нагрузки могут выиграть от уровня «high» без серьезных потерь, поэтому экспериментируйте с настройками помимо «low».
  • Будущие изменения: Удаление одного флага говорит о том, что API может ожидать дальнейшая консолидация; следите за будущими примечаниями к релизам.

Итог: Обновление полезной нагрузки thinking до {"type":"enabled","effort":"low"} восстанавливает совместимость с GLM-5.3. Проверьте задержку и использование токенов в своих конвейерах и решите, оправдывают ли улучшенные возможности программирования неизбежную цепочку рассуждений.

Обсуждение и поддержка сообщества доступны в Telegram-канале GyaanSetu AI.