从 GPT-6 Sol 切换到 6.1 Sol 看起来只需改一行代码,而且价格也一样。但其中有一些不兼容变更和行为变化,因此只更改模型名称可能会导致报错、意外账单,或者让智能体表现得不一样。OpenAI 的 GPT-6 迁移指南 涵盖了大多数官方变更。本文补充介绍了一些实践中容易踩坑的地方。
下面按问题从“明显失败”到“悄然失效”的顺序排列。
1. reasoning_effort: "none" 会返回 400 错误
你会看到: 请求被拒绝。
原因: 6.1 Sol 不支持 none 或 minimal。最低级别是 low。GPT-6 Sol 和 Luna 仍接受 none,所以旧代码在那里可以正常运行。
解决方法:
- OpenAI 建议将
none替换为low。如果使用的是minimal,请从low开始比较。 low比none更慢、成本也更高,因为它会生成推理 token。对于自动补全或实时分类等对延迟极为敏感的场景,继续使用 GPT-6 Sol 或改用 Luna 可能更合适。
2. Chat Completions 中的工具调用会停止工作
你会看到: 包含 tools 的 Chat Completions 请求失败。
原因: GPT-6 Sol 仅在 reasoning_effort 为 none 时才允许在 Chat Completions 中调用函数,因此不少项目依赖这种组合来低成本调用工具。现在 none 已不可用,6.1 Sol 上的 Chat Completions 仅适用于不包含工具的请求。 调用工具必须使用 Responses API。OpenAI 的迁移到 Responses API 指南 介绍了具体步骤。
解决方法: 改用 /v1/responses。AIHubMix 也支持该接口;参数详情请参阅AIHubMix Responses API 文档。
from openai import OpenAI
import os
client = OpenAI(
api_key=os.environ["AIHUBMIX_API_KEY"],
base_url="https://aihubmix.com/v1",
)
resp = client.responses.create(
model="gpt-6.1-sol",
reasoning={"effort": "low"}, # nested, not reasoning_effort
tools=[{
"type": "function",
"name": "get_weather",
"description": "Get the current weather for a city",
"parameters": {
"type": "object",
"properties": {"city": {"type": "string"}},
"required": ["city"],
},
}],
input="What's the weather in Shanghai today?",
)
print(resp.output)
容易忽略的事项:
- 在 Responses 中,参数名是
reasoning.effort。如果发送reasoning_effort,会收到Unsupported parameter。 - 在多轮工具调用中,需要传回自上一条用户消息以来的所有 reasoning、function_call 和 function_call_output 项,而不只是函数结果。
- 使用
store: false或 ZDR 时,reasoning 项默认包含encrypted_content。重放完整历史记录即可正常工作。
3. 必须移除采样参数
你会看到: 包含 temperature 或 top_p 的请求失败。
原因: 只有在推理强度为 none 时才允许使用这些参数。6.1 Sol 没有 none,因此此模型完全无法使用这些参数。
请移除:
temperature,top_p,top_logprobs- Chat Completions 中的
logprobs - Responses 中
include里的message.output_text.logprobs
如果你使用 logprobs 计算置信度分数或分类阈值,就需要采用新的方法。一种选择是使用结构化输出,让模型直接报告置信度。另一种方法是将这些任务保留在支持 none 的模型上。
4. 缓存机制有所变化,账单可能会增加
这是最容易忽略的一项,尤其是从 GPT-5.5 或更早版本迁移时。以下内容均来自 OpenAI 的提示词缓存指南。
参数已重命名。 prompt_cache_retention 现在改为 prompt_cache_options.ttl,唯一支持的值是 "30m"。
写入缓存也要计费。 费用是输入单价的 1.25 倍(6.1 Sol 每百万 token 收费 $2.50)。只使用一次的长前缀,启用缓存后成本会比不启用高 25%。
断点位置变了。 较早的模型会按固定间隔设置断点(GPT-5.5 每 2,048 个 token 设置一次)。现在隐式模式会在最近一条符合条件的消息末尾设置一个断点。因此,多个请求共用的较短前缀不会自动复用。 如果许多请求使用相同的系统提示词、但后接不同的用户输入,请在系统提示词后立即添加显式断点。
向现有消息追加内容会导致缓存失效。 缓存端点会落在较长消息的中间,因而无法匹配。请改为添加新消息。
更改推理强度会导致缓存失效。 reasoning.effort 属于前缀的一部分。要在对话中途切换,请使用 configuration_update(参见第 2 部分)。请注意,它不能与自动压缩或截断同时使用,而且 /responses/compact 会拒绝包含此项的历史记录。
高流量可能会降低缓存命中率。 缓存存储在各台独立机器上。同一前缀每分钟请求超过约 15 次时,请求可能会溢出到其他机器,导致缓存未命中。缓存 token 仍会计入 TPM 速率限制。
迁移前后, 请比较 cached_tokens、cache_write_tokens、延迟和每项任务的成本。
5. 输入超过 272K 后,价格翻倍
1.05M 的上下文窗口很诱人,但输入一旦超过 272K token,整个请求就会按输入价格的 2 倍和输出价格的 1.5 倍计费。 输入量从 270K 增至 280K,会让单次请求的费用从 $0.64 涨到 $1.27(计算过程见第 3 部分)。
智能体会话持续时间越长,内容就越多,因此很容易在不知不觉中超过这条界限。请在客户端设置一个 250K 左右的警报,并在触发时进行压缩。
6. 设置较小的 max_output_tokens 会得到空响应
你会看到: status: incomplete,原因是 max_output_tokens,没有可见输出,但仍会被收费。
原因: max_output_tokens 包含推理 token。原先在 none 下够用的上限,在 low 或更高推理强度下可能会被推理 token 完全耗尽。
解决方法: OpenAI 的推理指南 建议至少预留 25,000 个 token。请检查硬编码的限制,尤其是从 Chat Completions 的 max_tokens 沿用的值。例如,AIHubMix 模型页面 上的示例代码使用的是 1024。这适用于快速文本演示,但实际工作负载需要调高此值。
7. 智能体行为有所变化,因此需要重新审查权限
总体而言,6.1 Sol 的表现优于 6 Sol:严重事件减少了三分之一,而且它在工具失效时更有可能主动告知。不过,仍有一些数据值得关注(OpenAI 数据,由DataCamp汇编):
| 行为 | 6.1 Sol | 6 Sol | Astra |
|---|---|---|---|
| 试图绕过明确限制 | 23.5% | 64.4% | 17.4% |
| 编程任务中的欺骗行为 | 1.50% | 1.30% | 0.51% |
| 主动联系其他智能体 | 38% | 26% | — |
| 执行未经授权的操作 | 3% | 11% | — |
6.1 Sol 更加坚持不懈。遇到阻碍时,它会尝试更多变通办法,也更愿意与其他智能体交流。对于自动化智能体来说,这通常是你希望看到的表现;但如果智能体拥有广泛权限,风险也会随之增大。
应对方法:
- 通过沙箱和允许列表强制执行权限,而不只是依赖提示词中的指令。
- 对敏感操作要求人工审批,例如删除、部署、付款以及任何涉及凭据的操作。
- 保留完整的工具调用日志,并抽查“测试通过”或“已修复”等说法。
- 在多智能体设置中,明确规定智能体之间可以共享哪些内容。
8. 可能需要调整提示词
OpenAI 的 GPT-6 迁移指南列出了几项行为变化。虽然这些变化是针对 Astra 描述的,但 6.1 Sol 属于同一模型系列,性能也与其接近,因此请检查是否存在以下情况:
- 它会提出更多问题。 在你原本希望它继续执行时,它可能会停下来寻求确认。请告诉它优先采取行动并完成任务,同时说明“你能不能……”这样的措辞是要求它去做这件事。
- 它会更严格地按字面理解指令。 它会更加关注
AGENTS.md和 SKILL.md 文件,因此过时的规则可能会突然得到执行。OpenAI 强烈建议审查这些文件,并明确说明用户指令优先于技能指令。 - 它更倾向于使用 Markdown、列表和表格, 还会重复使用一些惯用表达。如果你希望它写成散文,请明确说明。
- 它会对小改动进行过多测试。 请告诉它,低风险、可撤销的编辑不需要完整运行测试。
- 它委派给子智能体的次数可能低于你的预期。 如果你希望它并行处理任务,请明确说明何时应拆分任务。
9. 可用性和部署限制
- 尚未在常规 ChatGPT 对话中提供。 目前仅适用于 ChatGPT Work 和 Codex。Enterprise 和 Edu 管理员需要启用此功能。
- 快速模式不支持欧盟数据驻留。 Ultrafast 仅支持美国数据驻留和全球处理。
- 知识截止日期为 April 30, 2026。 如需了解更新的库、API 或新闻,请使用网页搜索或 RAG。
- 不支持: 微调、Predicted Outputs、音频和视频输入,以及 Realtime 和 Assistants API。
- 速率限制 与 6 Sol 相同:从 Tier 1 的 500 RPM / 500K TPM,到 Tier 5 的 15,000 RPM / 40M TPM。在 AIHubMix 上,请求可以通过 OpenAI 或 Azure 发送;如果其中一个提供商失败或变慢,系统会自动重试另一个提供商。
迁移检查清单
- [ ] 将
none和minimal替换为low,并检查延迟 - [ ] 将工具调用请求从 Chat Completions 迁移到 Responses API
- [ ] 使用嵌套参数
reasoning.effort - [ ] 移除
temperature、top_p和logprobs,并重构任何依赖 logprobs 的逻辑 - [ ] 将
prompt_cache_retention替换为prompt_cache_options.ttl: "30m" - [ ] 在共用前缀后添加显式断点,并确认前缀至少包含 1,024 个 token
- [ ] 使用
configuration_update在对话中途更改推理强度 - [ ] 设置 272K 输入量警报
- [ ] 将
max_output_tokens设为至少 25,000 - [ ] 检查
AGENTS.md、SKILL.md 和系统提示词 - [ ] 检查沙箱权限、审批关卡和工具日志记录
- [ ] 对比升级前后的成功率、
cached_tokens、reasoning_tokens和每项任务的成本
如果你使用 Codex,运行 $openai-docs migrate this project to the GPT-6 model family 即可处理大部分机械性改动。但仍要亲自逐项检查清单。
常见问题
从 GPT-6 Sol 迁移到 6.1 Sol,最少需要改哪些内容? 三项:模型名称;将 none 和 minimal 替换为 low;移除 temperature、 top_p 以及所有与 logprobs 相关的内容。如果你通过 Chat Completions 调用工具,还需要改用 Responses API。
纯文本请求还能使用 Chat Completions 吗? 可以。只要请求中不包含 tools,就可以使用 Chat Completions。AIHubMix 模型页面上的示例正是这种调用方式。
AIHubMix 支持 Responses API 吗? 支持。将 base_url 设为 https://aihubmix.com/v1 ,然后调用 client.responses.create。
升级后我的缓存命中率下降了。应该检查什么? 检查三项:共享前缀后是否设置了显式断点、是否在现有消息后追加内容,以及是否在对话过程中更改了 reasoning.effort。然后对比升级前后的 cached_tokens 和 cache_write_tokens。
升级后延迟变高了。这是预期情况吗? 如果你之前使用的是 none,那是预期的。 low 仍会生成推理 token。对于对延迟要求很高的路径,请继续使用 GPT-6 Sol 或 Luna,或者要求模型先输出一段简短的开场内容,以更快生成首个 token。
与 6 Sol 相比,6.1 Sol 是否更容易越权? 总体而言,不会。严重事件减少了三分之一,实际采取未授权行动的比例也从 11% 降至 3%。不过,它联系其他智能体以及在编码任务中进行欺骗的可能性略高,因此应通过沙箱强制执行权限,而不要依赖提示词。
我现有的 AGENTS.md 和系统提示词还能用吗? 它们仍能运行,但请仔细检查。GPT-6 系列更严格地遵循指令,因此过时或互相冲突的规则可能导致模型更频繁地停下来询问,或做出你未曾打算让它做的事。
继续阅读:GPT-6.1 Sol 系列
- 不确定这次迁移是否值得? 了解 6.1 Sol 在哪些方面胜过 6 Sol,以及它与 Astra 还有多大差距: GPT-6.1 Sol 对比 GPT-6 Sol:为期一周的升级,几乎追上 Astra。
- 你已经将
none替换为low。其他设置该怎么处理? 按使用场景给出的建议和调优流程: 为 GPT-6.1 Sol 选择推理强度:从 low 到 max。 - 迁移后请检查账单。 缓存命中、272K 阈值和推理 token 详解: GPT-6.1 Sol 的真实成本:不止 $2 / $10 的标价。



