Code Mode 是一种工具使用模式:模型编写代码,而不是分别请求每个操作。模型获得一个代码执行工具。其代码成为紧凑计划,调用工具、处理结果并返回响应所需的信息。
Code Mode 将已配置的工具暴露为带类型的方法。模型使用这些方法,以熟悉的编程结构表达多步骤工作。根据集成方式,工具定义可以预先提供,或在需要时发现。
直接工具使用时,模型选择一个工具、接收结果,再决定下一步。每个操作都可能需要与模型再往返一轮。
Code Mode 将中间逻辑移入可执行代码。单个计划可以:
- 组合多个依赖的工具调用。
- 对结果集合循环。
- 过滤并转换返回数据。
- 根据 earlier 结果分支。
- 塑造最终返回值。
这种方式将控制流与数据处理放在一起。当模型在给出答案前必须协调多个操作时尤其有用。
大型工具目录若 upfront 加载每个定义,可能消耗大量模型上下文。基于 connector 的 Code Mode 运行时通过 codemode.search() 与 codemode.describe() 支持渐进发现。
Search 查找相关 connector、方法与已保存 snippet。Describe 返回所选目标的详细类型信息。这些结果进入运行中的代码,模型可按需拉取定义,而不是每次请求接收整个目录。
直接工具调用时,每个结果返回模型后它才选择下一操作。中间数据占用上下文,即使模型最终答案只需其中一小部分。
Code Mode 将这项工作保留在单次沙箱执行内。生成的代码可在工具间传递结果、过滤中间数据,并仅返回模型需要的最终值。这使多工具任务更高效,也更易泛化或重复。
简单任务与小型固定工具集用直接工具调用。需要组合、依赖调用、渐进发现、可复用逻辑或控制流时用 Code Mode:
| 模式 | 最适用场景 |
|---|---|
| 直接 tool 调用 | 使用小型已知 tool 集的简单任务 |
| Code Mode | 组合或依赖调用、大型工具目录、循环、分支、过滤、结果塑造或可复用逻辑 |
Code Mode 为 Agent 运行时、AI 框架、浏览器与 Model Context Protocol (MCP) 系统提供接入面。