如何调用 GPT-6.1 Sol API?

GPT-6.1 Sol API 上手与迁移指南:首个 Responses 请求、推理强度档位选择、从 gpt-6-sol 迁移的四项代码改动、Batch/Flex/Fast 档位与缓存定价,以及在 Apifox 中做双模型回归测试。

用 Apifox,节省研发团队的每一分钟

如何调用 GPT-6.1 Sol API?

免费使用 Apifox

相关推荐

最新文章

API

一体化协作平台

API 设计

API 文档

API 调试

自动化测试

API Mock

API Hub

立即体验 Apifox
目录

要调用 GPT-6.1 Sol API,请向 https://api.openai.com/v1/responses 发送 POST 请求,带上 "model": "gpt-6.1-sol" 和作为 Bearer token 的密钥。它的标价与 GPT-6 Sol 相同,都是每百万 token 输入 $2、输出 $10,而缓存输入从 $0.20 降到 $0.10。从 gpt-6-sol 迁移基本只是替换一个字符串。真正的破坏性变更是推理强度:GPT-6.1 Sol 不接受 none 或 minimal,所以这些请求要改到 low,依赖 none 的代码也一样。

OpenAI 在 2026 年 9 月 29 日的 DevDay 上发布了 GPT-6.1 Sol。DevDay 2026 roundup 覆盖了其它发布内容,what is GPT-6.1 Sol 深入介绍了基准测试。本指南覆盖你的第一个请求、该从哪个强度档位起步、迁移中的每一项变更、Batch、Flex 和 Fast 档位,以及在上线生产流量之前,如何在 Apifox 中对两个模型 ID 做一次并排回归测试。

GPT-6 Sol vs GPT-6.1 Sol:API 有哪些变化

绝大部分规格是相同的。以下是来自 GPT-6.1 Sol 模型页、GPT-6 Sol 模型页以及 OpenAI Using GPT-6 迁移指南的完整差异:

gpt-6-sol gpt-6.1-sol 需要做什么
每 1M 输入 / 输出(Standard) $2 / $10 $2 / $10 无需处理
每 1M 缓存输入 $0.20 $0.10 重新计算缓存成本
每 1M 缓存写入 $2.50 $2.50 无需处理
上下文窗口 / 最大输入 / 最大输出 1,050,000 / 922,000 / 128,000 1,050,000 / 922,000 / 128,000 无需处理
知识截止日期 2026 年 4 月 20 日 2026 年 4 月 30 日 重新检查对日期敏感的评测
reasoning.effort none、low、medium(默认)、high、xhigh、max low、medium(默认)、high、xhigh、max 把 none 改为 low 并重新评估
Chat Completions 中的函数调用 仅在 reasoning_effort: "none" 时可用 不支持 把工具调用迁移到 Responses
接口 Chat Completions、Responses、Batch 相同 无需处理
速率限制 Tier 1:500 RPM / 500K TPM;Tier 5:15,000 RPM / 40M TPM 相同 无需处理

GPT-6 Sol 页面现在会引导读者转向 GPT-6.1 Sol,称其为「更新的 Sol 模型」。

发送你的第一个 GPT-6.1 Sol 请求

把密钥导出为 OPENAI_API_KEY,然后调用 Responses API:

curl https://api.openai.com/v1/responses \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -d '{
    "model": "gpt-6.1-sol",
    "reasoning": {"effort": "medium"},
    "input": "List three ways a webhook retry policy can create duplicate orders. One line each."
  }'

Python SDK 读取同一个环境变量:

from openai import OpenAI

client = OpenAI()
response = client.responses.create(
    model="gpt-6.1-sol",
    reasoning={"effort": "medium"},
    input="List three ways a webhook retry policy can create duplicate orders. One line each.",
)
print(response.output_text)
print(response.usage)

响应中有四个部分值得关注:

  • status 成功时为 completed。如果模型用尽输出预算,你会得到 incomplete,并且 incomplete_details.reason 被设为 max_output_tokens,有时在任何可见文本出现之前就如此。推理指南建议在实验阶段为推理和输出预留至少 25,000 token。
  • output 是一个数组。答案是 type: "message" 的那一项,其 content 中保存着 output_text。请按类型读取,而不是按索引。
  • usage.output_tokens 包含推理 token,按输出费率计费。usage.output_tokens_details.reasoning_tokens 显示其中有多少。
  • usage.input_tokens_details 报告 cached_tokens 和 cache_write_tokens。更便宜的缓存就体现在这里。

凡是涉及工具的场景都请使用 Responses API;GPT-6.1 Sol 仅在无工具的请求中支持 Chat Completions。Responses API guide 更深入地讲解了请求结构。

选择推理强度档位

