OpenAI Responses API (订阅号)

本页记录的是订阅号渠道实测的参数支持范围。使用订阅号渠道 API Key 授权调用的模型,请以本页标注的参数状态为准。

POST/responses

通过 OpenAI Responses 原生协议创建一次模型响应。

调用 GET /v1/models 确认支持情况:返回项包含 "responses_endpoint":"/v1/responses" 时,该模型支持本接口。

调用 GPT 模型时,如需命中提示词缓存,只需固定携带 session-id 请求头:从响应中读取该值,并在同一关联会话的每次 LLM 请求中原样发送(2026-08-25 A/B 实测:仅传 session-id 与三个头全传的缓存效果一致)。thread-id、conversation-id 可选携带用于会话追踪,不是缓存命中的必需条件。对其他 LLM 请求,这些头不是必填。媒体任务端点和其他自定义请求头不会透传。请勿在这些头中放置敏感凭据。

当前通道不支持的官方参数(具体拒绝方式见下方参数表各项说明):background、conversation、max_output_tokens、max_tool_calls、metadata、moderation、previous_response_id、prompt、prompt_cache_key、prompt_cache_options、prompt_cache_retention、safety_identifier、service_tier、temperature、top_logprobs、top_p、truncation、user。部分可用/受限:store(仅 false)、context_management、include、reasoning、stream_options、tools、tool_choice。

鉴权

bearerAuth
鉴权Bearer <token>

U-Token 通用币 密钥,以 Authorization: Bearer sk-你的KEY 传入。

位置: header

请求头参数

参数名类型必填默认值描述
Authorizationstring必填–

U-Token 通用币 密钥,以 Bearer Token 形式传入。

参数名类型必填默认值描述
session-idstring可选–

用于关联上游会话的 Session ID,可选,建议始终携带。如需命中 GPT 提示词缓存,请从响应中读取此值,并在同一关联会话的每次 LLM 请求中原样发送;2026-08-25 A/B 实测仅携带此头即可稳定命中缓存。

参数名类型必填默认值描述
thread-idstring可选–

用于关联上游会话的 Thread ID,可选。可与 session-id 一并从响应读取并回传用于会话追踪;缓存命中不依赖此头(2026-08-25 A/B 实测仅 session-id 即可稳定命中)。

参数名类型必填默认值描述
conversation-idstring可选–

用于关联上游会话的 Conversation ID,可选。可与 session-id 一并从响应读取并回传用于会话追踪;缓存命中不依赖此头(2026-08-25 A/B 实测仅 session-id 即可稳定命中)。

请求体

application/json

TypeScript 类型定义

在 TypeScript 中使用 request body 类型。

参数名类型必填默认值描述
modelstring必填–

生成本次响应所用的模型 ID,使用 GET /v1/models 返回的 ID。

与 OpenAI 官方不同,本字段为必填;传入不存在的模型 ID 会返回 HTTP 400。

inputstring | array必填–

输入给模型的文本、图像或文件,可以是字符串,也可以是输入项数组。与 OpenAI 官方不同,本字段为必填。

实测可用的形态:纯字符串、EasyInputMessage 数组、input_text 内容块、developer 角色、input_image 的 base64 data URL、input_file 的内联 file_data。input_image 传远程 HTTPS 图片地址不可用。

input[].rolestring条件必填–

指令优先级角色。developer 与 system 的指令优先于 user。

取值: "user" "assistant" "system" "developer"

input[].contentstring | array条件必填–

字符串,或由内容块组成的数组。

input[].content[].typestring条件必填–

取值: "input_text" "input_image" "input_file"

input[].content[].textstring可选–

type 为 input_text 时使用。

input[].content[].image_urlstring可选–

type 为 input_image 时使用。仅 data: base64 形式可用。

input[].content[].filenamestring可选–

type 为 input_file 时使用。

input[].content[].file_datastring可选–

type 为 input_file 时使用,内联的 base64 文件内容。

