Responses API

OpenAI Responses API 格式,支持函数调用、内置工具与服务端多轮上下文管理

POST/v1/responses

Responses API 是 OpenAI 推出的新一代 Agentic 接口,相比 Chat Completions 提供更强大的能力:

  • 函数调用(Function Calling):模型可调用自定义函数
  • 内置工具:web_search_preview(联网搜索)等开箱即用
  • 服务端多轮上下文:通过 previous_response_id 自动维护对话历史,无需客户端传完整消息
  • 推理力度控制:通过 reasoning.effort 精确调节思考深度

注意: 标注为 Responses Only 的模型(如 gpt-5-pro-official、gpt-5.3-codex-official)仅支持此 API,不支持 Chat Completions。完整模型列表请参阅 模型一览。

Authorizations

Authorizationstring必填

使用 Bearer Token 认证

Authorization: Bearer YOUR_API_KEY

获取 API Key:访问 API Key 管理页面

Body

modelstring必填

模型名称

示例:"gpt-5-pro-official"、"gpt-5.3-codex-official"、"gpt-5.2-official"

inputstring | object[]必填

用户输入,支持两种格式:

  • 字符串:简单文本输入
  • 消息数组:多轮对话格式
显示隐藏 消息数组格式
rolestring必填

消息角色:user、assistant、developer

contentstring | object[]必填

消息内容,支持纯文本或包含图片的内容块数组

instructionsstring

系统指令,指导模型行为(等同于 Chat Completions 中的 system message)

streamboolean默认 false

是否启用流式输出

max_output_tokensinteger

生成内容的最大 token 数量

temperaturenumber默认 1

采样温度,范围 0 ~ 2

top_pnumber默认 1

核采样概率阈值,范围 0 ~ 1

previous_response_idstring

上一次响应的 ID,用于服务端自动拼接多轮上下文,无需客户端传完整历史消息

reasoningobject

推理配置

显示隐藏 reasoning
effortstring

推理力度:high、medium、low、none

值越高,模型思考越深入,消耗的 reasoning tokens 越多

toolsobject[]

可用工具列表

显示隐藏 tools[n]
typestring必填

工具类型:function(自定义函数)、web_search_preview(联网搜索)

namestring

函数名称(type 为 function 时必填)

descriptionstring

函数描述

parametersobject

函数参数的 JSON Schema

tool_choicestring默认 auto

工具选择策略:auto、none、required

Response

idstring

响应的唯一标识符(可用作 previous_response_id)

objectstring

固定为 response

statusstring

响应状态:completed、failed、in_progress

outputobject[]

输出项列表,可能包含多种类型:

  • message:文本回复,包含 content[].text
  • function_call:函数调用请求,包含 name 和 arguments
  • reasoning:推理过程(当 reasoning.effort 非 none 时出现)
  • web_search_call:联网搜索调用记录
usageobject

token 消耗统计

  • usage.input_tokens:输入 token 数
  • usage.output_tokens:输出 token 数
  • usage.output_tokens_details.reasoning_tokens:推理 token 数
  • usage.total_tokens:总 token 数

Background 任务

background: true 提交的请求会立即返回 status 为 queued / in_progress 的 response 对象,之后可轮询与取消(须使用提交时的同一 API Key,可查询窗口 7 天):

GET  /v1/responses/{response_id}POST /v1/responses/{response_id}/cancel