强度是你控制成本与质量的主要旋钮,省略时默认是 medium。OpenAI 的模型选择指南把 medium 匹配到「复杂的技术工作,以及你预期会反复修订的协同交付物」,把 xhigh 匹配到需要打磨的交付物,以及基于相互矛盾证据做出的决策。OpenAI 的发布公告补充了按档位给出的结果。这些基准测试均为 OpenAI 自报,下表引用的是 OpenAI 在正文中陈述的差值:

强度 适用场景 OpenAI 对 GPT-6.1 Sol 的报告
low 对话、抽取、分类,以及任何你原本在 none 下运行的任务 在用户标记的对话中,含事实性错误的回复比例从 11.4%(GPT-6 Sol)降到 7.7%
medium(默认) Agent 自动化与工具调用工作流 AutomationBench 1.0.6:比 Claude Opus 5.5 高 2.2 个百分点,成本约为其三分之一;相同设置下比 GPT-6 Sol 高 4.8 个百分点
high 困难调试与深度规划 没有针对该档位的具体声明
xhigh 需要打磨的交付物与长时间异步运行 没有针对该档位的具体声明
max computer use 与困难科学任务 OSWorld 2.0:在 max 下比 GPT-6 Sol 高 7 个百分点,成本不到一半。Terminal-Bench Science 0.1:单任务 $5.47,而 Opus 5.5 为 $23.21、GPT-6 Astra 为 $23.80

两点提醒。事实性数据集是此前被标记出错的对话,并非典型流量。而在 Terminal-Bench Science 上,GPT-6 Astra 仍然得分最高(68.1%),因此 OpenAI 建议最困难的科学工作使用 Astra。

对于此前使用 none 的延迟敏感调用,请从 low 起步并实测。推理指南把 low 描述为高效推理,「延迟只有小幅增加」。如果想在对话中途改变强度又不破坏 prompt 缓存,请追加一个 configuration_update 输入项,而不是修改请求级的 reasoning.effort。

从 gpt-6-sol 迁移:四处代码改动

  1. 替换模型 ID。把 gpt-6-sol 换成 gpt-6.1-sol,并把它放在配置或环境变量中,这样回滚只需改一处。
  2. 重新映射 none 与 minimal。OpenAI 的建议是:用 low 替代 none;把 minimal 先改为 low,再在代表性任务上做对比。在同样不支持 none 的 GPT-6 Astra 上,发送它会返回 HTTP 400,所以在切换流量前就要修好这一点。
  3. 移除采样参数。当强度不是 none 时,请移除 temperature、top_p 和 top_logprobs(以及 Chat Completions 中的 logprobs)。在 GPT-6 Sol 上把 temperature 与 none 搭配使用的代码需要这项改动。
  4. 把 Chat Completions 的工具调用迁移到 Responses。GPT-6 Sol 只允许在 reasoning_effort: "none" 时于 Chat Completions 中做函数调用。这个组合在 6.1 Sol 上没有对应实现。

然后重新运行任何依赖时效性的内容:截止日期从 2026 年 4 月 20 日推迟到 4 月 30 日。如果你是从 Astra 迁移到 Sol 的,Astra-to-Sol migration guide 覆盖了更早的那一步。

Batch、Flex、Fast 与缓存输入定价

所有档位都保持了 GPT-6 Sol 的结构,只有缓存输入这一列减半。每 1M token 的价格取自API 定价页。模型页还说明,超过 272K 输入 token 的提示词,整个请求按输入与缓存费率的 2 倍、输出费率的 1.5 倍计费,规则与 GPT-6 Sol 一致:

档位 输入 缓存输入 缓存写入 输出
Standard $2.00 $0.10 $2.50 $10.00
Batch $1.00 $0.05 $1.25 $5.00
Flex $1.00 $0.05 $1.25 $5.00
Fast $4.00 $0.20 $5.00 $20.00
Standard,提示词超过 272K 输入 token $4.00 $0.20 $5.00 $15.00

Flex 是请求级的 service_tier: "flex"。Fast 是 service_tier: "fast",也接受 "priority" 作为别名。Fast 模式不支持 EU 数据驻留。GPT-6.1 Sol 的 Ultrafast「即将推出」,目前只有 GPT-6 Astra 大范围提供,详见 OpenAI Ultrafast mode。对于过夜任务,OpenAI Batch API guide 演示了如何跑一次批量任务。