instructionsstring可选–

插入模型上下文的系统消息。

请注意,不传时网关会注入默认系统提示词(You are a helpful coding assistant.),该提示词会影响模型行为并计入输入 token。需要覆盖时请显式传入本字段。

streamboolean可选false

以 Responses 原生 SSE 事件流式返回,事件名与结构符合官方规范。

textobject可选–

文本响应的相关配置,format 与 verbosity 均实测生效。

text.formatobject可选–

输出格式,默认为 {"type":"text"}。三种形态均实测可用。

text.format.typestring条件必填–

text 为自由文本,json_object 为旧版 JSON 模式,json_schema 为结构化输出。

取值: "text" "json_object" "json_schema"

text.format.namestring可选–

type 为 json_schema 时必填。允许 a-z、A-Z、0-9、下划线和连字符,最长 64 个字符。

text.format.schemaobject可选–

type 为 json_schema 时必填,输出需要遵循的 JSON Schema。

text.format.descriptionstring可选–

该格式的用途说明,供模型参考。

text.format.strictboolean可选–

强制严格遵循 schema,实测生效。

text.verbositystring可选"medium"

控制输出详细程度,实测能带来真实的输出 token 数差异。

取值: "low" "medium" "high"

toolsarray可选–

⚠️ 部分可用。 模型可调用的工具。

官方 16 种 tool type 中,本接口支持 function、web_search、custom、namespace 四种。

image_generation 传入返回 HTTP 200 并原样回显(还会补齐默认值),但请求转发给模型前该工具会被丢弃,实际不会生效,请勿依赖。

其余类型传入返回 HTTP 400:file_search、computer、computer_use_preview、code_interpreter、shell、mcp、programmatic_tool_calling、apply_patch、web_search_preview 只返回 Bad Request;local_shell 返回 The local_shell tool is no longer supported.;tool_search 必须与至少一个 deferred 工具同时传入,单独传入返回 tools.tool_search requires at least one deferred tool.。

tools[].typestring条件必填–

function 调用你自己的代码,web_search 联网检索,custom 自定义输入格式的工具,namespace 用于给工具分组。

取值: "function" "web_search" "custom" "namespace"

tools[].namestring可选–

工具名称,function 与 custom 必填。

tools[].descriptionstring可选–

工具用途,模型据此判断何时调用。

tools[].parametersobject可选–

函数入参的 JSON Schema。

tools[].strictboolean可选–

强制严格遵循 parameters。

tool_choicestring | object可选–

⚠️ 部分可用。 模型如何选择工具。

可用:字符串档位 none、auto、required,以及 {"type":"function"}、{"type":"custom"}、{"type":"allowed_tools"} 三种对象形态。

不支持:指定托管工具类型的对象形态(file_search、web_search_preview、computer_use_preview、code_interpreter、image_generation、mcp、shell、apply_patch、programmatic_tool_calling),传入返回 HTTP 400,提示 Tool choice 'X' not found in 'tools' parameter.。

tool_choice.typestring条件必填–

取值: "function" "custom" "allowed_tools"

tool_choice.namestring可选–

要强制调用的工具名,用于 function 与 custom。

tool_choice.modestring可选–

配合 allowed_tools 使用。

取值: "auto" "required"

tool_choice.toolsarray可选–

配合 allowed_tools 使用,限定模型可选的工具子集。

parallel_tool_callsboolean可选true

是否允许模型在同一轮内并行调用多个工具。

实测生效:同一请求要求查询两个城市的天气时,传 true 返回 2 个 function_call 项,传 false 只返回 1 个。

reasoningobject可选–

⚠️ 部分可用。 推理相关配置。

effort、summary、context 均实测可用;mode 只能用默认值 standard;generate_summary 传入返回 HTTP 400。

reasoning.effortstring可选–

推理投入档位,实测生效:usage.output_tokens_details.reasoning_tokens 六档单调递增(2026-08-30 实测 none 为 0、xhigh 约 349、max 约 516)。

