OpenAI

OpenAI 兼容接口

使用 OpenAI SDK 调用模型、文件与知识库;各操作的支持情况与差异见下方。

基础地址

加载中…

接入

加载中…

端点

方法路径说明支持
POST/v1/chat/completions对话● 支持
POST/v1/responses生成响应● 支持
GET/v1/responses/{response_id}读取响应● 支持
DELETE/v1/responses/{response_id}删除响应● 支持
POST/v1/responses/{response_id}/cancel取消响应◐ 部分支持
GET/v1/responses/{response_id}/input_items列出响应输入项● 支持
POST/v1/responses/compact压缩响应○ 未支持
POST/v1/responses/input_tokens统计输入 token○ 未支持
POST/v1/conversations创建会话● 支持
GET/v1/conversations/{conversation_id}读取会话● 支持
POST/v1/conversations/{conversation_id}更新会话● 支持
DELETE/v1/conversations/{conversation_id}删除会话● 支持
POST/v1/conversations/{conversation_id}/items创建会话条目● 支持
GET/v1/conversations/{conversation_id}/items列出会话条目● 支持
GET/v1/conversations/{conversation_id}/items/{item_id}读取会话条目● 支持
DELETE/v1/conversations/{conversation_id}/items/{item_id}删除会话条目● 支持
POST/v1/images/generations生成图像● 支持
GET/v1/models列出模型● 支持
GET/v1/models/{model}读取模型● 支持
POST/v1/embeddings文本向量● 支持
POST/v1/videos创建视频● 支持
GET/v1/videos列出视频● 支持
GET/v1/videos/{video_id}读取视频● 支持
GET/v1/videos/{video_id}/content下载视频内容● 支持
DELETE/v1/videos/{video_id}删除视频● 支持
POST/v1/videos/{video_id}/remix混剪视频○ 未支持
POST/v1/audio/transcriptions转写音频● 支持
POST/v1/files上传文件◐ 部分支持
GET/v1/files列出文件● 支持
GET/v1/files/{file_id}检索文件● 支持
DELETE/v1/files/{file_id}删除文件● 支持
GET/v1/files/{file_id}/content检索文件内容● 支持
POST/v1/audio/speech生成语音● 支持
POST/v1/images/edits编辑图片● 支持

知识库(16 个操作):创建知识库、添加文件、批量入库与搜索。

不支持的端点

以下端点在 /openai/v1 下未提供,调用返回 404。替代流程不等同于原端点。

端点替代
/v1/moderations无替代端点
/v1/batches逐次调用所需模型端点
/v1/fine_tuning使用模型目录中已有的模型
/v1/assistants使用 Responses 与 Conversations 构建会话
/v1/completions改用 chat/completions
/v1/audio/translations先用 audio/transcriptions 转写,再用 chat/completions 翻译
/v1/uploads改用 files 上传文件
/v1/images/variations使用 images/edits 提交图片与编辑提示词

