接口文档

OpenAI 兼容 / Responses 双协议,一套密钥、一个基础地址,30 秒接入。

基础地址与鉴权

基础地址https://api.csz.asia/v1
等价地址https://gdlr.asia/v1
鉴权Authorization: Bearer sk-…
兼容头x-api-keyx-goog-api-key
内容类型application/json
编码UTF-8

密钥在控制台创建,绑定分组(决定可用模型与倍率),可随时吊销重建。

端点一览

方法路径说明
POST/v1/chat/completions对话补全(最常用)
POST/v1/responsesResponses 协议(Codex 类客户端)
GET/v1/models当前密钥可见的模型列表
POST/chat/completions上表的简写路径(等价)
POST/responses上表的简写路径(等价)

对话补全

POST /v1/chat/completions

{ }请求示例

{
  "model": "deepseek-v4-flash-0731",
  "messages": [
    {"role": "system", "content": "你是运维助手"},
    {"role": "user", "content": "写一个 Nginx 限流配置"}
  ],
  "stream": true,
  "max_tokens": 1024,
  "temperature": 0.7
}

参数说明

字段类型说明
modelstring必填;须为当前密钥分组可见的模型
messagesarray必填;system/user/assistant/tool 角色序列
streambool是否 SSE 流式返回,长文本建议开启
max_tokensint输出上限;推理型模型未设置时按网关默认预算执行
temperaturefloat采样温度
toolsarray函数调用定义,按分组支持

流式响应(SSE)

data: {"id":"chatcmpl-…","object":"chat.completion.chunk","choices":[{"delta":{"content":"你"}}]}
data: {"id":"chatcmpl-…","object":"chat.completion.chunk","choices":[{"delta":{"content":"好"}}]}
data: [DONE]

每行以 data: 开头,最后一行 data: [DONE] 结束;断流请按指数退避重试。

Responses 协议

POST /v1/responses

请求示例

{
  "model": "gpt-5.6",
  "input": "把这段日志按错误类型归类",
  "instructions": "输出 Markdown 表格",
  "max_output_tokens": 2048,
  "stream": false
}

返回体为 object: "response",正文在 output[].content[].text,用量在 usage

参数说明

字段类型说明
modelstring必填
inputstring / array必填;纯文本或消息数组
instructionsstring系统级指令(等价 system)
max_output_tokensint输出上限;未设置时网关补默认预算,避免长会话被截断
streambool流式事件流

Codex 等客户端只需把 base_url 指向 https://api.csz.asia/v1,其余配置保持默认。

错误码与限流

ERRORS · RATE LIMIT

!常见错误码

HTTPcode含义与处理
400invalid_request_error参数或模型不合法;检查 model 是否在当前分组内
401API_KEY_REQUIRED / UNAUTHORIZED未带密钥或密钥失效;重新生成密钥
403FORBIDDEN密钥无该分组权限,或分组被停用
404NOT_FOUND路径写错(注意 base_url 已含 /v1,不要再拼一次)
429RATE_LIMITED并发或频率超限;退避重试或申请提额
502 / 503UPSTREAM_ERROR上游瞬时不可用;指数退避重试,持续出现请联系我们
504UPSTREAM_TIMEOUT长上下文或上游拥堵;缩短上下文后重试

限流与并发

  • · 并发与 RPM 上限按分组配置,控制台可见当前用量
  • · 超限返回 429,建议指数退避(1s→2s→4s,最多 3 次)
  • · 长文本生成请使用流式,避免长连接被中间设备回收
  • · 单次请求上下文过大时首字会明显变慢,这是上游计算特性,不是故障
  • · 企业客户可申请专属并发与独立上游
重试原则:只重试 429/5xx 与网络错误; 4xx(除 429)重试无用,先修请求。不要对同一请求无限重试——既扣额度也压网关。

模型与计费口径

MODELS · BILLING

分组(密钥维度)代表模型倍率口径典型场景
按量 · 经济档deepseek-v4-flashglm-5.3-flash约 0.05×–0.2× 官方价批量任务、长文本处理
按量 · 标准档glm-5.3deepseek-v4-pro约 0.2×–0.5× 官方价常规业务对话与代码生成
按量 · 高配档gpt-5.6(Responses)按分组倍率复杂推理、智能体、Codex 类客户端
日卡 / 月卡主流模型全开(按分组)限时权益,不按倍率累计短周期高强度开发
企业专属指定模型与上游合同约定合规、隔离、SLA 要求

计费口径:扣费 ≈ 官方价 × token 用量 × 分组倍率,额度按 1 元 = 1 美元入账; 每次调用的用量与扣费都能在控制台"用量记录"里逐笔对上。

客户端配置

SDK · CLI

🐍Python(openai SDK)

from openai import OpenAI
client = OpenAI(api_key="sk-…", base_url="https://api.csz.asia/v1")
r = client.chat.completions.create(
    model="glm-5.3",
    messages=[{"role": "user", "content": "你好"}],
    stream=True,
)
for chunk in r:
    print(chunk.choices[0].delta.content or "", end="")

Node.js

import OpenAI from "openai";
const client = new OpenAI({
  apiKey: process.env.CSZ_API_KEY,
  baseURL: "https://api.csz.asia/v1",
});
const r = await client.chat.completions.create({
  model: "deepseek-v4-flash-0731",
  messages: [{ role: "user", content: "你好" }],
});
console.log(r.choices[0].message.content);

curl(自检用)

curl -s https://api.csz.asia/v1/chat/completions \
  -H "Authorization: Bearer $CSZ_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"glm-5.3","messages":[{"role":"user","content":"ping"}],"max_tokens":16}'

401=密钥问题 · 200=链路正常 · 5xx=我们的问题(把时间点发我们)

Codex / 兼容 Responses 的工具

[model_providers.csz]
name = "成作聚合"
base_url = "https://api.csz.asia/v1"
wire_api = "responses"
env_key = "CSZ_API_KEY"

写入客户端配置后,直接选模型即可;Responses 路径网关已做长会话兜底。

安全建议(白给的那种)
① 密钥只放服务端环境变量,永远不要写进前端代码或提交到 Git;
② 一个业务一把密钥,出事能单独吊销;
③ 定期在控制台轮换密钥,尤其是交接人员变动后;
④ 生产环境务必记录 request_id(响应头),出问题直接把 id 给我们,定位最快。