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 подтверждает, что:
- Нативная конфигурация существует по ожидаемому пути.
- Файл провайдера присутствует и не пуст.
- Специфичная для адаптера процедура проверки сообщает об успехе.
Обновление
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-run | false | Предпросмотр установки без записи файлов. |
См. также
- Все окружения — полный каталог поддерживаемых инструментов
- Руководство по установке — установка Apothem в это окружение
- Справочник по
apothem harnesses— вывод списка и просмотр адаптеров из CLI