结论
- 第一优先级:key、endpoint、model name 和账号权限必须来自同一个 GLM/智谱环境。
- 不要先在 Agent 里排查;先用最小 cURL 看真实 HTTP 状态和响应体。
- 如果工具隐藏 header 或改写 base_url,用 Python OpenAI SDK 单独验证。
- GLM 继续失败时,用同样 OpenAI-compatible 应用切到 Qwen、DeepSeek、硅基流动或网关兜底。
怎么做
- 重新生成或复制 GLM/智谱 API key,去掉空格、引号和旧环境变量。
- 从官方文档或控制台复制当前 base_url,不混用旧 v3/v4 示例和新模型名。
- 确认模型名已对当前账号开放,并且属于正确 endpoint family 和客户端请求格式。
- 在 Cursor、Claude Code 类工具、SillyTavern 或自研 Agent 前,先跑 cURL。
- 原始请求跑通后,再把相同 base_url、model、key 写入工具并设置 fallback。
推荐路径对比
| 平台 | 免费/额度 | 适合 |
|---|---|---|
| 智谱 GLM | 500 万 tokens / GLM Flash | 原生 GLM 和中国大陆友好测试 |
| 通义千问 | 7000 万 tokens | DashScope compatible-mode 兜底 |
| DeepSeek | $5 注册 / 当前额度 | 低价对话和代码兜底 |
| 硅基流动 | ¥14 + 免费模型路线 | 中国大陆直连 OpenAI 兼容测试 |
| OpenLLMAPI | 注册体验额度 | GLM 鉴权或路由不稳时,一个 endpoint 兜底 |
自有平台承接
GLM 鉴权还没修好,先要兜底?
用一个 OpenAI-compatible endpoint,把 GLM 类任务临时路由到 Qwen、DeepSeek、Gemini、Claude 或 GPT。
FAQ
为什么 key 看起来正确还 Unauthorized?
key 可能来自不同账号/项目,模型未开通,base URL 过期,或客户端用错 Authorization header。先用 cURL 验证。
GLM 能用 OpenAI SDK 吗?
如果当前 GLM endpoint 支持你配置的 OpenAI-compatible 路径,就可以。必须显式设置 base_url、api_key 和 model。
代理或中转会导致 GLM Unauthorized 吗?
会。有些中转会剥离 Authorization header、改写路径或路由到不同模型。直连和中转要分开测。
GLM 鉴权失败时最快兜底是什么?
同类 chat/coding 任务可先切 Qwen、DeepSeek、硅基流动或单 key 中转,同时继续排查 GLM。