文档目录

OpenAI 协议

更新于 2026-08-27

本站完整兼容 OpenAI 协议的 wire 格式:把官方 SDK 或任意第三方客户端的 base_url 改为 https://api.ai526.com/v1,无需改动其他代码。

Base URL 与鉴权

  • Base URL:https://api.ai526.com/v1必须带 /v1)。
  • 鉴权:Authorization: Bearer sk-你的Key;也接受 x-api-key: sk-你的Key,两者等价(同时传且值不同会被拒绝)。
  • 每个响应都带 x-request-id 头,排障凭它定位。

支持的端点

端点方法用途
/v1/modelsGET列出你的 Key 可用的在架模型
/v1/chat/completionsPOST对话补全(主力端点,支持流式 / 工具调用 / 视觉输入 / JSON 模式)
/v1/responsesPOSTResponses 协议(Codex CLI、OpenClaw openai-responses 模式使用)
/v1/embeddingsPOST文本向量
/v1/images/generationsPOST文生图
/v1/images/editsPOST图片编辑(multipart 表单)
/v1/audio/speechPOST语音合成(TTS)
/v1/audio/transcriptionsPOST语音识别(STT,multipart 表单)
/v1/videosPOST / GET视频生成(异步任务:创建 → 轮询 → 下载)

本站是无状态网关:不提供 Files API 与服务端会话存储,凡引用 file_idprevious_response_id 的请求会返回 400;图片 / PDF 请以 URL 或 base64 内联方式传入。

/v1/chat/completions 常用字段

字段类型说明
modelstring,必填模型 ID,以 /v1/models 返回为准;不存在或未上架返回 404
messagesarray,必填支持 system / developer / user / assistant / tool 角色;user 内容支持文本、图片(URL 或 base64 dataURL)、PDF(base64)
max_completion_tokensnumber生成上限(含推理 tokens);旧字段 max_tokens 仍兼容,两者同传时以前者为准
temperature / top_pnumber采样参数,范围 0~2 / 0~1;超范围返回 400
streambooleanSSE 流式输出
stream_optionsobject{"include_usage": true} 让流末返回真实 usage;仅 stream:true 时可传
tools / tool_choicearray / mixed函数工具调用(type:"function");tool_choice 支持 none / auto / required / 指定函数
response_formatobjecttext / json_object / json_schema(结构化输出)
reasoning_effortstring推理力度档位;模型是否支持以模型文档页实测参数为准
stopstring | string[]停止序列,最多 4 个
frequency_penalty / presence_penaltynumber-2~2
seed / logprobs / logit_bias接受并尽力透传(取决于承接模型的能力)

限制项(返回 400 的常见情况):

  • n 仅支持 1;
  • modalities"audio"(音频输出)暂不支持;
  • type:"custom" 工具、file_id 引用暂不支持;
  • store:true 会被强制改写为 false——本站不允许任何一方留存你的请求内容。

流式(SSE)说明

  • 每个事件一行 data: {JSON},流以 data: [DONE] 终止;
  • 所有 chunk 的 idcreated 相同,objectchat.completion.chunk
  • 工具调用参数按 delta.tool_calls[].index 聚合拼接 arguments 片段(首片带 id / type / name,续片仅 arguments);
  • stream_options.include_usage:true 时,[DONE] 前会追加一个 choices 为空、带完整 usage 的 chunk,方便客户端核对消耗。

限速响应头

所有 2xx / 429 响应带以下头(RPM 口径,取 Key 限速与分组限速的更严者):

响应头说明
x-ratelimit-limit-requests每分钟请求上限
x-ratelimit-remaining-requests当前窗口剩余次数
x-ratelimit-reset-requests窗口重置秒数
Retry-After仅 429 时携带,建议等待秒数

错误码

错误统一为 OpenAI 外壳:{"error": {"message", "type", "param", "code"}}

HTTPtype / code含义与处置
400invalid_request_error参数校验失败;按 message 与 param 修正请求
401authentication_error / invalid_api_keyKey 缺失、无效、被禁用或已过期
402insufficient_quota余额不足;前往充值 后恢复
403permission_error / model_not_allowedKey 的模型白名单不含该模型
404invalid_request_error / model_not_found模型不存在或未上架
413request_too_large请求体超限(JSON ≤ 32MB,multipart ≤ 50MB)
429rate_limit_error / rate_limit_exceededRPM 超限;按 Retry-After 退避重试
429rate_limit_error / key_quota_exceeded该 Key 的额度上限已用尽;调整 Key 额度或换 Key
500api_error网关内部错误;请附 x-request-id 联系我们
502api_error / upstream_error上游临时故障且自动重试已用尽;稍后重试
503api_error / no_available_channel该模型暂无可用线路;关注服务状态页

失败不扣费

返回 4xx / 5xx 的请求一律不扣费;只有成功响应按真实用量结算。详见计费规则

与官方行为的差异小结

  • 余额不足用 402(官方挂在 429 下):语义更准,官方 SDK 会抛错且不做无意义的自动重试;
  • usage 一律返回:上游偶发缺失时由网关补估算,并在控制台用量明细标注;
  • GET /v1/models 同时提供 Anthropic 格式(请求带 anthropic-version 头时自动切换)。