** 定义
工具调用是 AI 模型的一种能力:当用户请求需要执行外部操作时(如查询天气、计算数据、读取文件),模型会=识别=需求、=选择=合适的工具、=提取=参数,然后=触发=工具执行,最后将工具返回的结果=整合=到响应中。
整个流程中,AI 模型只负责=决策=(判断要不要调用、调用哪个工具、参数是什么),而=执行=是由外部系统完成的。模型不运行代码,它只是"发出指令"。
** 一句话
工具调用是 AI 通过委托框架执行外部操作的能力,它让语言模型跨越文本边界,从"说"变成"指挥别人做"。
** 结构图
用户输入
|
v
+-------------------+
| AI 模型 |
| |
| 1. 识别意图 |
| 2. 选择工具 |
| 3. 提取参数 |
+---------+---------+
|
| 调用意图 + 参数
v
+-------------------+
| Spring AI |
| 框架层 |
| |
| 4. 执行工具 |
| (委托) |
+---------+---------+
|
| 执行请求
v
+-------------------+
| 工具层 |
| (@Tool 方法) |
| |
| getWeather() |
| calculate() |
| readFile() |
+---------+---------+
|
| 执行结果
v
+-------------------+
| Spring AI |
| 框架层 |
| |
| 5. 返回结果 |
+---------+---------+
|
v
+-------------------+
| AI 模型 |
| |
| 6. 整合结果 |
| 7. 生成响应 |
+---------+---------+
|
v
用户响应
关键点:
- AI 模型出现两次:第一次(上游)负责识别、选择、提取;第二次(下游)负责整合、生成
- 框架层出现两次:第一次负责执行委托;第二次负责返回结果
- 工具层只出现一次:负责具体执行
- 整个流程形成闭环,任何一环断裂都导致失败
当 AI 识别失败时,整个右侧链路不触发,AI 直接返回纯文本响应。
当工具执行失败时,框架返回错误信息,AI 需要整合错误而非数据。

1361

被折叠的 条评论
为什么被折叠?