请注意,官方枚举中的 minimal 本模型不支持,传入返回 HTTP 400,提示 Unsupported value: 'minimal' is not supported with the 'gpt-5.6-sol' model.。

取值: "none" "low" "medium" "high" "xhigh" "max"

reasoning.summarystring可选–

推理摘要的详细程度。非流式响应中会返回 reasoning 项,摘要内容在其 summary 字段中。

请注意,传 auto 时实测被解析为 detailed。

取值: "auto" "concise" "detailed"

reasoning.contextstring可选–

模型推理时纳入的对话轮次范围。gpt-5.6 系列默认为 all_turns。

取值: "auto" "current_turn" "all_turns"

reasoning.generate_summarystring可选–

❌ 不支持。 传入返回 HTTP 400。官方已废弃该字段,请改用 reasoning.summary。

取值: "auto" "concise" "detailed"

reasoning.modestring可选–

⚠️ 仅支持默认值 standard。 传 standard 返回 HTTP 200 并原样回显(不传时响应同样回显 standard);传 pro 返回 HTTP 400,提示 `reasoning.mode` is not supported with this model.。

取值: "standard" "pro"

includearray可选–

⚠️ 部分可用。 多数枚举值返回 HTTP 200;message.output_text.logprobs 返回 HTTP 400,提示 logprobs are not supported with reasoning models.。

storeboolean必填–

⚠️ 仅支持 false。 本接口不存储响应,也未提供 GET /v1/responses/{id} 检索端点(该路径返回 404)。

传 true 或不传时,请求会被拒绝并返回 HTTP 400,因此建议显式传入 false。多轮对话请在客户端自行拼接 input 数组。

取值: false

stream_optionsobject可选–

⚠️ 部分可用。 参数被接受,但 include_obfuscation 开关未观察到差异;在 stream 为 false 时传入也不会报错。

stream_options.include_obfuscationboolean可选–

在流式增量事件中加入随机填充,用于规避基于长度的旁路攻击。

backgroundboolean可选–

❌ 不支持。 传入返回 HTTP 400。

官方用途:在后台异步执行本次响应。本接口没有对应的任务查询端点,无法支持该模式。

context_managementarray可选–

⚠️ 部分可用。 [{"type": "compaction", "compact_threshold": 1000}] 返回 HTTP 200(2026-08-26 与 2026-08-30 两轮实测),响应不回显该字段。compact_threshold 低于 1000 返回 400;type 取 compact、auto 返回 400,提示 Unsupported context_management type: 'X'.。

官方用途:配置上下文压缩策略。

context_management[].typestring条件必填–

条目类型,目前仅支持 compaction。

context_management[].compact_thresholdnumber可选–

触发压缩的 token 阈值。

conversationstring可选–

❌ 不支持。 传入返回 HTTP 400,/v1/conversations 端点同样不可用。

官方用途:把本次响应归属到某个会话,自动累积上下文。请改为在客户端自行拼接 input 数组。

max_output_tokensinteger可选–

❌ 不支持。 传入返回 HTTP 400。

官方用途:限制单次生成的 token 上限。本接口无法用它控制成本,请改用 text.verbosity 与 reasoning.effort 间接约束输出长度。

max_tool_callsinteger可选–

❌ 不支持。 传入返回 HTTP 400。

官方用途:限制内置工具的总调用次数。

metadataobject可选–

❌ 不支持。 传入返回 HTTP 400。

官方用途:附加到响应对象上的自定义键值对。

moderationobject可选–

❌ 不支持。 传入返回 HTTP 400,带 policy 的形态同样不可用。

官方用途:配置输入输出的内容审核。

moderation.modelstring可选–

审核模型 ID。

moderation.policyobject可选–

输入输出的审核策略。

previous_response_idstring可选–

❌ 不支持。 传入返回 HTTP 400。

