GLM-5 是智谱 GLM 系列的新一代通用模型,很多团队关心三件事:Key 从哪里拿、Base URL 填什么、现有 OpenAI SDK 能不能直接复用。答案是:GLM 系列长期提供 OpenAI 兼容接口,绝大多数场景只需要改 Base URL、Key 和模型名三处。
本文按接入顺序讲:先说明 GLM-5 API 的形态,再走一遍获取 Key 和跑通请求的流程,最后给出报错排查和成本控制清单。
说明:智谱、GLM 是其权利人的商标,本文仅作技术接入说明。模型名、上下文长度、计费口径以官方文档和站内模型价格为准,本文示例中的模型名需要在控制台核对后再使用。
一、GLM-5 API 是什么
GLM-5 API 是智谱开放平台面向开发者提供的模型调用接口,常见能力包括:
- 多轮对话与指令跟随;
- 长文总结、改写、翻译;
- 结构化抽取与 JSON 输出;
- 代码生成、代码解释;
- Agent 与工作流中的推理节点。
它和网页版产品不是一回事:网页版按账号订阅,API 按 token 或调用量计费,Key 只代表调用凭证,不等于会员权益。接入前先明确用途、并发和预算,再决定走官方还是聚合网关。
二、获取 GLM API Key 的两条路径
路径一:智谱开放平台
- 注册并登录智谱开放平台,完成实名或企业认证(以平台要求为准)。
- 在控制台创建 API Key,按项目或环境命名。
- 查看账户余额与可用模型,必要时先充值。
- 把 Key 写入服务端环境变量,不要落到前端。
官方接口的 Base URL 通常是 https://open.bigmodel.cn/api/paas/v4,具体以官方文档当前版本为准。
路径二:中商起航 AI 网关
如果你已经在用多个模型,或者希望统一账单、统一 Key 管理,可以在中商起航 AI 网关注册,创建 Key 后在模型价格页确认 GLM 系列是否已开通、模型名怎么写。
两条路径没有绝对优劣:只用一个模型、官方访问顺畅,官方直连更简单;需要多模型切换、统一额度和国内稳定入口,网关更省事。
三、OpenAI 兼容配置
GLM 的接口形态与 OpenAI Chat Completions 接近,迁移时主要改三处:
| 配置项 | 官方直连 | 中商起航网关 |
|---|---|---|
| Base URL | https://open.bigmodel.cn/api/paas/v4 |
https://ai.zhongshangqihang.com/v1 |
| API Key | 智谱平台创建 | 网关控制台创建 |
| 模型名 | 以官方文档为准 | 以站内价格页为准 |
| SDK | OpenAI SDK 可用 | OpenAI SDK 可用 |
注意 Base URL 的结尾:有的 SDK 会自动拼接 /chat/completions,有的需要你写完整路径。混用官方地址和网关地址,最常见的表现就是 401 或 404。
四、curl 调用
export ZSQH_API_KEY="sk-你的密钥"
curl "https://ai.zhongshangqihang.com/v1/chat/completions" \
-H "Authorization: Bearer $ZSQH_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "glm-5",
"messages": [
{"role": "system", "content": "你是一名中文技术编辑,回答要具体。"},
{"role": "user", "content": "用三点说明 API 网关适合什么团队"}
],
"temperature": 0.6,
"max_tokens": 800
}'
把 model 换成价格页上实际可用的 GLM-5 模型标识;如果返回 model not found,先核对大小写和版本后缀。
五、Python 调用
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["ZSQH_API_KEY"],
base_url="https://ai.zhongshangqihang.com/v1",
)
resp = client.chat.completions.create(
model="glm-5", # 以站内价格页为准
messages=[
{"role": "system", "content": "你是客服质检助手,只输出 JSON。"},
{"role": "user", "content": "判断这句话的情绪:物流太慢,但客服态度不错。"},
],
temperature=0.2,
response_format={"type": "json_object"},
)
print(resp.choices[0].message.content)
如果 SDK 版本较旧,可能不支持 response_format,先升级 openai 包;如果网关不支持 JSON 模式,改为在提示词里约束输出格式,并在代码里做解析兜底。
六、模型名怎么选
GLM 系列通常同时存在通用版、轻量版、推理版等分支,命名会带版本号和日期后缀。选型建议:
| 场景 | 选型思路 | 注意事项 |
|---|---|---|
| 客服、摘要、改写 | 通用对话模型 | 先用低 temperature |
| 复杂推理、数学 | 推理增强模型 | 更慢,token 消耗更高 |
| 高并发分类 | 轻量模型 | 先测准确率再扩量 |
| 代码任务 | 代码能力较强的版本 | 长上下文注意截断 |
具体哪个模型名可用、上下文多长、单价多少,一律以站内价格页为准。不要直接照搬网上教程里的旧模型名,GLM 的版本迭代较快。
七、常见报错
| 报错 | 常见原因 | 处理 |
|---|---|---|
401 Unauthorized |
Key 错误、未带 Bearer、Key 已删除 | 重新复制 Key,检查请求头 |
404 Not Found |
Base URL 多了或少了 /v1 |
按文档统一地址 |
model not found |
模型名不存在或无权限 | 从价格页复制模型名 |
429 Too Many Requests |
并发或频率超限 | 降并发,指数退避重试 |
insufficient balance |
余额不足 | 充值或换 Key |
| 响应中断 | 超时、网络、长输出 | 提高超时,流式输出 |
排查顺序建议从鉴权开始:先用最小请求验证 Key,再验证模型名,最后才怀疑网络。这样能避免在错误的方向上反复改代码。
八、成本控制
- 设置
max_tokens,避免模型无限输出。 - 精简 system prompt,重复的长指令考虑缓存或模板化。
- 批处理任务用轻量模型,难题再升级。
- 记录每次请求的 token 用量,按业务线拆分账单。
- 给 Key 设额度上限,异常调用时能自动止损。
- 上线前做一次峰值压测,确认限流阈值。
成本不是只看单价:重试、长上下文、无效输出都会放大账单。先把成功率和平均 token 降下来,再谈单价。
九、安全与团队协作
- 按环境拆 Key:测试、预发、生产各一个,互不复用。
- 按项目拆 Key:便于统计每个业务的 token 和费用。
- Key 放服务端环境变量或密钥管理服务,不进 Git、不进前端包。
- 日志里不要打印完整 Key 和用户原文,必要时脱敏。
- 设置额度告警,余额低于阈值时通知负责人。
- 人员变动或 Key 泄露时立即停用并轮换。
团队里最常见的风险不是模型本身,而是 Key 被复制到聊天工具、文档或前端代码里。接入流程里加一步“Key 只出现在服务端”,比事后排查省事得多。
常见问题
GLM-5 API 可以直接用 OpenAI SDK 吗?
多数场景可以,改 base_url、api_key 和 model 三处即可。少数参数(如某些推理开关、多模态字段)可能不兼容,以官方或站内文档为准。
GLM API Key 和网页版会员通用吗?
不通用。网页版会员是产品订阅,API Key 是开发者凭证,计费和权限分开管理。
一个 Key 能同时调用其他模型吗?
在中商起航网关中,一个 Key 可以调用已开通的多个模型,模型在请求里指定;具体范围看价格页和控制台。
国内调用需要额外配置吗?
取决于网络环境和服务条款。生产环境建议做超时、重试和备用通道,不要把所有请求压在一个入口上。
下一步
先注册中商起航 AI 网关,创建一个测试 Key,用 curl 跑通最小请求,再接入业务代码。模型名和价格以模型价格为准。
相关阅读:
