如果你已经在用 OpenRouter 用一个 API key 管理多个 LLM 供应商,现在可以把 GLM 5.2 加进这个栈,连 Z.ai 账号都不用注册。模型 ID 是 z-ai/glm-5.2,base URL 是 https://openrouter.ai/api/v1,从任何 OpenAI 兼容集成切换过来只需改三个字段。
本指南带你端到端走完整个配置过程——前置条件、Python 和 JavaScript 的可用代码、与 Z.ai 直连的定价对比,以及一张大多数人第一次调用就会撞上的报错排查表。
速览
GLM 5.2 是一个 753B 参数的 Mixture of Experts 模型(40B 激活),1M token 上下文窗口,每秒 158 token 的吞吐,AA Intelligence Index 得分 51。GPQA Diamond 89%,SWE-bench Pro 62.1%。Z.ai 直连下,输入每百万 token $1.40,输出每百万 token $4.40。在 OpenRouter 上,价格可能带一点路由加价——实时费率请看 openrouter.ai/models。
用 OpenRouter,如果你想要一个 API key 同时管 GLM 5.2 和其他前沿模型、统一账单,或者一条即插即用的换模型路径。
用 Z.ai 直连,如果你想要尽可能低的延迟(没有路由一跳)、没有加价的直连定价,或者 Z.ai 专属的功能,比如 $0.26/M token 的缓存命中。
前置条件
- 一个 OpenRouter 账号,从 openrouter.ai 获取 API key
- Python 3.8+ 并装有
openai包,或 Node.js 18+ 并装有openainpm 包 - 对 REST API 或 OpenAI SDK 有基本了解
走 OpenRouter 路由时不需要 Z.ai 账号。
快速规格
| 属性 | 值 |
|---|---|
| OpenRouter 模型 ID | z-ai/glm-5.2 |
| Base URL | https://openrouter.ai/api/v1 |
| 上下文窗口 | 1,048,576 token(1M) |
| 参数 | 753B 总 / 40B 激活(MoE) |
| 速度 | 158 t/s |
| TTFT | 1.54s |
| Z.ai 输入价格 | $1.40/M token |
| Z.ai 输出价格 | $4.40/M token |
| 缓存命中(Z.ai) | $0.26/M token |
| 许可证 | MIT(开放权重) |
第 1 步 — 获取 OpenRouter API key
前往 openrouter.ai,注册账号,在控制台生成 API key。这是与 Z.ai key 分开的另一个 key——OpenRouter 自己管账单。
给你的 OpenRouter 账号充值。GLM 5.2 是前沿级模型,所以你需要有正余额才能发起调用。
把 key 存成环境变量,而不是硬编码:
export OPENROUTER_API_KEY="sk-or-..."
第 2 步 — 安装 OpenAI SDK
OpenRouter 兼容 OpenAI,所以直接用你八成已经装了的那个 openai 包:
pip install openai
Node.js 的话:
npm install openai
第 3 步 — 第一次调用(Python)
与标准 OpenAI 调用相比,只有 api_key、base_url 和 model 不同。其他一切——messages 格式、流式、系统提示词、temperature——完全一样。
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["OPENROUTER_API_KEY"],
base_url="https://openrouter.ai/api/v1",
)
response = client.chat.completions.create(
model="z-ai/glm-5.2",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Explain Mixture of Experts in two sentences."},
],
max_tokens=512,
)
print(response.choices[0].message.content)
第 4 步 — 第一次调用(JavaScript / TypeScript)
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.OPENROUTER_API_KEY,
baseURL: "https://openrouter.ai/api/v1",
});
const response = await client.chat.completions.create({
model: "z-ai/glm-5.2",
messages: [
{ role: "system", content: "You are a helpful assistant." },
{ role: "user", content: "Explain Mixture of Experts in two sentences." },
],
max_tokens: 512,
});
console.log(response.choices[0].message.content);
第 5 步 — 流式响应
对长输出或聊天界面,流式能显著降低感知延迟。GLM 5.2 的 1.54s TTFT 意味着不到两秒你就能看到第一个 token。
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["OPENROUTER_API_KEY"],
base_url="https://openrouter.ai/api/v1",
)
stream = client.chat.completions.create(
model="z-ai/glm-5.2",
messages=[
{"role": "user", "content": "Write a Python function to parse JSON safely."},
],
stream=True,
)
for chunk in stream:
delta = chunk.choices[0].delta.content
if delta:
print(delta, end="", flush=True)
第 6 步 — 使用长上下文窗口
GLM 5.2 有 1,048,576 token 的上下文窗口。要用它,给输出设好 max_tokens,传一个大的 messages 数组。OpenRouter 支持完整上下文长度,但要注意:非常长的提示词成本也按比例更高。
1M 窗口的实际容量:
- 约 750,000 词的纯文本(一整本小说)
- 跨几十个文件的约 40,000 行代码
- 无需分块或检索的长文档问答
response = client.chat.completions.create(
model="z-ai/glm-5.2",
messages=[
{"role": "system", "content": "You are a code reviewer."},
{"role": "user", "content": very_long_codebase_string},
],
max_tokens=4096,
)
第 7 步 — 从其他模型切换
如果你已经在 OpenRouter 上调用别的模型,迁移只需改一行:
# Before (e.g., DeepSeek V3)
model="deepseek/deepseek-chat-v3-0324"
# After (GLM 5.2)
model="z-ai/glm-5.2"
messages 格式、鉴权和其余一切都保持不变。这是 OpenRouter 路由层的主要优势——只需替换一个字符串,就能在 GLM 5.2 和 deepseek/deepseek-v3 或 moonshotai/kimi-k2 这样的模型之间跑 A/B 测试。
定价对比
| 路由 | 输入 | 输出 | 缓存命中 | 路由开销 |
|---|---|---|---|---|
| Z.ai 直连 | $1.40/M | $4.40/M | $0.26/M | 无 |
| OpenRouter | 看实时费率 | 看实时费率 | 视情况而定 | 可能有少量加价 |
查看 OpenRouter 当前费率:访问 openrouter.ai/models 搜索 z-ai/glm-5.2。费率随供应商调价而更新。
加价何时要紧: 对高吞吐负载——每天数百万 token——哪怕每 token 一点点的加价也会累积。在这个规模上,Z.ai 直连是更便宜的路。对中等用量或开发阶段,单一账单账号的便利通常超过这点差异。
缓存命中: Z.ai 直连对重复的提示词前缀提供 $0.26/M 的缓存命中费率。如果你的应用向许多请求发送同一条系统提示词或同一份文档,这能把有效输入成本降低 80% 以上。OpenRouter 的缓存行为取决于它是否把缓存信号透传给上游供应商。
Z.ai 定价的完整拆解见我们的 GLM 5.2 定价指南。
基准测试表现
| 基准测试 | GLM 5.2 得分 |
|---|---|
| GPQA Diamond | 89% |
| SWE-bench Pro | 62.1% |
| Terminal-Bench v2.1 | 78% |
| HumanEval | 90%+ |
| AA Intelligence Index | 51 |
无论通过 OpenRouter 还是 Z.ai 直连访问,这些数字都一样——模型权重完全相同。路由层对输出质量没有影响,只影响延迟(多一跳网络)和定价。
GLM 5.2 的 GPQA Diamond 89% 让它跻身当前可用前沿模型的科学推理第一梯队。SWE-bench Pro 62.1% 使其在自主编程任务上具备竞争力。两个基准测试的详细讨论见我们的 GLM 5.2 基准测试指南。
速度与延迟
| 指标 | 值 | 来源 |
|---|---|---|
| 吞吐 | 158 t/s | Artificial Analysis |
| TTFT | 1.54s | Artificial Analysis |
| 排名 | 第三快的前沿模型 | Artificial Analysis |
与 Z.ai 直连相比,OpenRouter 多一跳路由。实践中意味着在 1.54s TTFT 之上额外增加约 50–150ms,取决于你的网络和 OpenRouter 当时的负载。对交互式聊天,这几乎察觉不到。对每分钟处理数千请求的延迟敏感流水线,在投入之前先在你的环境里实测两条路由。
架构说明
GLM 5.2 使用 Mixture of Experts(MoE)架构:总参数 753B,但每次前向传播只有 40B 激活。每个 token 在每一层路由经过 256 个专家中的 8 个,共 78 个 transformer 解码器层。正是这一设计让它在保持前沿级质量的同时实现了 158 t/s 的吞吐——MoE 在推理时比同等规模的稠密模型更省算力。
模型使用 Dynamic Sparse Attention(DSA),帮助在 1M token 上下文长度下保持质量,而无需平方级的注意力成本。
GLM 5.2 是纯文本模型。它不接受图像或音频输入。如果你需要多模态输入,流水线的那个环节需要另选一个模型。
常见问题
| 报错 | 可能原因 | 解决办法 |
|---|---|---|
401 Unauthorized | API key 错误或缺失 | 确认 OPENROUTER_API_KEY 已设置,且 key 来自 openrouter.ai 而不是 Z.ai |
模型 404 Not Found | 模型 ID 打错 | 精确使用 z-ai/glm-5.2(注意是连字符,不是下划线) |
402 Payment Required | OpenRouter 余额不足 | 到 openrouter.ai/account 充值 |
429 Rate Limited | 并发请求太多 | 实现指数退避;检查你的 OpenRouter 套餐限额 |
| 空响应 / 超时 | 提示词太长、接近上下文上限 | 缩短提示词或增大客户端超时 |
context_length_exceeded | 输出 token + 输入 token > 1,048,576 | 调小 max_tokens 或缩短输入 |
常见问题
通过 OpenRouter 和 Z.ai 直连,模型质量一样吗?
是的。OpenRouter 把你的请求路由到同一个底层模型。权重、输出和基准表现完全相同。区别只在延迟(多一跳网络)、定价(可能有路由加价),以及你用哪个 API key。
用 OpenRouter 上的 GLM 5.2 需要 Z.ai 账号吗?
不需要。OpenRouter 处理与上游供应商的关系。你只需要一个 OpenRouter 账号和 API key。这正是 OpenRouter 的主要便利之处——一个账号就能同时用 GLM 5.2 和 DeepSeek、Kimi 等其他模型。
可以用 OpenAI Python SDK 搭配 OpenRouter 吗?
可以,这就是标准做法。设置 base_url="https://openrouter.ai/api/v1" 并传入你的 OpenRouter API key。SDK 无需修改即可与 OpenRouter 的 OpenAI 兼容端点通信。
OpenRouter 支持完整的 1M token 上下文窗口吗?
OpenRouter 会把上下文长度约束透传给上游供应商。GLM 5.2 完整的 1,048,576 token 窗口可用。不过,非常长的提示词会产生按比例更高的成本——发送大型负载前先算好 token 数。
GLM 5.2 是开源的吗?我可以自己跑吗?
可以。GLM 5.2 以 MIT 许可证发布,开放权重可在 Hugging Face 的 THUDM/GLM-5.2 获取。自托管 753B 参数需要大量 GPU 基础设施(多个 H100 或 H200 节点),所以大多数团队在开发和生产中还是用托管 API。
在 OpenRouter 上怎么在 GLM 5.2 和其他模型之间做选择?
对编程和科学推理任务,GLM 5.2 的 GPQA Diamond 89% 和 SWE-bench Pro 62.1% 是强信号。对受益于超长上下文的任务(整个代码库审查、长文档问答),1M token 窗口相比窗口更短的模型是实用优势。对需要图像输入的任务,你需要一个多模态模型——GLM 5.2 是纯文本的。
OpenRouter 还推荐哪些其他请求头?
OpenRouter 接受可选的请求头,如 HTTP-Referer 和 X-Title,用于在控制台里做用量归因。这些不是 API 正常工作所必需的,但能帮你按应用追踪用量:
client = OpenAI(
api_key=os.environ["OPENROUTER_API_KEY"],
base_url="https://openrouter.ai/api/v1",
default_headers={
"HTTP-Referer": "https://your-app.com",
"X-Title": "Your App Name",
},
)
下一步
第一次调用成功后,可以考虑这些下一步:
- 给你的用例做基准测试: 用你的真实提示词同时跑 Z.ai 直连和 OpenRouter,实测你环境里的延迟差异。
- 测试长上下文: 如果你的应用处理文档或代码库,测试一下 1M 窗口——它消除了许多检索任务的分块复杂性。
- 对比模型: OpenRouter 单 key 的优势让你只需替换
model字符串就能轻松对 GLM 5.2 与其他前沿模型做 A/B 测试。 - 监控成本: 在 OpenRouter 控制台设置支出上限,并按请求记录 token 数,随着规模扩大追踪成本。
GLM 5.2 与其他顶级模型的对比见我们的 GLM 5.2 vs DeepSeek V3 指南。
试用 GLM 5.2——无需 API key:glm5.app/chat。




