Skip to main content
openai/o3 的 API 参考,由 Comfy Router 从 OpenAI 提供。

快速开始

你的 Comfy 工作区中创建一个密钥,并将其导出为 COMFY_API_KEY。Python 和 TypeScript 代码片段使用 Comfy SDK(pip install comfy-sdknpm install @comfyorg/sdk);cURL 代码片段则是通过原生 HTTP 发起的相同调用。 模型 ID: openai/o3 端点: POST https://api.comfy.org/v2/models/openai/o3

架构

输入

string[]
要在模型响应中额外包含的输出数据。
string | object[]
必填
提供给模型的文本、图像或文件输入,用于生成响应。这是本契约中 Router 唯一无法提供的字段,也是下方 required 中唯一的条目。
string
在模型的上下文首位插入一条 system(或 developer)消息。
integer
一次响应所生成 token 数量的上限,包括可见的输出 token 和推理 token。在推理 id 上,该上限与隐藏的推理 token 共享,因此较小的值可能在产生任何可见文本之前就耗尽整个预算。这正是推理冒烟用例发送 1024、而聊天用例发送 16 的原因。范围:1
string
OpenAI 模型标识符。在 Comfy Router 上该字段为可选,Router 会从 {model} 路径段填充它;显式的 null 也以同样方式被替换。发送与路径不一致的值会被拒绝。
boolean
是否允许模型并行执行工具调用。
string
上一个响应的 ID,用于多轮对话。
object
仅推理层级。推理模型的配置,例如 {"effort": "medium"}。原样转发;接受的键请参见 OpenAI 的推理指南。聊天层级的 id 会忽略它。
boolean
OpenAI 是否存储已生成的响应以供后续检索。
boolean
声明该字段只是为了让发送它的调用方不被拒绝,但它在当前接口上是无效的:Router 会在分发之前将其固定为 false,因为它捕获的是提供商的响应,而不是转发 text/event-stream,而 openAiResponsesProxy 的 ModifyResponse 无法解码该流,因此流式生成会由 OpenAI 计费,却没有任何一方进行计量。如果需要流式传输,请使用 POST /proxy/openai/v1/responses
number
采样温度。仅聊天层级:o 系列推理 id(o1o1-proo3o4-mini)在 OpenAI 处会拒绝该参数。Router 不会替它们拒绝,原因请见本组件关于两个层级共用同一 schema 的说明,因此发送该参数的推理调用会由 OpenAI 自身的错误来回应。范围:02
object
输出格式配置,例如用于结构化输出的 {"format": {"type": "json_schema", ...}}。原样转发。
string | object
模型应如何选择使用哪个工具。可以是字符串模式,也可以是指定某个工具的对象。
object[]
模型可以调用的工具定义。Router 不会收窄工具分类;接受的形状请参见 OpenAI 的 Responses API 参考。
number
核采样截止值。仅聊天层级,适用条件与 temperature 相同。范围:01
string
当上下文超出模型的窗口时采用的截断策略。与上面三个词汇表不同,这里的枚举确实会被强制执行,因为这两个值就是 OpenAI 文档所记录的完整集合,且至今没有扩充。显式的 null 仍然被接受,适用条件与上面的各字段相同。可能的值:autodisabled
object
token 用量封装。本契约中包含它,是因为 v1 操作在请求体上声明了它;OpenAI 会在响应中填充它,因此调用方没有理由发送它。
根据 Router 在 GET /v2/models/openai/o3/openapi.json 提供的 schema 生成,这也是它在请求到达提供商之前用于校验调用的同一份文档。

输出

string
将一条 system(或 developer)消息插入到模型上下文的第一个位置。当与 previous_response_id 一起使用时,上一个响应的指令不会延续到下一个响应。这样可以轻松地在新的响应中替换 system(或 developer)消息。
integer
一次响应可生成 token 数量的上限,包括可见的输出 token 和推理 token
string
用于生成响应的模型
number
默认值:"1"
控制响应的随机性范围:02
number
默认值:"1"
通过核采样控制响应的多样性范围:01
string
默认值:"\"disabled\""
用于模型响应的截断策略。
  • auto:如果本次响应以及此前响应的上下文超过模型的上下文窗口大小,模型将通过丢弃对话中间位置的输入项来截断响应,使其适应上下文窗口。
  • disabled(默认):如果模型响应将超过模型的上下文窗口大小,请求将以 400 错误失败。 可选值:autodisabled
