函数 / 工具调用
Function / Tool Calling
又称: 函数调用 · 工具调用 · Tool use
模型按预先声明的结构化格式请求执行某个外部函数、拿到结果后继续生成的能力,是几乎所有智能体能力的底座。
一次调用的流程
- 应用在请求里附上工具清单(每个工具的名称、用途、参数 JSON Schema)。
- 模型不直接执行代码,而是输出一段结构化数据:“我要调用
get_weather,参数{city: "Paris"}”。 - 应用侧代码真正执行这个函数,把返回值作为一条新消息回填。
- 模型基于结果继续——可能再调下一个工具,或给出最终回答。
为什么关键
它把模型从“只会生成文本”变成“能触发确定性操作并读到真实结果”。智能体循环、MCP、检索增强,本质上都建立在这一机制之上。约束参数用 schema,是为了让调用可校验、可靠、可复现。
常见误解
- 模型本身不执行函数,只是产出“调用意图”,执行由你的运行时负责。
- 工具调用是否成功很依赖工具描述写得好不好——描述模糊,模型就选错或传错参数。
相关术语
参考来源
整理于 2026-08-29 · 本术语表基于公开论文、官方规范和行业通用定义整理,随领域发展会更新。发现问题欢迎反馈。