← 返回信息流
Agent SkillLINUX DO · AI·1 小时前

排查GLM 500错误:余额不足与接口配置避坑指南

原标题:记录排查GLM 500错误的过程(Insufficient balance)

速览

本文详细记录了在使用Claude Code通过CC Switch和NewAPI接入智谱GLM时,因错误选择按量计费接口而非Coding Plan接口,导致稳定出现“Insufficient balance”500错误的排查过程。文章提供了三种解决方法,包括修改CC Switch请求格式、调整NewAPI接口类型或自定义API地址,并深入分析了各方案背后的接口路由逻辑及潜在的资金消耗风险。

AI 深度解读

背景

在利用 Claude Code 结合 CC Switch 和 NewAPI 等中间层接入智谱 GLM 模型进行开发时,用户遇到了一个看似复杂实则简单的配置错误。尽管报错信息明确指向“余额不足(Insufficient balance)”,且该 500 错误在三层架构中稳定复现,但排查过程却耗费了两天时间。

这一问题的核心在于智谱(GLM)平台对于不同计费模式(按量计费 vs. Coding Plan)以及不同协议格式(OpenAI 兼容 vs. Anthropic 兼容)采用了截然不同的 API 端点地址。由于地址结构的细微差异(如 /api/paas/v4/api/coding/paas/v4 的区别)以及文档中未显著强调的细节,导致配置时极易混淆,进而引发请求路由错误。

核心内容

本文详细记录了从发现问题到定位根源,再到提供三种解决方案的全过程,并深入分析了每种方案背后的技术逻辑及潜在风险。

问题现象

  • 故障表现:Claude Code 通过 CC Switch 和 NewAPI 调用 GLM 时,100% 稳定返回 500 错误。
  • 错误信息Insufficient balance or no resource package. Please recharge.
  • 排查范围:错误信息在 Claude Code、CC Switch 和 NewAPI 三层的控制台中一致,表明问题出在最终请求源或计费账户状态上。

解决方案

作者提供了三种可行的修复路径,用户可根据自身需求任选其一:

  1. 修改 CC Switch 请求格式
    • 在 CC Switch 中,将连接 NewAPI 的 API 格式从默认的 OpenAI 兼容模式改为 Anthropic Messages(原生)
  2. 修改 NewAPI 接口类型为 Anthropic
    • 在 NewAPI 中,接口类型不选择“智谱”或“智谱V4”,而是选择 Anthropic
    • 填入的 URL 为:https://open.bigmodel.cn/api/anthropic
  3. 使用自定义接口(推荐)
    • 在 NewAPI 中,接口类型选择 自定义(图标为 OpenAI 样式)。
    • 填入完整的 Coding Plan 专属 URL:https://open.bigmodel.cn/api/coding/paas/v4/chat/completions

深度原因分析

1. 原始报错根源:接口地址混淆

  • CC Switch 默认使用 OpenAI Chat Completions 格式。
  • 当 NewAPI 配置为“智谱v4”类型时,其源码默认指向按量计费的 API 地址:https://open.bigmodel.cn/api/paas/v4/chat/completions
  • 用户使用的是 Coding Plan(编程计划),该计划对应的专属地址为:https://open.bigmodel.cn/api/coding/paas/v4
  • 结论:请求被错误地发往了按量计费接口,而该账户下无余额,故报错。

2. 方法一(Anthropic 格式)的风险

  • 原理:当 CC Switch 使用 Anthropic 格式,NewAPI 会向 GLM 发送请求至 https://open.bigmodel.cn/api/anthropic/v1/messages
  • 隐患:智谱的 Anthropic 格式接口未区分按量计费和 Coding Plan,两者共用同一端口。
  • 后果:如果 Coding Plan 额度耗尽,请求仍会通过此端口发出,直接消耗按量计费账户的余额。

3. 方法二(NewAPI 层转换)的风险

  • 原理:CC Switch 保持 OpenAI 格式,但 NewAPI 配置为 Anthropic 类型。NewAPI 会在内部完成格式转换,最终向 GLM 发送 Anthropic 格式请求。
  • 隐患:与方法一相同,由于走的是 Anthropic 通用端口,同样存在 Coding Plan 耗尽后误扣按量余额的风险。

4. 方法三(自定义 URL)的优势

  • 原理:通过自定义接口类型,强制 NewAPI 使用智谱 Coding Plan 专属的 OpenAI 兼容地址(带 /coding/ 路径)。
  • 优势
    • 无论上游(Claude Code/CC Switch)使用何种协议,NewAPI 都会将其转换为标准的 OpenAI Chat Completions 格式。
    • 请求严格路由至 Coding Plan 专属接口,理论上只要 GLM 后台配置正确,不会误用按量计费余额。

关键要点

  • 地址差异细微但致命:智谱的按量计费 API 地址为 /api/paas/v4/chat/completions,而 Coding Plan 为 /api/coding/paas/v4/chat/completions。多出的 /coding/ 部分是区分计费模式的关键。
  • Anthropic 协议未隔离计费:智谱目前对 Anthropic 格式的接口没有像 OpenAI 兼容格式那样严格区分按量与 Coding Plan,共用同一端点,存在超额扣费风险。
  • 推荐配置策略
    • 最稳妥的方式是使用 NewAPI 自定义接口,明确指定 Coding Plan 的 OpenAI 兼容 URL。
    • 若使用 Anthropic 格式,需密切监控按量计费账户余额,以防 Coding Plan 耗尽后产生意外费用。
  • 社区建议
    • 智谱官方应优化文档,显著区分不同计费模式的接口地址。
    • 建议智谱将 Anthropic 协议的按量与 Coding Plan 接口分离,或像 MiniMax 那样提供独立的 API Key。
    • 中间层平台(如 CC Switch、NewAPI)应针对智谱接口规范增加更细致的类型选项(如“智谱v4 Coding Plan OpenAI”、“智谱v4 Coding Plan Anthropic”),以降低配置门槛。
  • 访问优化:据社区反馈,将 GLM 访问端点配置为 https://api.z.ai/api 并通过代理走境外网络,可能提高访问成功率。

意义与影响

此次排查案例揭示了在使用多代理架构(Claude Code + CC Switch + NewAPI + GLM)时,协议转换与计费模型隔离之间的复杂性。

  1. 对开发者的警示:在集成第三方 AI 服务时,不能仅依赖默认配置。特别是当涉及不同计费模式(预付费/包月 vs. 按量)时,必须仔细核对 API 端点的具体路径和协议兼容性。
  2. 对平台方的反馈
    • 智谱(GLM):其 API 设计在 Anthropic 格式上缺乏计费隔离,增加了用户的财务风险。同时,OpenAI 兼容接口中按量与 Coding Plan 地址的微小差异缺乏显著提示,容易导致配置错误。
    • 中间层平台(NewAPI/CC Switch):现有的接口类型分类对于智谱这种复杂计费体系的支持不够精细。增加更细分的“智谱 Coding Plan”选项将极大提升用户体验和配置准确性。
  3. 技术选型参考:对于重视成本控制且使用 Coding Plan 的用户,优先选择支持自定义 URL 且能明确路由至 Coding Plan 接口的配置方式(如方法三),是避免意外扣费的最佳实践。
查看原文 →linux.do