string
模型上一个响应的唯一 ID。使用它来创建多轮对话。了解更多关于对话状态的信息。
object
仅限 o 系列模型推理模型的配置选项。
string
控制在后续轮次中哪些推理项会被渲染回模型,例如 autocurrent_turnall_turns
string
默认值:"\"medium\""
仅限 o 系列模型限制推理模型的推理投入程度。 当前支持的值为 lowmediumhigh。降低推理投入可以带来更快的响应,并在响应中减少用于推理的 token 数量。可选值:lowmediumhigh
string
弃用: 请改用 summary模型所执行推理的摘要。这对于调试和理解模型的推理过程非常有用。 可取值为 autoconcisedetailed可选值:autoconcisedetailed
string
用于响应的推理模式。
string
模型所执行推理的摘要。这对于调试和理解模型的推理过程非常有用。 可取值为 autoconcisedetailed可选值:autoconcisedetailed
object
object
一个对象,用于指定模型必须输出的格式。配置 { "type": "json_schema" } 可启用结构化输出(Structured Outputs), 确保模型匹配你提供的 JSON schema。请在 结构化输出指南中了解更多。默认格式为 { "type": "text" },无任何附加选项。不建议用于 gpt-4o 及更新版本的模型:设置为 { "type": "json_object" } 会启用较旧的 JSON 模式,它 确保模型生成的消息是有效的 JSON。对于支持 json_schema 的模型, 优先使用 json_schema
string
限制模型响应的详细程度。可取 lowmediumhigh
`none`, `auto`, `required` | object
模型在生成响应时应如何选择要使用的工具(一个或多个)。请参阅 tools 参数,了解如何指定模型可以调用的工具。
object[]
boolean
模型响应是否在后台运行。
object
响应的计费信息。
string
负责为该响应付费的一方。
number
此响应完成时的 Unix 时间戳(以秒为单位)。仅在状态为 completed 时出现。
number
此响应创建时的 Unix 时间戳(以秒为单位)。
object
当模型生成响应失败时返回的错误对象。
string
必填
响应的错误代码。Possible values: server_error, rate_limit_exceeded, invalid_prompt, vector_store_timeout, invalid_image, invalid_image_format, invalid_base64_image, invalid_image_url, image_too_large, image_too_small, image_parse_error, image_content_policy_violation, invalid_image_mode, image_file_too_large, unsupported_image_media_type, empty_image_file, failed_to_download_image, image_file_not_found
string
必填
对错误的人类可读描述。
number
根据新 token 在目前文本中已有的出现频率对其进行惩罚。
string
此 Response 的唯一标识符。
object
关于响应为何不完整的详情。
string
响应不完整的原因。可能的值:max_output_tokenscontent_filter
integer
一次响应中可处理的内置工具调用总数上限。
object
可附加到响应的键值对集合。
object
响应输入和输出的审核结果(如果请求了审核补全)。
string
此资源的对象类型,始终设置为 response可能的值:response
object[]
模型生成的内容项数组。
  • output 数组中各项的长度和顺序取决于模型的响应。
  • 与其访问 output 数组中的第一项并假定它是包含 模型生成内容的 assistant 消息,你可以考虑在 SDK 支持的情况下 使用 output_text 属性。
string
仅限 SDK 的便捷属性,包含 output 数组中所有 output_text 项 聚合后的文本输出(如果存在)。 在 Python 和 JavaScript SDK 中受支持。
boolean
默认值:"true"
是否允许模型并行运行工具调用。
number
根据新 token 是否已出现在目前文本中对其进行惩罚。
string
由 OpenAI 用于缓存相似请求的响应,以优化缓存命中率。替代 user 字段。
string
提示缓存的保留策略,例如 in_memory24h
string
一个稳定的标识符,用于帮助检测可能违反 OpenAI 使用政策的应用程序用户。
string
用于处理请求的处理层级,例如 autodefaultflexscalepriority
string
响应生成的状态,为 completedfailedin_progresscancelledqueuedincomplete 之一。可能的值:completedfailedin_progresscancelledqueuedincomplete
boolean
响应是否存储以供稍后通过 API 检索。
object
按内置工具细分的 token 和请求用量。
object
图像生成工具的 token 用量。
integer
object
integer
integer
integer
object
integer
integer
integer
网页搜索工具用量。
integer
integer
在每个 token 位置返回的最可能 token 的最大数量,每个 token 都带有对应的对数概率。
object
表示 token 用量详情,包括输入 token、输出 token、 输出 token 的细分以及使用的总 token 数。
integer
必填
输入 token 的数量。
object
必填
输入 token 的详细细分。
integer
写入缓存的输入 token 数量。
integer
必填
从缓存中检索到的 token 数量。 有关提示缓存的更多信息
integer
必填
输出 token 的数量。
object
必填
输出 token 的详细明细。
integer
必填
推理 token 的数量。
integer
必填
所使用的 token 总数。
string
已弃用的最终用户标识符。已被 safety_identifierprompt_cache_key 取代。

示例

输入

输出

发布前须知

SDK 会生成 Idempotency-Key 并在自动重试中复用它。手动重试时,请复用原始 key。Router 最长可保持连接 10 分钟。 请求失败时,Router 会发送 X-Comfy-Error-Type 响应头说明原因。422 表示 Router 在调用提供商之前就拒绝了输入。生成的资源请及时下载,因为结果链接会过期

请求头

身份验证、幂等性、请求 ID、错误分类、重试节奏、消费限额。

使用 Router API

模型发现、校验错误、重试与计费。

限制

Router 目前不支持的功能,以及替代方案。