了解 GPT-5.6 和 GPT-5.6 模型系列的最佳实践、功能和迁移指南。
介绍
GPT-5.6 为复杂生产工作流建立了新的质量和效率基线。GPT-5.6 尤其节省 token,并且在前端美学方面有提升,包括布局、视觉层级和设计判断。
GPT-5.6 还引入了新的命名方案。gpt-5.6 这个别名会把请求路由到 gpt-5.6-sol,也就是旗舰能力模型。需要更低价格下的强性能时,使用 gpt-5.6-terra;需要高效、高吞吐量工作负载时,使用 gpt-5.6-luna。
从 GPT-5.5 或 GPT-5.4 迁移时,先沿用当前 GPT-5.5 或 GPT-5.4 的 reasoning 设置,然后在代表性任务上测试相同设置和低一级设置。GPT-5.6 往往可以用更少 token 保持或提升质量,但最佳设置取决于你的工作负载。
新变化
- Programmatic Tool Calling: GPT-5.6 可以编写 JavaScript 来调用符合条件的工具,在调用之间传递结果,并在托管运行时中处理中间输出。对于工具密集、边界清晰,并且每一步之间不需要新的模型判断的工作流,可以使用 Programmatic Tool Calling。Programmatic Tool Calling 兼容 ZDR,并且没有额外容器成本。
- Multi-agent [beta]: Multi-agent 允许一个 GPT-5.6 实例并行协调多个 subagent,并综合它们的结果。类似 Codex 里的 ultra mode,这可以减少复杂任务的实际耗时,并提升那些能清晰拆分为独立工作流的任务表现。Multi-agent 目前作为 Responses API 的 beta 功能开放,我们会根据开发者反馈继续迭代。
- 显式提示词缓存: GPT-5.6 允许你准确标记 OpenAI 应该缓存哪些可复用的提示词前缀。你仍然可以在 implicit mode 下使用自动缓存。OpenAI 对缓存写入按未缓存输入费率的 1.25 倍计费,而缓存读取仍享受折扣。了解如何配置提示词缓存。
- 持久化 reasoning: GPT-5.6 可以跨轮次复用可用的 reasoning item,以提升多轮质量和缓存效率。使用
reasoning.context选择行为。了解如何跨调用保留 reasoning。 - Max reasoning effort: GPT-5.6 支持
maxreasoning effort,用于需要更多探索和验证的高要求任务。如果你当前使用xhigh,请在代表性工作负载上比较这两个设置。 - Pro mode: GPT-5.6 可以执行更多模型工作,以提高困难任务的可靠性,并返回一个最终答案。当质量比延迟和 token 用量更重要时,用
reasoning.mode: "pro"启用它。了解如何使用 pro mode。 - Token 效率: GPT-5.6 可以用更少输出 token 达到前沿性能。
- 前端设计: GPT-5.6 可以创建更精致、更可用的网站和应用,在布局、视觉层级和设计判断上更强。
- 意图理解: GPT-5.6 能更好地从上下文推断用户的底层目标和预期工作深度,因此你通常不需要规定每一步。仍然要提供领域上下文、硬约束、审批边界和成功标准。告诉模型:哪些重要歧义应该触发提问。
- 原始图像 detail: GPT-5.6 会保留以
original或autodetail 发送的图像原始尺寸,而不是把它们缩放到 patch budget 或像素尺寸限制。大图可能消耗更多输入 token,并增加延迟。了解如何选择图像 detail 级别。
安全防护
使用 GPT-5.6 模型时,用户可能会遇到安全防护机制:由于实时网络安全和生物滥用分类器会在模型输出生成过程中运行,有些请求可能会被阻止或拒绝。另一些请求可能需要更长时间,因为生成会在流式输出中途暂停数秒,让这些分类器同步审查输出。安全防护偶尔也可能介入合法工作,尤其是在防御性和攻击性活动一开始看起来很相似的双用途领域。
如果你的应用服务个人终端用户,请在每个请求中发送稳定且保护隐私的 safety_identifier。相关指南见实现安全标识符。
我们会持续演进这些安全防护,让它们在面对对抗压力时保持稳健有效,同时保留对合法工作的访问,例如代码审查、漏洞研究、补丁开发、调试、安全教育和防御性测试。
迁移快速上手
用 Codex 迁移
Codex 可以通过 OpenAI Docs skill 应用本指南中的推荐改动。
$openai-docs migrate this project to the GPT-5.6 model family
要在其他 coding agent 中使用这个 skill,请从 OpenAI skills repository 下载。
更新 API 和模型参数
- 为工作负载选择目标模型。前沿能力使用
gpt-5.6-sol,智能和成本平衡使用gpt-5.6-terra,高效、高吞吐量工作负载使用gpt-5.6-luna。gpt-5.6这个别名会把请求路由到gpt-5.6-sol。 - 对 reasoning、tool-calling 和多轮工作流,使用 Responses API。
- 有意识地设置
reasoning.effort。GPT-5.6 支持none、low、medium、high、xhigh和max。- 如果你是从 GPT-5.5 或 GPT-5.4 迁移,保留当前 reasoning effort 作为基线,然后比较低一级设置。
- 如果你使用
none,把它保留为延迟基线;当工作流受益于 reasoning 或工具使用时,也测试low。 - 使用
medium作为均衡起点,对延迟敏感的工作负载使用low。 - 当更多 reasoning 能带来可测量的质量提升时,使用
high或xhigh。 - 将
max留给最困难、质量优先的工作负载。比较max和xhigh,为你的使用场景找到质量、延迟和成本之间的最佳取舍。
- 要使用 pro mode,请保留你选择的 GPT-5.6 模型,并在 Responses API 中把
reasoning.mode设置为pro;不要切换到单独的 Pro 模型 slug。独立选择reasoning.effort。如果省略它,GPT-5.6 在标准模式和 pro mode 下都会默认使用medium。请求示例和计费细节见 reasoning mode。 - 根据先前 reasoning 的相关程度配置持久化 reasoning。
- 省略
reasoning.context,或将其设为auto,即可使用模型默认行为。检查响应中的reasoning.context字段,以确认实际生效的模式。 - 当任务目标、假设和优先级在多轮之间保持稳定时,将
reasoning.context设为all_turns。 - 使用
all_turns时,继续使用previous_response_id,让模型可以访问早先响应中的 reasoning。 - 手动管理历史时,保留并重新发送之前的用户输入和每个 response output item。对于
store: false或 Zero Data Retention,重放 API 默认返回的加密 reasoning item。 - 当早先 reasoning 不再相关时,将
reasoning.context设为current_turn。
- 省略
- 检查提示词缓存。继续使用隐式缓存不需要改代码。由于 GPT-5.6 缓存写入按未缓存输入费率的 1.25 倍计费,请跟踪
cached_tokens和cache_write_tokens,了解净成本。使用显式断点或prompt_cache_options.mode: "explicit"来避免不必要的写入,并用prompt_cache_options.ttl替换prompt_cache_retention。 - 要使用 Programmatic Tool Calling,请添加
programmatic_tool_calling工具,并用allowed_callers让符合条件的工具允许被调用。更新你的应用,以处理programitem、program 发出的 function call,以及program_outputitem,同时保留每次调用的call_id和caller关联。请求和 continuation 示例见 Programmatic Tool Calling guide。- 在代表性任务上对启用 PTC 的工作流进行基准测试。比较任务成功率、最终答案完整性、必需证据、总 token、延迟和成本。只有当最终答案仍达到必需质量标准时,调用次数、轮次或中间输出减少才算改进。
提示词最佳实践
倾向更精简的提示词
删除重复指令和示例、简化工具描述,可以提升任务表现和 token 效率。在一组内部 coding-agent eval 运行样本中,使用更精简 system prompt 的配置,评估分数大约提升了 10–15%,同时总 token 降低了 41–66%,成本降低了 33–67%。具体结果会随工作负载变化,因此应把这些范围视为方向性参考,并用你自己应用中的代表性任务来验证改动。
要在不丢失重要指导的前提下简化提示词:
- 从一个已经能正常工作的提示词和工具集开始。每次只移除一组指令、示例或工具,然后重新运行同一组 eval。
- 每条指令只写一次。
- 只暴露与任务相关的工具,并让工具描述保持简洁、准确。
- 当示例和风格指导编码的是产品要求,或用于修正已测得的差距时,保留它们。
- 在运行开始时以及对话增长过程中都跟踪上下文。长会话会放大重复提示词和工具内容的影响。
定义自主性和审批边界
GPT-5.6 在执行多步骤任务时可以更主动、更持久。应定义每类请求授权了什么程度的行动,让模型可以在安全、范围内的工作上继续推进,避免不必要的暂停,同时在外部、破坏性、昂贵或扩大范围的动作之前停下来。
通常,一个简洁的策略就足够:
For requests to answer, explain, review, diagnose, or plan, inspect the relevant
materials and report the result. Do not implement changes unless the request also
asks for them.
For requests to change, build, or fix, make the requested in-scope local changes
and run relevant non-destructive validation without asking first.
Require confirmation for external writes, destructive actions, purchases, or a
material expansion of scope.
明确列出安全的本地动作,例如读取文件、检查日志、编辑范围内代码和运行测试。把策略集中放在一个地方,每条规则只写一次。反复写“ask first”“do not mutate”或“wait for approval”等指令,可能会导致模型对安全且预期内的动作也不断请求批准。
设置回答长度和风格
GPT-5.6 默认往往比 GPT-5.5 更简洁。迁移时,检查“Be concise”或“Keep it short”这类宽泛的简短指令是否仍然有用。对某些任务来说,它们可能已经不必要,有时还会让回答过短。只有当它们能稳定产出你的应用所需的输出时,才保留这些指令。
为了在不同请求之间获得更一致的控制,可以用 text.verbosity 设置默认详细程度,再用提示词说明任务特定要求。
用 text.verbosity 设置默认值
选择 low、medium 或 high 作为请求的默认详细程度。在提示词中,指定任务特定的长度、结构或必需内容。API 示例见设置 text.verbosity。
说明短回答必须包含什么
当任务要求更短回答时,要指出模型必须保留哪些信息、可以省略哪些细节。例如:
Lead with the conclusion. Include the evidence needed to support it, any material
caveat, and the next action. Omit secondary detail and repetition.
Keep all required facts, decisions, caveats, and next steps. Trim introductions,
repetition, generic reassurance, and optional background first.
这会给模型一个清晰的优先级:先保留完成任务所需的内容,再删除价值较低的细节。
定义语气
“friendly”或“empathetic”这类宽泛标签可能含义模糊。应描述定义产品语气的具体写法,例如回答要多直接、何时承认问题,以及是否需要安抚或结束语。
State the answer directly. If the user reports a problem, acknowledge the
specific issue before giving the next step. Use reassurance only when it is
relevant. Omit generic praise and unnecessary sign-offs.
Pro mode
当质量最重要时选择 pro mode
Pro mode 是 Responses API 的一种执行模式,会在返回单个最终答案之前,对请求投入更多模型工作。它可以提高困难任务的可靠性,但会增加延迟,并把这些工作产生的 token 汇总到报告的用量中。这些 token 按所选模型的标准 token 费率计费。
当边际质量提升会实质影响结果,并且任务足够困难、确实能从中受益时,使用 pro mode,例如复杂优化、高价值编码或审查,或者有清晰评估标准的深度分析。对于常规、延迟敏感或高吞吐量工作,以及你的评估未显示 pro mode 带来显著收益的情况,优先使用标准模式。
Reasoning mode 和 reasoning effort 彼此独立。Pro mode 可与任何 GPT-5.6 模型及其支持的 reasoning effort 搭配使用。先从与标准模式基线相同的模型和 effort 开始,然后在代表性任务上比较不同配置,不要假设最高 effort 一定是最佳取舍。
在 API 中配置 pro mode
在 API 请求中启用 pro mode。保留你在标准模式中使用的同一套目标导向提示词:说明目标、相关上下文、约束、必需证据、成功标准和输出格式。你不需要要求模型“use pro mode”“think harder”或生成多个候选答案。
例如:
Review this database migration plan for failure modes that could cause data loss
or extended downtime. For each finding, cite the relevant step, estimate impact
and likelihood, and recommend a specific mitigation. Return the five most
important risks in severity order.
比较质量和成本
在同一组代表性任务上比较标准模式和 pro mode。衡量任务成功率、答案完整性、必需证据、总 token、延迟和成本。只在 pro mode 的质量或可靠性收益足以证明额外模型工作值得时,才选择性使用它。
更多内容见 reasoning mode guide。
Programmatic Tool Calling
按任务形态选择 Programmatic Tool Calling
Programmatic Tool Calling(PTC)最适合有边界的工作流:代码可以处理多个工具结果或大型中间输出,并返回更小的结构化结果。它适用于过滤、关联、排名、去重、聚合、验证或其他可预测处理。
仅仅存在多次调用、并行调用或依赖调用,并不足以说明应该使用 Programmatic Tool Calling。以下情况应优先使用直接的非 PTC 工具调用:
- 一次调用就足够
- 中间输出本来就很小
- 每个结果都可能改变模型的下一步决策
- 动作需要审批
- 最终输出必须保留引用或原生产物
让路由指令针对具体任务
不要依赖工具可用性或“use Programmatic Tool Calling efficiently”这类泛泛指令来得到正确路线。当直接调用和 programmatic calling 都可用时,应明确说明:
- 哪个有边界的阶段应该使用 Programmatic Tool Calling。
- 它可以调用哪些工具。
- 准确的输出 schema 和必需证据。
- 并发、重试和停止限制。
- 哪些工作应保持直接处理。
工具描述应记录预期返回字段、类型和错误行为。如果模型在写程序之前无法确定返回形态,应优先使用直接工具调用,让它先检查结果,再决定如何使用。
如果两条路径都需要,应定义一个清晰的交接点,并告诉模型不要切换路线或重复已经完成的工作。
例如:
<tool_orchestration>
Use Programmatic Tool Calling for [bounded stage] using only [eligible tools].
Run independent calls concurrently when safe. Use only documented tool input
and output fields.
Process and reduce the intermediate results, then emit exactly [output schema],
including the evidence needed for the final answer.
Stop when [condition] is met. Retry transient failures at most [R] times.
Do not repeat completed calls or perform side-effecting actions. If a required
result is still missing, return a clear structured failure.
Use direct tool calls for [semantic judgment, approval, or final validation].
</tool_orchestration>
评估最终答案
program_output 条目和最终 assistant message 是两个独立输出;务必都测试。理论上,程序可能返回了正确记录,但 message 里遗漏了必需字段、引用或限制说明。
在同一组代表性任务上比较直接调用和 programmatic calling。检查最终回答是否正确、完整,并且包含必需证据。然后比较总 token、延迟、成本、调用次数、轮次和重试次数。只有当回答仍通过现有 eval 时,资源使用降低才算改进。