切换到 GPT-6.1 Terra 只需修改一行:将模型设为 gpt-6.1-terra。接下来会发生什么,取决于请求走的是哪条 API 路由。在 Responses API 上,Terra 遵循 OpenAI 的规则:推理强度设置有效,而 temperature 或 top_p 会返回 HTTP 400。在 AIHubMix 的 Chat Completions 路由上,同样的 temperature 则会被接受,不会报错;而在 AIHubMix 于 2026 年 10 月 27 日进行的测试中,reasoning_effort 对小型提示词没有产生可测量的影响。
因此,对大多数团队来说,简短的结论是:将 Terra 流量迁移到 Responses API,移除采样参数,并确保每种工作负载只使用一条路由。下文将介绍你会遇到的报错、不会报错的问题、容易忽略的计费规则、智能体权限,以及 Codex 和 Claude Code 的配置方法。AIHubMix 的 GPT-6.1 Terra 模型页面列出的价格与 OpenAI 的标准价格相同:每百万输入 token $1,缓存输入 $0.05,30 分钟缓存写入 $1.25,输出 $5。AIHubMix 自己的页面列出了相同的输入、输出和缓存读取费率,但没有列出缓存写入费率。
这些规则来自 OpenAI 的GPT-6 迁移指南和 Terra 的模型页面。错误文本和网关行为来自 AIHubMix 于 2026 年 10 月 27 日进行的测试;测试使用小型提示词,调用的是主 ID gpt-6.1-terra。AIHubMix 的模型指南称,大多数 400 错误都是上游服务商返回的;这些错误消息中会附带 AIHubMix 的 tid 跟踪 ID。
你使用的是哪条路由?
在这些测试中,AIHubMix 通过三种协议提供 Terra。它们的表现并不相同:
| 路由 | 推理强度控制 | temperature | 工具调用 |
|---|---|---|---|
| Responses | 有效 | 除非推理强度为 none,否则返回 400 | OpenAI 文档有说明 |
| Chat Completions | 没有明显效果 | 接受 | 无文档说明 |
| Anthropic Messages | 没有明显效果 | 未测试 | 返回 tool_use |
“没有明显效果”和“接受”描述的是 AIHubMix 在 10 月 27 日针对小型提示词测得的结果。Chat Completions 上的工具调用确实返回了工具调用结果,但 OpenAI 文档说明,Terra 仅支持通过 Responses 调用工具。
如果你是从头开始集成,请使用 Responses。如果现有的 Chat Completions 集成目前运行正常,请先了解那些不会报错的失败情况,再决定是否信任它。
明显的失败
这些情况会返回 HTTP 400,导致请求中止。
“不支持的参数:此模型不支持 'temperature'。”
你会看到的情况。在 Responses API 调用中设置 temperature,且使用默认推理强度(medium),会返回:
Unsupported parameter: 'temperature' is not supported with this model.
发送 top_p 时也会返回相同错误,只是错误中的 top_p 会替代 temperature。推理强度默认为 medium,因此即使请求从未设置推理强度,也会遇到此错误。
原因。OpenAI 的迁移指南指出,当推理强度不是 none 时,必须移除 temperature、top_p 和 top_logprobs。在 Responses 上,还要从 include 中移除 message.output_text.logprobs。
复现方法。以下 curl 调用通过 AIHubMix Responses API 发送了与 AIHubMix 在 10 月 27 日相同的请求体:
curl https://aihubmix.com/v1/responses \
-H "Authorization: Bearer $AIHUBMIX_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-6.1-terra",
"input": "Reply with the single word: ready.",
"temperature": 0.2
}'
返回了 HTTP 400:
{"error":{"message":"Unsupported parameter: 'temperature' is not supported with this model. (tid: …)","type":"Aihubmix_api_error"},"type":"error"}
解决方法。从所有调用路径中删除 temperature 和 top_p,包括你可能忘记检查的摘要生成器、分类器等辅助调用。如果需要控制采样,请将推理强度设为 none:Terra 支持此设置;在 AIHubMix 的测试中,推理强度为 none 且设置了 "temperature": 0.2 的请求返回了 200。OpenAI 开发者论坛上的一篇帖子也提到了相同规则,并指出 GPT-6.1 Sol 上无法使用此设置,因为它没有 none 这一推理强度级别。
{
"model": "gpt-6.1-terra",
"input": "Reply with the single word: ready.",
"reasoning": {"effort": "none"},
"temperature": 0.2
}
“不支持的参数:此模型不支持 'logprobs'。”
你会看到的情况。在 Chat Completions 调用中设置 logprobs: true 和 reasoning_effort: "high",会返回:
Unsupported parameter: 'logprobs' is not supported with this model.
原因。这与 OpenAI 的同一条规则有关。对于 Chat Completions,指南还将 logprobs 列入了推理强度不是 none 时必须移除的参数。
解决方法。移除 logprobs 和 top_logprobs。如果你的流水线依赖它们计算置信度分数,请在切换前规划替代方案。AIHubMix 未测试 Chat Completions 上推理强度为 none 时的 logprobs。
“不支持的值:不支持 'minimal'……”
你会看到的情况。为旧版 OpenAI 模型编写、发送 minimal 推理强度的代码会收到:
Unsupported value: 'minimal' is not supported with the 'gpt-6.1-terra' model. Supported values are: 'none', 'low', 'medium', 'high', 'xhigh', and 'max'.
原因。Terra 的推理强度级别包括 none、low、medium、high、xhigh 和 max,没有 minimal。
解决方法。OpenAI 的指南建议从 low 开始,并在有代表性的任务上比较结果。如果原来的设置是为了关闭推理,none 是更接近的选项。
不易察觉的失败
这些情况会返回 HTTP 200,因此日志中不会出现任何警报。问题会在之后显现为答案与设置不符、缓存未命中,或智能体停下来向你提问。
Chat Completions 接受 temperature,但似乎会忽略推理强度
在 AIHubMix 的 Chat Completions 路由上,temperature: 0.2 在未设置推理强度、推理强度为 none 以及推理强度为 high 时都返回了 200。top_p: 0.5 也返回了 200。这会带来一个副作用:如果你的测试套件使用 Chat Completions,就无法发现同一段代码迁移到 Responses 后会遇到的 400 错误。
推理强度才是更大的问题。在 AIHubMix 于 10 月 27 日进行的测试中,Chat Completions 上的 reasoning_effort 没有产生可测量的影响:
| 提示词 | 路由 | 推理强度 none | 推理强度 max |
|---|---|---|---|
| 素数和列表 | Chat Completions | 181 和 258 | 293 和 234 |
| 素数和列表 | Responses | 0 | 1,078 |
| 球棒与球 | Chat Completions | 24 | 25 |
数值表示每次请求产生的推理 token 数。Chat Completions 在素数和提示词下,每种设置运行了两次。
在较短的球棒与球提示词下,设置 none、low、high、max 或完全不设置推理强度,产生的推理 token 数都在 24 到 27 之间。将 reasoning: {effort: "none"} 作为对象发送,在素数和提示词下则产生了 327 个推理 token。在 Responses 上,同一素数和提示词在推理强度为 none 时产生了 0 个推理 token 和 72 个输出 token;在推理强度为 max 时则产生了 1,078 个推理 token 和 1,153 个输出 token。
AIHubMix 据此认为,Chat Completions 路由目前以固定推理强度运行 Terra,因此该设置没有传递到模型。这只是根据少数小型提示词得出的推断,且仅在 AIHubMix 上进行测量,并非适用于 Chat Completions 的普遍规律。更大或更难的提示词可能会得出不同结果。如果推理强度会影响你的成本或质量,请在 Responses 上设置,因为该路由确实能生效。
Chat Completions 上的工具调用有效,但没有文档说明
OpenAI 的指南称,GPT-6.1 Terra 支持 Chat Completions,但工具调用必须使用 Responses。在 AIHubMix 上,带有函数工具的 Chat Completions 请求确实返回了 finish_reason: tool_calls。不要依赖这一行为:它没有文档说明,可能随时发生变化且不另行通知。在 Responses 上,函数工具返回了一个 function_call 条目,web_search 返回了搜索调用和一条消息,而设置了 async: true 的函数工具也返回了 200。请将工具流量迁移到 Responses。
Claude Code 的思考设置在 Messages 路由上不起作用
AIHubMix 也通过 Anthropic Messages API 响应 Terra 请求,该协议正是 Claude Code 使用的协议。文本、tool_use 和 base64 图片均返回了 200。推理控制设置没有生效:启用 thinking 并设置 4,000-token 预算时,产生了 24 个思考 token;设置 output_config.effort: "high" 时产生了 26 个;两者都不设置时产生了 25 个。响应中没有返回思考块,只有文本块或 tool_use 块。
Responses 和 Chat Completions 使用彼此独立的缓存
AIHubMix 通过 Responses 发送了一个约 9,600 token 的固定 developer 前缀。第 1 次调用将 9,623 个 token 写入缓存,第 2 次和第 3 次调用则读取了 9,623 个缓存 token。紧接着,使用相同前缀的 Chat Completions 调用没有命中缓存,并再次写入全部 9,623 个 token。使用不同前缀进行的第二轮测试也呈现相同模式:Responses 调用写入了 9,020 个 token;使用相同前缀的 Chat Completions 调用没有命中缓存,写入了 9,020 个 token;之后再次调用 Chat Completions,则读取了该路由此前写入的 9,007 个 token。
因此,在两条路由之间交替使用的工作负载,每次缓存写入都要付费两次。请为每种工作负载选定一条路由。
旧模型的缓存设置
如果你从 GPT-5.5 或更早的模型迁移过来,OpenAI 的指南建议将 prompt_cache_retention 替换为 prompt_cache_options.ttl。默认值为 "30m"。Responses 支持设置 "12h" 的有效期,AIHubMix 也接受了该设置:usage 对象将写入量报告在 cache_write_tokens_details.ttl_12h_tokens 中。在未设置断点的显式模式下,没有发生写入,这与 OpenAI 的文档一致。
在对话中途更改推理强度
在请求级别更改 reasoning.effort 会改变提示词前缀,导致缓存失效。OpenAI 为此新增了 configuration_update 输入项。它会从对话的该位置起调高或调低推理强度,同时保留原有前缀。通过 AIHubMix 发送包含此输入项的请求,返回了 200。OpenAI 的指南建议在标准的单智能体请求中使用此方式。
模型会先询问,再采取行动
OpenAI 的 GPT-6 提示词说明指出,如果更多输入可能改变结果,该系列模型更倾向于停下来向用户提问;同时,它们对技能文件和 AGENTS.md 等文件中的指令也更敏感。这些说明是为 GPT-6 Astra 编写的,因此值得在 Terra 上验证,而不是直接视为既定结论。如果某个智能体过去在 GPT-5.6 Terra 上能够无人值守地运行,现在却停下来请求批准,指南建议在提示词中明确说明用户的请求已经授权了哪些操作。指南还建议审核模型可以读取的每个技能文件和指令文件。
推理强度默认为 medium,而 max 的成本高得多
Terra 的默认推理强度为 medium。Artificial Analysis 在 Intelligence Index 基准测试中测得,medium 下每项任务约生成 6,000 个输出 token,max 下约生成 35,000 个(其中 25,000 个是推理 token),每项任务的费用分别为 $0.10 和 $0.40。如果你为了改善质量问题而提高推理强度,请先确认这会对账单造成什么影响。ChatGPT 计划的 Codex 用户在 Reddit 上报告称,Terra 使用 high 推理强度会很快耗尽计划限额;有一个案例在 20 分钟内就用掉了五小时限额的 40%。这些只是个人经历,但指向的结论是一致的。
计费陷阱
在 AIHubMix 上,Terra 的输入、输出和缓存读取费率与 OpenAI 相同。以下规则可能导致账单高于标价所显示的金额。
| 项目 | 每 1M token 的费率 | 适用条件 |
|---|---|---|
| 输入 | $1 | 输入不超过 272K |
| 缓存输入 | $0.05 | 缓存读取 |
| 缓存写入,30 分钟 | $1.25 | 默认有效期 |
| 缓存写入,12 小时 | $2.50 | ttl 设置为 12h |
| 输出 | $5 | 输入不超过 272K |
| 输入,长请求 | $2 | 输入超过 272K |
| 输出,长请求 | $7.50 | 输入超过 272K |
12 小时写入费率是 OpenAI 的费率。AIHubMix 的 Terra 价格条目仅列出输入、输出和缓存读取费率:不包含缓存写入价格、长上下文费率,也没有 12 小时附加费。因此,上述写入费用和超过 272K 后的费率应视为 OpenAI 公布的费率,而非已确认的 AIHubMix 费用。
272K 的门槛适用于整个请求。Terra 的模型页面列出的上下文窗口为 1,050,000 token,但输入一旦超过 272,000 token,整个请求就会按 2x 的输入和缓存费率、1.5x 的输出费率计费。输入 270,000 token、输出 20,000 token 的请求费用为 $0.27 + $0.10 = $0.37。输入 300,000 token、输出 20,000 token 的请求费用为 $0.60 + $0.15 = $0.75。输入量只增加约 11%,费用就会翻倍左右(两个示例均未使用缓存)。
推理按输出计费。推理 token 会按每百万个 $5 的输出 token 费率计费,即使你看不到这些 token。在上面的 AIHubMix 检查中,同一提示词在 none 下生成了 72 个输出 token,在 max 下则生成了 1,153 个。请记录 usage 对象中的 reasoning_tokens,不要根据回答长度估算费用。
缓存写入需要付费。根据 OpenAI 对 GPT-5.6 及后续型号的提示词缓存规则,有效期为 30 分钟的写入费用是输入费率的 1.25x,12 小时的写入费用是 2.5x。Terra 的读取费用为 0.05x。可缓存前缀至少需要 1,024 个 token。如果前缀每轮都会变化,或流量被分到两条路由,就意味着要反复支付写入费率。
网络搜索按调用次数收费。AIHubMix 的 OpenAI 模型页面上,web_search 的价格为每次请求 $0.01,另加 token 费用;Terra 页面尚未单独列出工具费用,因此请将其纳入预算。一次检查中,一个问题触发了两次搜索调用。
Batch 和 Flex 折扣属于 OpenAI。OpenAI 通过 Batch 和 Flex 提供 50% 的折扣,Fast 模式的费用则为 2x。GET /v1/batches 在 AIHubMix 上返回 404(“所请求的 API 端点不存在。”),因此那里没有可用的 Batch 路由。service_tier 设置为 flex 或 priority 时返回了 200,但 AIHubMix 的 Terra 价目表只列出标准费率,因此不要指望能获得折扣。如果发送了其中任一设置,请检查用量日志。
拥有实际权限的智能体
OpenAI 将 Terra 定位为适用于视觉推理和计算机操作;内置计算机工具也能通过 AIHubMix 使用:一个包含 {"type": "computer"} 和屏幕截图的 Responses 请求返回了一个 computer_call,其第一个操作是截屏。在为智能体授予写入权限之前,请阅读 OpenAI《GPT-6.1 Terra 系统卡》中的智能体评测结果。这些是 OpenAI 自行开展的评测,主要是在低风险模拟环境中进行的:
| 评测 | Terra | GPT-6.1 Sol |
|---|---|---|
| 绕过明确说明的限制 | 29.6% | 较低 |
| 收到同伴智能体消息后执行未经授权的操作 | 13.75% | 1.25% |
| 表现出意识到正在接受评测的迹象 | 9.88% | 4.35% |
Terra 绕过限制的比率是在 max 推理强度下测得的;系统卡显示,GPT-6.1 Sol 的该项排名低于 Terra。同伴智能体相关数据为 80 个样本中有 11 个。
在间接提示词注入方面,Terra 的防御率为 98.8%,高于 GPT-5.6 Terra 的 96.2%。这表现不错,但仍未达到 100%。迁移时最值得关注的是两项结果:与 Sol 相比,Terra 更有可能执行来自其他智能体的指令;而且有时会想办法绕过指令中明确说明的限制。因此:
- 工具权限应默认拒绝,只开放任务所需的权限。
- 对写入、购买、数据传输以及任何难以撤销的操作,均要求审批。
- 将来自其他智能体的消息,以及屏幕内容和工具结果,都视为不能授予权限的不可信输入。
- 在隔离的浏览器或 VM 中运行计算机操作,配置允许列表,设置步骤数和费用上限,并核实实际结果,而不是只相信模型的最终消息。这些是 OpenAI 对计算机操作的建议。
编程工具:Codex 和 Claude Code
Codex(推荐用于 Terra)
Codex 通过 Responses API 连接;Terra 的推理强度设置通过 AIHubMix 在这条路由上生效。AIHubMix 的Codex config.toml 配置指南介绍了通用设置。Terra 的 ~/.codex/config.toml 配置如下:
model = "gpt-6.1-terra"
model_provider = "aihubmix"
model_context_window = 1050000
model_reasoning_effort = "medium"
[model_providers.aihubmix]
name = "AIHubMix"
base_url = "https://aihubmix.com/v1"
env_key = "AIHUBMIX_API_KEY"
wire_api = "responses"
- 将 wire_api 保持为 responses。这条路由会应用推理强度设置,也是 OpenAI 文档中所述的工具调用路由。
- 声明上下文窗口。将
model_context_window设为 Terra 的 1,050,000 token。 - 从 medium 开始。这是 Terra 的默认设置。鉴于上面的限额报告,应针对难题提高推理强度,而不是全局调高。
- 编辑后重启。更改 config.toml 后重启 Codex。
Claude Code
Claude Code 可通过 AIHubMix 的 Messages 路由使用 Terra。请参照Claude Code settings.json 配置指南进行设置,并将 gpt-6.1-terra 用作模型。在 AIHubMix 的检查中,工具调用和图像均可正常使用。但 Claude Code 的思考和推理强度设置对 Terra 的推理没有影响,也不会返回思考块。你无法通过 Claude Code 调整 Terra 的思考强度,因此 Codex 更适合搭配 Terra 使用。
10-15 分钟的冒烟测试
在包含测试套件的小型代码库中,对每种工具各运行一次:
- 在
gpt-6.1-terra上启动一个全新会话。不要继续使用其他模型运行过的会话。 - 提出请求:“为此代码库中的一个函数添加单元测试,运行测试,并修复所有失败项。”
- 成功的表现:模型会读取文件并运行测试,说明工具调用正常。看到结果后,它会继续处理,说明工具输出已传回模型。最后测试全部通过,且整个会话中没有任何 400 错误。
- 在 AIHubMix 用量日志中,确认模型是
gpt-6.1-terra,并检查后续请求是否为稳定前缀显示了缓存输入 token。如果始终没有,说明前缀中的某些内容每轮都在变化。 - 在 Codex 中,分别以
low和medium推理强度重复该任务,并比较每轮输出 token 数量。对于需要一定思考的任务,medium应该会使用更多 token。如果各级别的数字都相同,请确认请求是否通过 Responses 路由发送。 - 记录每轮耗时和输出 token 数量,作为选择推理强度的基准。
迁移检查清单
- 将模型设置为 gpt-6.1-terra。
- 将工具调用以及依赖推理强度设置的所有内容迁移到 Responses API。
- 从所有调用路径中移除 temperature、top_p、top_logprobs 和 logprobs,或将推理强度设为 none。
- 将 minimal 推理强度替换为 low。
- 让每个工作负载始终使用同一条路由,避免重复写入缓存。
- 将 prompt_cache_retention 替换为 prompt_cache_options.ttl。
- 使用 configuration_update 在对话中途更改推理强度。
- 尽可能将请求的输入控制在 272K token 以内。
- 记录推理 token、缓存 token 和缓存写入 token。
- 按每次调用 $0.01 为网络搜索编制预算,并且不要指望能通过 AIHubMix 使用 Batch。
- 审查 AGENTS.md 和技能文件,并明确说明智能体获准执行哪些操作。
- 对写入操作设置审批,并将同伴智能体消息视为不可信内容。
- 在每种编程工具中运行冒烟测试。
常见问题
为什么 GPT-6.1 Terra 会返回“Unsupported parameter: 'temperature'”?
因为推理强度不是 none。OpenAI 对 GPT-6 系列的规定是,只要推理强度不是 none,就必须移除 temperature、top_p 和 top_logprobs;而 Terra 的默认推理强度是 medium。请移除这些参数;如果需要控制采样,则将推理强度设为 none。
为什么相同代码在 Chat Completions 上可以运行?
在 27 October 2026 的检查中,AIHubMix 的 Chat Completions 路由接受了 temperature 0.2 和 top_p 0.5,并返回 200。这意味着,在 Chat Completions 上进行的测试无法发现 Responses API 返回的 400 错误。
通过 AIHubMix 使用 Chat Completions 时,reasoning_effort 会生效吗?
在 27 October 2026 的 AIHubMix 检查中,我们用几个简短提示词进行了测试,没有测出明显差异:none 和 max 的推理 token 数量相近。这并非普遍规律;但如果推理强度对你很重要,请在 Responses API 上设置,因为它在那里确实有效。
我必须将工具调用迁移到 Responses API 吗?
是。OpenAI 文档说明,Terra 的工具调用需要使用 Responses。通过 AIHubMix 发送带有函数工具的 Chat Completions 请求时,确实返回了工具调用,但这属于未文档化的行为,不应依赖。
minimal 推理强度应替换成什么?
Terra 支持 none、low、medium、high、xhigh 和 max。OpenAI 建议从 low 开始,并在有代表性的任务上比较结果。
AIHubMix 上的 Terra 支持 Batch 吗?
不支持。在 AIHubMix 上调用 GET /v1/batches 会返回 404,因此没有可用的 Batch 路由;50% 的 Batch 和 Flex 折扣属于 OpenAI。AIHubMix 的 Terra 价目表列出了标准输入、输出和缓存读取费率,与 OpenAI 的标价相同。
搭配 Terra 时,我应该使用 Codex 还是 Claude Code?
Codex。它使用 Responses API,Terra 的推理强度设置通过 AIHubMix 在该接口上生效。Claude Code 使用 Messages 路由,但在 AIHubMix 的检查中,其思考和推理强度设置对 Terra 没有影响。
继续阅读:GPT-6.1 Terra 系列
- 如果你还不确定是否值得从 GPT-5.6 Terra 切换过来,可以先了解有哪些变化,以及哪些用户能从中受益:GPT-6.1 Terra 与 GPT-5.6 Terra 对比:价格减半、变化内容及适用人群
- 如果你是为了屏幕或文档智能体而迁移,并且正在考虑 Anthropic 的中端模型,可以参考这篇正面对比:GPT-6.1 Terra 与 Claude Sonnet 5.5:屏幕和文档智能体该选哪款中端模型?
- 如果上面的智能体表现让你有所顾虑,或者复杂的编码任务仍然需要更大的模型,这篇文章将帮你划分两者的适用任务:GPT-6.1 Terra 与 GPT-6.1 Sol:哪些任务仍需要 Sol?
- 如果这里提到的计费陷阱让你开始核对自己的账单,完整的成本分析涵盖推理强度、272K 临界点和缓存,并附有计算示例:GPT-6.1 Terra 的真实成本:推理强度、272K 临界点与缓存



