返回模型调用 API 参考从旧 Responses 示例迁移
本页用于修正旧页面中混入 Chat Completions 结构的示例,并说明怎样将应用迁到本站当前公开的 Responses 创建入口。
适用范围
本站公开的 Responses 创建调用为 POST /v1/responses;compact 为按模型/渠道条件开放的独立入口。此目录没有确认公开的 Response GET、取消、删除或 Files 管理入口。OpenAI 官方支持某个端点,不代表本站也开放该端点。
本页旧 URL 保留供已有书签和链接迁移使用。需要从零开始调用,请直接阅读创建 Response。
请求和响应差异
| 项目 | Responses | Chat Completions |
|---|
| 输入 | input | messages |
| 文本输出 | output 中 message/content 的 output_text | choices[].message.content |
| 函数请求 | function_call 项与 call_id | tool_calls[] 与其 id |
| 工具结果 | function_call_output,匹配 call_id | role: tool,匹配 tool_call_id |
| 流式终态 | response.completed 等事件 | 结束原因与可选 [DONE] |
不要把 Chat 的 choices、finish_reason 或 tool_call_id 混进 Responses 示例。
迁移步骤
- 将消息历史按 Responses 支持的角色和内容项目转为
input。 - 保留 Responses output item 类型;从 message 的
output_text 取文字,不把推理/工具项目拼入用户正文。 - 工具调用时执行白名单校验,并用原始
call_id 回传 function_call_output。 - 流式请求使用 SSE 事件并以
response.completed 判断成功;不要复用 Chat 的 delta/结束解析器。 - 删除旧示例中的
metadata.model_id 等非请求必需字段,使用 model;模型名和功能按当前 Key 的列表与权限确认。
鉴权与下一步
本站请求使用 Authorization: Bearer YOUR_API_KEY,地址为 https://top.qingyuntop.ai。替换占位符并保留 Bearer 后的空格,不要使用厂商 API Key。需要逐步输出时见Responses 流式返回。
Responses 与 Chat Completions 对比 · OpenAI Responses API
Responses API
调用与返回说明
OpenAI 新项目的首选模型调用协议。它以 output 项目表达文本、工具调用和推理结果,不能按 Chat Completions 的 choices 结构读取。
请求时注意
- 模型 ID 不要从示例中照抄。先调用 GET /v1/models,再选择返回列表中实际可用且支持当前协议的完整 ID。
- Responses API 的 input 可以是字符串,也可以是带 role/content 的输入项目数组;图片、文件和工具调用必须使用官方规定的输入项目类型。
- 不要把 Chat Completions 的 choices、message 或 delta 结构混用于 Responses API。
返回时注意
- 先检查 HTTP 状态码,再检查 response.status。只有 status=completed 才应视为完整成功;incomplete、failed 等状态必须进入业务失败或补偿流程。
- 文本优先读取 SDK 的 response.output_text;直接 HTTP 客户端应遍历 output,并提取 message 内容中的 output_text 项。
Responses API
调用与返回说明
OpenAI 新项目的首选模型调用协议。它以 output 项目表达文本、工具调用和推理结果,不能按 Chat Completions 的 choices 结构读取。
请求时注意
- 模型 ID 不要从示例中照抄。先调用 GET /v1/models,再选择返回列表中实际可用且支持当前协议的完整 ID。
- Responses API 的 input 可以是字符串,也可以是带 role/content 的输入项目数组;图片、文件和工具调用必须使用官方规定的输入项目类型。
- 不要把 Chat Completions 的 choices、message 或 delta 结构混用于 Responses API。
返回时注意
- 先检查 HTTP 状态码,再检查 response.status。只有 status=completed 才应视为完整成功;incomplete、failed 等状态必须进入业务失败或补偿流程。
- 文本优先读取 SDK 的 response.output_text;直接 HTTP 客户端应遍历 output,并提取 message 内容中的 output_text 项。