Skip to content
Apothem
Адаптеры окружений

GLM (Z.ai)

Адаптер окружения Apothem для GLM (Z.ai) как настраиваемого бэкенда моделей.

Поставщик: Z.ai Имя установки: glm Статус: GA Нативная конфигурация: <project>/.apothem/providers/glm.toml

Адаптер glm настраивает GLM (Z.ai) как бэкенд моделей. Инструмент, работающий по протоколу, совместимому с Anthropic или с OpenAI, направляется на GLM путём задания базового URL бэкенда и ключа, а сам адаптер вы выбираете через --harness glm, как и любой другой. Он записывает файл конфигурации провайдера, который фиксирует обе поверхности совместимости, чтобы любой совместимый инструмент можно было подключить к семейству моделей GLM.

Z.ai также поставляет собственный инструмент для написания кода, ZCode, который документация Z.ai называет «Agentic Development Environment». Этот адаптер не настраивает ZCode. Apothem не проверял собственную поверхность конфигурации ZCode, поэтому адаптер ничего для него не записывает.

Установка

apothem install --harness glm --project /path/to/project

Адаптер записывает один файл провайдера в области проекта, фиксирующий конечные точки бэкенда GLM и заполнители, настраиваемые оператором.

Записываемые файлы: <project>/.apothem/providers/glm.toml

Сопоставление профиля с нативной конфигурацией

Файл провайдера фиксирует два бэкенда. Бэкенд, совместимый с Anthropic, использует базовый URL https://api.z.ai/api/anthropic; инструмент, работающий по протоколу Anthropic, направляет запросы на GLM, задавая ANTHROPIC_BASE_URL, ANTHROPIC_AUTH_TOKEN и, по желанию, API_TIMEOUT_MS. Таблица [backends.anthropic_compatible.env] в этом файле перечисляет эти переменные, а также ANTHROPIC_DEFAULT_OPUS_MODEL, ANTHROPIC_DEFAULT_SONNET_MODEL и ANTHROPIC_DEFAULT_HAIKU_MODEL, которые сопоставляют роли инструмента opus, sonnet и haiku с моделями GLM. Бэкенд, совместимый с OpenAI, использует базовый URL https://api.z.ai/api/coding/paas/v4. Токен аутентификации — это заполнитель, который вы заменяете собственным ключом Z.ai: Apothem никогда не записывает настоящий секрет. Идентификаторы моделей меняются от версии к версии, поэтому Apothem не фиксирует ни один из них; файл содержит заполнители <GLM_MODEL_ID>, которые вы заполняете по актуальной документации Z.ai. Ничего из общего профиля в этот файл не попадает; это фиксированный шаблон.

Сопоставление ролей с моделями

Собственные утверждения Z.ai о сопоставлении ролей с моделями расходятся, поэтому файл оставляет три значения ANTHROPIC_DEFAULT_*_MODEL заполнителями и содержит над ними комментарий TODO(clarify). Какое сопоставление использовать, решаете вы:

  • Ручной пример settings.json в руководстве поставщика по настройке бэкенда, совместимого с Anthropic, сопоставляет opus и sonnet с glm-5.3[1m], а haiku — с glm-5.3-flash[1m] и задаёт CLAUDE_CODE_AUTO_COMPACT_WINDOW равным 1000000.
  • Заявленное в том же руководстве сопоставление по умолчанию указывает GLM-5.3-Flash для всех трёх ролей.
  • Инструмент Z.ai @z_ai/coding-helper по умолчанию использует glm-5.3-flash, добавляет [1m] ко всем трём ролям и записывает окно сжатия 1048576.

Apothem не фиксирует ни одно из этих значений и не выбирает между ними.

Заметки о совместимости

Бэкенд GLM не предоставляет поверхности для правил, команд, навыков или хуков, поэтому адаптер записывает только файл провайдера бэкенда и ничего больше. Apothem не проверял, предоставляет ли такие поверхности ZCode. Ваш ключ Z.ai и выбор идентификаторов моделей остаются во владении оператора. Соглашения поверхности поставщика, на которые опирается адаптер, зафиксированы в src/apothem/harnesses/glm/STANDARD-CONVENTION-PIN.md в виде снимка актуальной документации Z.ai.

GLM запускает семейство моделей GLM от Z.ai; актуальные сведения о бэкенде, моделях и поверхности конфигурации, совместимой с Anthropic, см. в справочнике поставщика по конфигурации.

Проверка

apothem verify --harness glm --project /path/to/project

Команда verify подтверждает, что:

  1. Нативная конфигурация существует по ожидаемому пути.
  2. Файл провайдера присутствует и не пуст.
  3. Специфичная для адаптера процедура проверки сообщает об успехе.

Обновление

apothem update --harness glm --project /path/to/project

Как только файл провайдера создан, он принадлежит вам. И install, и update записывают шаблон, только если .apothem/providers/glm.toml отсутствует, и ни одна из этих команд впоследствии никогда его не перезаписывает, поэтому ссылка на ваш ключ и выбор моделей сохраняются при каждом повторном запуске. Чтобы получить более новый шаблон, переместите свой файл в сторону, запустите update и перенесите свои значения в новый файл.

Удаление

apothem uninstall --harness glm --project /path/to/project

Удаляет файл провайдера, только если его создал Apothem и он по-прежнему является неотредактированным шаблоном, предварительно создавая его резервную копию в корневом каталоге резервных копий Apothem. Неотредактированный файл, записанный более ранним выпуском, тоже учитывается, если запись Apothem об установке для проекта показывает, что файл записал он: манифест хранит дайджест каждого шаблона, который получал проект. Без записи об установке удаляется только точная копия текущего шаблона. Файл, который вы создали или отредактировали, остаётся на месте. YAML общего профиля и движок Apothem не затрагиваются.

Шлюз соответствия

python -m apothem.conformity.gate --all .

Устранение неполадок

СимптомИсправление
Файл конфигурации не найденПовторно запустите apothem install --harness glm --project /path/to/project
Проверка не пройденаФайл провайдера отсутствует или пуст. Если он отсутствует, запустите apothem update --harness glm --project /path/to/project. Если он пуст, сначала переместите .apothem/providers/glm.toml в сторону, затем запустите update и проверьте снова
Неожиданное содержимое конфигурацииОтредактируйте .apothem/providers/glm.toml напрямую; Apothem никогда не перезаписывает существующий файл, а общий профиль ничего в него не добавляет. Чтобы получить свежий шаблон, переместите файл в сторону и запустите apothem update --harness glm --project /path/to/project

Параметры конфигурации

ФлагПо умолчаниюОписание
--dry-runfalseПредпросмотр установки без записи файлов.

См. также

On this page