Tool Use(工具使用)
Agent 系统层面的完整工具使用生命周期,涵盖工具注册、发现、权限控制、调用执行、结果回传等全链路。类比:Tool Use 是「整个电话系统」,而 Function Calling 只是其中「拨电话号码」的环节——两者不是同义词。MCP 协议本质上是在标准化 Tool Use 的整个生命周期。
Tool Use(工具使用)
一句话理解
Agent 使用外部工具的完整机制——从"有哪些工具可用"到"调完之后结果怎么处理"的全链路。
与 Function Calling 的区别
| Function Calling | Tool Use | |
|---|---|---|
| 层级 | LLM API 层 | Agent 系统层 |
| 覆盖范围 | 模型输出调用意图 | 注册→发现→权限→调用→结果回传 |
| 类比 | 拨电话号码 | 整个电话系统 |
| 关注点 | 接口协议 | 工程架构 |
Function Calling 是 Tool Use 链路中的一个环节,不是同义词。
工具注册的三种范式
不同框架采用了不同的工具注册方式,代表三种设计哲学:
| 范式 | 代表 | 设计哲学 |
|---|---|---|
| 代码装饰器 | LangChain @tool | 代码优先 |
| 协议声明 | MCP JSON Schema | 协议优先 |
| 可视化配置 | Dify Plugin | 低代码优先 |
工具编排模式
工具调用不只是"调一个",生产环境中常见以下编排模式:
- 串行调用:工具 A 的输出作为工具 B 的输入
- 并行调用:多个工具同时执行,结果汇总
- 条件分支:根据前一个工具的返回结果决定调用哪个后续工具
与 MCP 的关系
MCP 协议本质上是在标准化 Tool Use 的整个生命周期——将 Function Calling 的 M×N 适配问题(M 个模型 × N 个工具)变为 M+N(每个模型实现一次 Client,每个工具实现一次 Server)。
引用本术语的文章