缓存正是这次升级省钱的地方。根据prompt caching 指南,6.1 Sol 上的读取费用是输入费率的 0.05 倍,而 GPT-6 Sol 上是 0.1 倍;写入费用两者都是 1.25 倍。假设一个 50,000 token 的系统提示词在 1,000 个请求中复用。一次写入在两个模型上都花费 $0.125;999 次读取在 GPT-6 Sol 上花费 $9.99,在 GPT-6.1 Sol 上花费 $5.00。最小可缓存前缀是 1,024 个可见 token,缓存的 prefix 在最后一次写入或复用后至少 30 分钟内仍可命中。断点策略请参考 GPT-6 prompt caching。

在 Apifox 中测试这次替换

不要只凭标价就切换生产环境。把同一个已保存的请求分别发给两个 ID,对比返回结果。在 Apifox 中:

  1. 创建一个环境,设置 OPENAI_API_KEY(以 secret 形式存储)、MODEL_ID 设为 gpt-6-sol、EFFORT 设为 medium。
  2. 创建 POST https://api.openai.com/v1/responses,加上 header Authorization: Bearer {{OPENAI_API_KEY}} 和如下 body,然后保存:
{
  "model": "{{MODEL_ID}}",
  "reasoning": {"effort": "{{EFFORT}}"},
  "max_output_tokens": 25000,
  "input": "Return a JSON object with keys risk and fix for this policy: retry any 5xx three times with no idempotency key."
}
  1. 添加断言:HTTP 200、$.status 等于 completed、$.output[*].type 包含 message、$.usage.output_tokens 大于 0,且 $.usage.output_tokens_details.reasoning_tokens 存在。然后再检查你的代码所依赖的输出结构,例如是否为你将要解析的键返回了合法 JSON。
  2. 添加一个后置脚本,把 usage 换算成美元,使用 OpenAI prompt caching 指南中的输入拆分方式:
const u = pm.response.json().usage;
const d = u.input_tokens_details || {};
const cached = d.cached_tokens || 0;
const writes = d.cache_write_tokens || 0;
const model = pm.environment.get("MODEL_ID");
const cachedRate = model === "gpt-6.1-sol" ? 0.10 : 0.20;
const cost = ((u.input_tokens - cached - writes) * 2 + cached * cachedRate
  + writes * 2.5 + u.output_tokens * 10) / 1e6;
console.log(model, "cost per call $", cost.toFixed(5));
  1. 发送它,把 MODEL_ID 设为 gpt-6.1-sol,再发送一次。对比 reasoning_tokens、output_tokens、答案以及记录的成本。如果你是从 none 做重映射,请把基线跑在 none、候选跑在 low。

接着把该请求和一批真实提示词放进一个测试场景,并在 CI 中用 Apifox CLI 成对运行。--env-var 可以在单次运行中覆盖变量,因此一个场景就能覆盖两个模型:

npm install -g apidog-cli
apidog run --access-token "$APIDOG_ACCESS_TOKEN" -t "$SCENARIO_ID" -e "$ENV_ID" \
  --env-var "MODEL_ID=gpt-6-sol" -r cli,junit
apidog run --access-token "$APIDOG_ACCESS_TOKEN" -t "$SCENARIO_ID" -e "$ENV_ID" \
  --env-var "MODEL_ID=gpt-6.1-sol" -r cli,junit

断言失败会让任务失败,而 JUnit 报告让你并排看到两次运行的结果。对于每次运行结果都会波动的输出该如何断言,请参考 testing non-deterministic AI agents。

FAQ

GPT-6.1 Sol 比 GPT-6 Sol 更贵吗?不贵。两者的标价都是每 1M token 输入 $2、输出 $10。GPT-6.1 Sol 的缓存输入是 $0.10 而非 $0.20,因此缓存密集型的负载会更便宜。

该拿 reasoning.effort: "none" 怎么办?GPT-6.1 Sol 既不支持 none 也不支持 minimal。把两者都映射到 low,移除 temperature 和 top_p,并在切换前重新跑一遍评测。

GPT-6.1 Sol 能配合 Chat Completions 使用吗?可以,但仅限无工具的请求。工具调用需要使用 Responses API。

GPT-6.1 Sol API 有免费额度吗?没有。API 调用从第一个请求起就按 token 计费。Is GPT-6.1 Sol free? 介绍了成本最低的几种途径。

下一步


HiFox:将 Agent 变成真正的队友

另外,我们也在思考,AI 如何从个人提效走进团队协作。

HiFox 是一个让人和 AI Agent 在同一个工作现场协作的平台:你可以像给同事分派任务一样指派 Agent,在任务看板中跟踪进度、查看结果,让 Agent 成为团队里的队友。

👉 立即体验 HiFox:https://hifox.com

AI Coding 交流群

如果你也在用 AI 写代码,或者正在研究 Cursor、Claude Code 这些工具,
欢迎加入以下交流群。群里平时会聊一些 AI 编程的实际用法、开发工作流,还有各种新工具和新玩法。

AI Coding 交流群