与官方的差异

  • 对话:未知顶层字段原样转发给同协议上游,由上游决定是否接受;已声明字段的类型与取值范围仍会校验,不合法时返回 400 并点名字段。
  • 生成响应:未知顶层字段原样转发给同协议上游,由上游决定是否接受;已声明字段的类型与取值范围仍会校验,不合法时返回 400 并点名字段。
  • 读取响应:按 ID 读取一条已保存的响应。如果创建时 store 为 false,我们不会保存这次响应,读取会返回 404 response_not_found;超过保留期(默认 30 天)后读取也会返回同样的 404。
  • 删除响应:按 ID 立即删除一条已保存的响应。如果创建时 store 为 false,我们不会保存这次响应,删除会返回 404 response_not_found。
  • 取消响应:仅对以 background:true 创建、且路由到具备后台生成能力的模型的响应可用:取消是 幂等的,重复调用返回同一个终态响应;我方的取消只能停止我方对上游流的继续读取, 不能保证已发往上游的算力停止计算,用量按实际收到的部分结算。对一个非后台 (同步)响应调用 cancel:如果这个响应 id 不存在(未持久化、已过期或 id 有误), 返回 404 object_not_found;如果响应存在但其来源 provider 没有声明支持 cancel 操作(我们目前没有接入任何为同步响应声明该能力的上游),返回 400 native_responses_operation_unsupported。这两种情况都不是尚未实现的 501 gate。
  • 列出响应输入项:列出一条已保存响应的输入项。支持 limit(1–100,默认 20)、order(asc/desc, 默认 desc,与官方一致)与基于条目 id 的 after 游标分页;has_more/first_id/ last_id 均与实际返回页一致,可据此翻页且不重不漏。每个条目都带服务端签发的 id(message 为 msg_ 前缀,function_call/function_call_output/reasoning 各自 对应前缀),本次上线前已保存、尚无服务端 id 的旧数据在读取时按确定性规则补 id,不做破坏性迁移,同一游标反复读取保持稳定。以 previous_response_id 续接 创建的响应,其输入项列出解析后的完整输入:前序响应链已有的输入与输出条目 再加本轮自己提交的输入;若该祖先响应在我方平台未保存(例如创建时 store 为 false)或已过期删除,则只列出本轮自己提交的输入。如果创建时 store 为 false,我们不会保存这次响应,列出会返回 404 response_not_found。
  • 压缩响应:把响应的输入压缩成摘要,依赖 OpenAI Responses 官方的服务端存储(store)语义,我们目前还没有实现;调用会返回 501(message 为 “This platform has not implemented … yet.”,响应头 x-should-retry 为 false),不产生副作用,官方 SDK 不会重试。
  • 统计输入 token:只统计请求输入会消耗的 token 数、不生成内容,依赖 OpenAI Responses 官方的服务端存储(store)语义,我们目前还没有实现;调用会返回 501(message 为 “This platform has not implemented … yet.”,响应头 x-should-retry 为 false),不产生副作用,官方 SDK 不会重试。
  • 创建会话:创建一个会话,可选携带初始 items(一次最多 20 条)与 metadata。会话按租户分区,创建者是唯一能引用它的租户。
  • 读取会话:按 ID 读取一个会话。不存在或属于其他租户都返回 404 conversation_not_found。
  • 更新会话:更新一个会话的 metadata——整体替换,不与已有 metadata 合并。
  • 删除会话:删除一个会话。删除后该会话与其 items 都不能再被引用(包括作为 Responses create 的 conversation 参数)。
  • 创建会话条目:向一个会话追加 items(一次最多 20 条),返回刚追加的这些 items。
  • 列出会话条目:按创建顺序列出会话的 items,支持 limit/after/order 分页参数。
  • 读取会话条目:按 ID 读取会话里的单条 item。
  • 删除会话条目:删除会话里的单条 item,返回该会话对象(不是被删除的 item)。
  • 读取模型:返回与列表中同一条目相同的模型对象。只有声明了 OpenAI 协议的模型可见;模型 ID 可以带斜杠分隔的发布方前缀。不存在或没有声明 OpenAI 协议的模型返回 404。
  • 文本向量:转发方式与对话(chat completions)一致,用量算在同一份计费里。 未知顶层字段原样转发给同协议上游,由上游决定是否接受;已声明字段的类型与取值范围仍会校验,不合法时返回 400 并点名字段。
  • 创建视频:异步生成视频:创建任务后轮询状态,完成后下载内容。按输出秒数计费,每秒价格见 GET /model/v1/models 的 pricing.video_second(USD/秒)。请显式选择已注册的视频模型,例如 wan2.7-t2v。
  • 列出视频:列出本账号的视频任务。limit 为 1 到 100,order 为 asc 或 desc,after 必须引用存在的任务。
  • 读取视频:读取任务的当前状态和进度。status 为 queued 或 in_progress 时继续轮询,failed 时查看 error,completed 后才能下载内容。任务不存在返回 404。
  • 下载视频内容:任务 completed 后下载视频文件(video,MP4)或缩略图(thumbnail);spritesheet 返回 400,index 只支持 0。任务不存在返回 404。
  • 删除视频:删除任务及其生成的内容。任务不存在返回 404。
  • 混剪视频:未支持,调用固定返回 400(invalid_request_error,消息为 Video remix is not supported);不要重试。
  • 转写音频:标准请求字段;不能表达的参数返回 input_not_representable。
  • 上传文件:单文件最多 100 MB(104857600 字节);按内容识别 PDF、Office、图片、音频、视频与 UTF-8 文本。purpose 支持 user_data / assistants / vision;其他用途、空文件、不支持类型和超限均返回 400。不支持 Uploads 分片。只接受表单 file、purpose、expires_after[anchor]、expires_after[seconds];其他表单字段或任何查询参数返回 400 invalid_request_error,消息为 "Unrecognized request argument supplied: <字段>",param 为该字段。
  • 列出文件:只接受查询参数 after、order、limit、purpose;其他查询参数返回 400 invalid_request_error,消息为 "Unrecognized request argument supplied: <参数>",param 为该参数。

参数与字段的权威定义以 OpenAI 官方文档为准。

错误按 OpenAI 格式返回,参见错误;额度与响应头参见限流。

导出

本页内容