要调用 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 迁移:四处代码改动
- 替换模型 ID。把
gpt-6-sol换成gpt-6.1-sol,并把它放在配置或环境变量中,这样回滚只需改一处。 - 重新映射
none与minimal。OpenAI 的建议是:用low替代none;把minimal先改为low,再在代表性任务上做对比。在同样不支持none的 GPT-6 Astra 上,发送它会返回 HTTP 400,所以在切换流量前就要修好这一点。 - 移除采样参数。当强度不是
none时,请移除temperature、top_p和top_logprobs(以及 Chat Completions 中的logprobs)。在 GPT-6 Sol 上把temperature与none搭配使用的代码需要这项改动。 - 把 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 中:
- 创建一个环境,设置
OPENAI_API_KEY(以 secret 形式存储)、MODEL_ID设为gpt-6-sol、EFFORT设为medium。 - 创建
POST https://api.openai.com/v1/responses,加上 headerAuthorization: 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."
}
- 添加断言:HTTP 200、
$.status等于completed、$.output[*].type包含message、$.usage.output_tokens大于 0,且$.usage.output_tokens_details.reasoning_tokens存在。然后再检查你的代码所依赖的输出结构,例如是否为你将要解析的键返回了合法 JSON。 - 添加一个后置脚本,把
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));
- 发送它,把
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 编程的实际用法、开发工作流,还有各种新工具和新玩法。