Codex 为使用 Google Cloud Vertex AI 的开发者默认启用了将工具列表更新追加到对话历史的方式。这一调整无需重写现有历史即可传递工具列表变化,无需额外配置即可生效,也可按需关闭。
1. 工具列表的发送方式发生变化
OpenAI 于 2026 年 11 月 11 日发布的 Codex 0.167.2 新增了向 Vertex AI 增量发送工具更新的功能。工具声明是模型可用工具的列表及其说明。列表发生变化时,不再改写现有记录,而是在后面追加更新后的列表。
根据引入该功能的变更请求,增量方式通过 additional_tools 输入发送工具声明,而不是使用最外层的 tools 数组。这意味着请求格式有所调整,工具列表改为通过独立的附加输入传递。
测试涵盖了按名称组织工具的结构、工具搜索和命令执行工具。对于工具列表变化后不重写先前对话历史、而是追加更新后列表的场景,测试也加入了 Google Cloud 路径。
2. Vertex AI 与 Bedrock 的配置相互独立
确定默认值的后续变更,将常规 Responses 请求中面向 Vertex AI 的功能加入正式可用的稳定阶段。Amazon Bedrock 的对应功能也转为稳定阶段,但默认仍处于禁用状态。Vertex AI 改为使用增量更新,并不意味着 Bedrock 的对应配置也会同时开启。
原文中将两个提供商的功能分开的代码变更如下。新增行前带有加号。
/// Publish incremental tool declarations on regular Amazon Bedrock Responses.
IncrementalToolsLegacy,
+ /// Publish incremental tool declarations on regular GCP Responses.
+ IncrementalToolsLegacyGcp,配置也相互独立。用于检查多个功能联动的集成测试涵盖了将 Vertex AI 的 incremental_tools_legacy_gcp 与 Bedrock 的 incremental_tools_legacy 设置为相反开关状态的情况。
3. 减少历史重写,管理附加输入
这种方式的优势在于,工具列表变化时无需重写现有对话历史。工具更新与现有记录分开传递,因此对于中途可用工具发生变化的任务,可以将其视为减轻历史重写负担的调整。
不过,直接检查请求的开发者需要留意工具声明位置的变化。在同时使用多个提供商的环境中,也需要分别管理默认值和配置。传输方式的变化带来益处,但确认请求格式及各提供商配置仍是运维方面的任务。
发布说明和两项变更请求均未提供性能或成本测量数据,因此无法仅凭这些资料量化速度提升或成本节省的幅度。
4. 可通过配置关闭新的默认行为
发布说明也为不希望使用新行为的用户提供了配置方法。可以在 config.toml 的 [features] 部分关闭此功能。
只需设置 incremental_tools_legacy_gcp = false。在 Vertex AI 中,用户既可以不添加配置而使用新的默认值,也可以根据需要明确禁用该功能。
Codex 0.167.2 将 Vertex AI 的工具列表更新改为追加到历史记录的方式,并允许按提供商选择这一行为。
