快速开始
几分钟内完成第一次 OpenAI 兼容的 GLM 5 API 请求。
兼容 OpenAI SDK
对于本文档覆盖的 Chat Completions 能力,可以继续使用现有 OpenAI SDK,只需修改 API Key、Base URL 和模型 ID。新接入通常从 glm-5.3 开始。
面向 GLM 5 的 OpenAI 兼容 API
GLM 5 API 使用 OpenAI 兼容的 Chat Completions 接口:通过 Bearer Token 鉴权,向版本化的 /chat/completions 端点发送 JSON,请求体包含 model 与 messages,响应中读取 choices 和 usage。
本文档沿用这一结构,覆盖请求参数、消息格式、响应字段、流式输出、工具调用、模型列表、错误码、限制与计费。GLM 5 保留常见兼容格式,同时提供一组稳定的公开模型 ID:
- Base URL 使用
https://glm5.app/api/v1。 - 模型参数使用
GET /models返回的模型 ID,例如glm-5.3。 - 新代码优先使用
max_completion_tokens;兼容旧客户端时仍可使用max_tokens。 - 需要流式输出时设置
stream: true,并处理data: [DONE]。 - 支持工具的模型可使用
tools与tool_choice发起函数调用。
只有本文档明确列出的参数才保证会影响请求行为。支持的请求字段请查看 Chat Completions。
使用多模型客户端?
在支持 OpenAI 兼容接口的客户端中,将 Base URL 设置为 https://glm5.app/api/v1,使用你的 sk-glm5-... 密钥认证,并选择 GET /models 返回的模型 ID,例如 glm-5.3。
开始接入
创建 API 密钥
登录后打开 API 密钥,为你的应用创建一个密钥。完整密钥只展示一次,请保存到密码管理器或 Secret Store。
GLM5_API_KEY=sk-glm5-your-key
不要把 API 密钥暴露在浏览器代码、公开仓库、截图或客户端环境变量中。
选择模型
glm-5.3 是新接入默认推荐的公开模型 ID,适合编程、推理、智能体工作流和较长的技术任务。其他模型可根据价格与任务表现选择。
选择调用方式
可以直接调用 REST API,也可以继续使用 OpenAI SDK。两种方式都使用本文档列出的 Chat Completions 参数并返回相同结构。
发起第一次请求
https://glm5.app/api/v1/chat/completionsBearer 鉴权 · JSON 请求与响应
max_completion_tokens 是可选参数。需要明确限制输出长度时再设置;省略时使用所选模型的默认行为。GLM 5 可能在计费预占阶段使用内部估算值,但这个估算值不会改变模型的输出上限。
curl https://glm5.app/api/v1/chat/completions \
-H "Authorization: Bearer $GLM5_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "glm-5.3",
"messages": [
{"role": "system", "content": "你是一名简洁的技术助手。"},
{"role": "user", "content": "给我一个三步 API 上线检查清单。"}
],
"max_completion_tokens": 1024
}'
兼容范围
GLM 5 实现本文档明确列出的 Chat Completions 子集。某些 SDK 即使允许发送额外字段,也只有本文档列出的字段保证会影响请求行为。依赖某个参数前,请先查看 Chat Completions。
控制上下文成本
Chat Completions 是无状态的
每次请求都会按本次 messages 中实际发送的内容计费。如果客户端每轮都重发完整历史,对话越长,输入 Token 越多,同一段历史也会被重复计入。请限制历史长度、摘要旧消息,并在旧上下文不再需要时开启新会话。
建议:
- 工作流需要明确输出上限时设置
max_completion_tokens。 - 监控
usage.prompt_tokens和usage.completion_tokens。 - 不要无限追加聊天历史。
- 不同模型的上下文限制可能不同,因此需要正确处理 context-limit 错误。
- 流式输出用于改善首字延迟,不会减少请求中的输入 Token。
在接入长对话或自动化智能体前,建议先阅读上下文与成本控制。