GLM-5 архитектура и параметры в PR Hugging Face Transformers 2026 | AiManual
AiManual Logo Ai / Manual.
09 Фев 2026 Новости

GLM-5: что скрывается в PR к Hugging Face и почему это не просто очередная LLM

Технический разбор PR для GLM-5 в Hugging Face Transformers. Детали архитектуры, параметры модели и что это значит для разработчиков в 2026.

PR #34782: не просто тикет, а технический манифест

Когда в репозитории Hugging Face Transformers появляется pull request на добавление новой модели, это обычно скучная техническая рутина. Конфиг, пара файлов, тесты. Но PR #34782 - другое дело. Это 47 файлов изменений, где разработчики из Zhipu AI буквально вываливают на стол всю внутреннюю кухню GLM-5. И если присмотреться, там есть на что посмотреть.

На момент 09 февраля 2026 года PR все еще открыт и активно обсуждается. Это не релиз - это предложение по интеграции, которое показывает, куда движется архитектура GLM.

Архитектурные детали, которые меняют правила

Первое, что бросается в глаза - GLM-5 отказывается от некоторых привычных решений GLM-4.7. Нет, это не революция, но эволюция с конкретными техническими причинами.

Квантование в ядре: не опция, а стандарт

Если в GLM-4.7-REAP квантование было отдельным трюком для экономии памяти, то в GLM-5 оно встроено в архитектуру. В конфигурации появился параметр quantization_config прямо в основном классе модели. Это значит, что модель из коробки понимает, как работать с квантованными весами без дополнительных костылей.

💡
Параметр hidden_act теперь по умолчанию 'swiglu' вместо 'gelu'. SwiGLU - это не новая активационная функция (ей уже пара лет), но её использование в GLM говорит об оптимизации под точность вычислений с квантованием.

Контекстное окно: 128К - это только начало

В конфиге видно max_position_embeddings: 131072. 128 тысяч токенов - стандарт для 2026 года? Не совсем. Важнее то, как это реализовано. RoPE (Rotary Positional Embeddings) с динамическим масштабированием - это уже не просто позиционные эмбеддинги, а целая подсистема для работы с длинными контекстами.

Параметр Значение в GLM-5 Что было в GLM-4.7 Что это значит
hidden_size 8192 7168 Увеличили размерность скрытого слоя на 14%
intermediate_size 28672 24576 FFN слой стал больше почти на 17%
num_attention_heads 64 56 Больше голов внимания для параллельной обработки
num_hidden_layers 80 80 Количество слоев не изменилось

Адаптация под Transformers v5: боль или облегчение?

Тот, кто работал с миграцией на Transformers v5, знает - обратной совместимости там нет. GLM-5 создается с учетом этого. В коде видно использование новых абстракций v5, особенно в части инициализации и конфигурации.

Например, класс GLM5Config наследуется от PretrainedConfig новой версии, где убрали кучу legacy-параметров. Это хорошо для чистоты кода, но плохо для тех, у кого есть кастомные конфиги под старую версию.

Если у вас есть пайплайны с GLM-4.7, которые используют старый API Transformers - готовьтесь к рефакторингу. GLM-5 не будет работать со старыми вызовами.

Поддержка vLLM из коробки

Раньше чтобы запустить GLM на vLLM, нужно было либо ждать поддержки от сообщества, либо писать кастомный бэкенд. В PR видно, что GLM-5 сразу включает конфигурацию для vLLM в modeling_glm5.py. Это не случайность - это ответ на требования 2026 года, где скорость инференса критична.

Что скрыто между строк конфига

Технические PR часто читаются как сухой код, но здесь есть интересные моменты:

  • use_cache: true по умолчанию - модель оптимизирована для последовательной генерации с кэшированием ключ-значение
  • Нет параметра torch_dtype в основном конфиге - тип данных вынесен в отдельную логику инициализации
  • attention_dropout: 0.0 - дропаут в механизме внимания убран полностью. Либо переобучение стало лучше, либо это оптимизация под инференс
  • Появился параметр residual_dropout вместо общего hidden_dropout - более тонкий контроль регуляризации

Мультимодальность как опция, а не фича

В GLM-4 мультимодальность была встроена в архитектуру. В GLM-5 из PR видно другой подход - отдельные классы для текстовой и мультимодальной версий. GLM5ForConditionalGeneration и GLM5ForVisionText2Text наследуются от разных базовых классов.

Это умно. Разработчики не хотят тащить лишний код в текстовые модели. Но для тех, кто разворачивает модели в продакшне, это означает две разные codebase для поддержки.

Тесты, которые говорят больше документации

В PR добавлено 12 тестовых файлов. И это не просто "проверяем, что модель запускается". Тесты покрывают:

  1. Генерацию с разными стратегиями (greedy, beam search, sampling)
  2. Работу с различными длинами контекста
  3. Квантование в разных режимах (4-bit, 8-bit)
  4. Совместимость с разными бэкендами (PyTorch, vLLM)

Особенно интересен тест test_model_parallelism - он проверяет, как модель ведет себя при распределении по нескольким GPU. Значит, GLM-5 проектировали с учетом масштабирования.

Проблемы, которые еще не решены

PR открыт не просто так. В обсуждениях видны спорные моменты:

⚠️
Один из ревьюеров указывает на проблему с инициализацией весов при использовании квантования. Есть edge case, когда модель падает при определенной комбинации параметров. Команда Zhipu AI обещает пофиксить до мержа.

Еще один момент - документация. В текущем виде её почти нет. Комментарии в коде есть, но полноценной docs строк нет. Это типично для early-stage PR, но значит, что первые пользователи будут разбираться методом тыка.

Что это значит для нас в 2026?

GLM-5 в Transformers - это не просто новая модель. Это сигнал о том, как будут выглядеть LLM в ближайшие пару лет:

  • Квантование станет стандартной частью архитектуры, а не постобработкой
  • Мультимодальность будет модульной - бери только то, что нужно
  • Поддержка разных бэкендов (vLLM, llama.cpp) будет из коробки
  • Конфигурация станет проще за счет удаления legacy-параметров

Если вы планируете мигрировать с GLM-4.7 - начинайте изучать PR сейчас. Не ждите, когда он вмержится. Потому что когда это случится, вам придется переписывать код под новую архитектуру. И судя по проблемам с GLM-4.7-Flash, миграция может быть болезненной.

Мой прогноз? GLM-5 будет медленнее внедряться, чем ожидают. Потому что Transformers v5 еще не везде, а обратной совместимости нет. Но те, кто перейдет первыми, получат преимущество в производительности и памяти. Выбор за вами - ждать стабильной версии или ковыряться в сыром PR.

P.S. Если интересно, как это все развернуть в продакшне - посмотрите статью про развертывание LLM в Kubernetes. Там принципы те же, только масштаб другой.