官方用途:接续上一轮响应构成多轮对话。本接口强制 store=false,响应不被存储,因此无法按 ID 续接。多轮对话请在客户端自行拼接 input 数组。

promptobject可选–

❌ 不支持。 传入返回 HTTP 400。

官方用途:引用服务端保存的提示词模板及其变量。

prompt.idstring可选–

提示词模板 ID。

prompt.versionstring可选–

模板版本。

prompt.variablesobject可选–

模板变量取值。

prompt_cache_keystring可选–

❌ 不支持。 传入不会报错,但会被网关生成的随机 UUID 覆盖,无法通过本字段控制缓存命中。

官方用途:提升提示词缓存命中率。本接口请改用 session-id 请求头关联会话,详见上方请求头参数说明。

prompt_cache_optionsobject可选–

❌ 不支持。 传入返回 HTTP 400,implicit 与 explicit 两种模式均不可用;内容块级的 prompt_cache_breakpoint 同样被拒绝,提示该内容块类型非法。

官方用途:控制提示词缓存的断点与生命周期。

prompt_cache_options.modestring可选–

缓存断点模式。

取值: "implicit" "explicit"

prompt_cache_options.ttlstring可选–

缓存断点的最短生命周期。

取值: "30m"

prompt_cache_retentionstring可选–

❌ 不支持。 传入返回 HTTP 400。

官方用途:设置提示词缓存的最长保留时长(官方已标记为废弃,建议改用 prompt_cache_options.ttl)。

取值: "in_memory" "24h"

safety_identifierstring可选–

❌ 不支持。 传入返回 HTTP 400。

官方用途:用于识别违规使用者的稳定标识。

service_tierstring可选–

❌ 不支持。 无法通过本参数选择服务档位。

实际表现分两种:auto、flex、scale、fast 返回 HTTP 400;default、priority、ultrafast 返回 HTTP 200,但响应体一律回显 default。

取值: "auto" "default" "flex" "scale" "priority" "fast" "ultrafast"

temperaturenumber可选–

❌ 不支持。 传入返回 HTTP 400,传合法值或越界值均如此。

官方用途:采样温度,取值 0 到 2。需要控制随机性请改用 prompt 约束。

top_logprobsinteger可选–

❌ 不支持。 传入返回 HTTP 400,配合 include 使用同样不可用(推理模型不支持 logprobs)。

官方用途:返回每个位置概率最高的若干个 token,取值 0 到 20。

top_pnumber可选–

❌ 不支持。 传入返回 HTTP 400。

官方用途:核采样,与 temperature 二选一。

truncationstring可选–

❌ 不支持。 显式传入 auto 或 disabled 均返回 HTTP 400(不传时响应体回显 disabled)。

官方用途:输入超出上下文窗口时的截断策略。

取值: "auto" "disabled"

userstring可选–

❌ 不支持。 传入返回 HTTP 400。

官方用途:终端用户的稳定标识(官方已在用 safety_identifier 与 prompt_cache_key 取代该字段)。

响应体

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/responses" \  -H "Authorization: Bearer sk-你的KEY" \  -H "session-id: sess_example" \  -H "thread-id: thread_example" \  -H "conversation-id: conv_example" \  -H "Content-Type: application/json" \  -d '{    "model": "gpt-5.6-sol",    "input": "Go 快速排序一般为什么比较快",    "store": false  }'
{  "id": "string",  "object": "string",  "created_at": 0,  "completed_at": 0,  "status": "completed",  "model": "string",  "error": {},  "incomplete_details": {},  "instructions": "string",  "output": [    {      "type": "string",      "role": "string",      "content": [        {          "type": "string",          "text": "string"        }      ]    }  ],  "output_text": "string",  "usage": {    "input_tokens": 0,    "output_tokens": 0,    "total_tokens": 0,    "input_tokens_details": {      "cached_tokens": 0,      "cache_write_tokens": 0    },    "output_tokens_details": {      "reasoning_tokens": 0    }  }}