结论
- 401 通常意味着 key、项目、endpoint、模型权限或客户端配置问题,不是模型质量问题。
- endpoint 和模型名以当前智谱/GLM 官方文档为准,旧示例很容易误导。
- 兼容客户端如果只换 key,可能静默保留旧 OpenAI base_url。
- 生产环境要记录 provider、route、model、request id、状态码和脱敏错误体,fallback 才能工作。
怎么做
- 创建或轮换 GLM/智谱 key,确认属于同一账号、项目、计费资料和模型权限集合。
- 复制官方当前 compatible base_url、model name 和 Authorization 格式,不复用截图或旧代码片段。
- 用 Authorization: Bearer YOUR_KEY 发送最小 chat 请求,记录状态、request id、延迟和错误体。
- 确认真实 app、代码工具或 Agent 配置使用 GLM base_url、key 和 model,而不是默认 OpenAI 设置。
- 如果仍 401,测试另一个已开通 GLM 模型,检查额度/计费,同时加入 Qwen 或 DeepSeek fallback。
- 多个工具共用 GLM 路线和 fallback 策略时,用 OpenLLMAPI 或带可见请求日志的 proxy。
推荐路径对比
| 平台 | 免费/额度 | 适合 |
|---|---|---|
| 智谱 GLM | 注册 tokens 变化 | 国产 GLM 兼容 endpoint 和模型权限检查 |
| 通义千问 | 注册额度变化 | 修 GLM 认证时的中国大陆友好兼容替代 |
| DeepSeek | 价格/额度变化 | 代码和推理任务的低价 fallback |
| OpenLLMAPI | 体验额度变化 | 请求日志、fallback、一个兼容 key 和可见路由诊断 |
自有平台承接
用日志和 fallback 排查 GLM
把 GLM、Qwen、DeepSeek 放到一个兼容路由后,401 配置错误可见、失败调用可安全兜底,并携带 GLM 排错意图 UTM 注册。
FAQ
模型名错误会导致 unauthorized 吗?
会。有些 provider 在 key 无权访问该模型、项目、路线或计费状态不满足时,会返回类似认证错误。
为什么 OpenAI SDK 还在请求 OpenAI?
很多客户端必须显式设置 base_url/baseURL 和 api_key。用日志、代理 trace 或请求目标地址确认。
可以把 GLM key 放前端吗?
不可以。GLM key 应放服务端、worker 或受保护网关后;任何粘到客户端的 key 都要轮换。
排查 GLM 401 应记录什么?
Provider、配置 route、model、状态码、request id、重试次数、时间戳和脱敏错误体。不要记录原始 key。
key 有效但工具失败怎么办?
先用 curl 跑同一请求。如果 curl 正常,通常是工具 profile、preset、环境变量或 streaming/tool-call 兼容问题。