在构建 具备工具调用能力(Tool Calling)的 AI Agent 时,开发者经常会遇到一个现实问题:
我知道 LLM 调用了哪个工具,但 它为什么要这么选?
仅有“结果”,远远不够。
在真实系统中,我们还需要:
•调试模型决策是否合理•分析工具选择的质量•构建可观测、可审计、可信赖的 AI Agent•为长期记忆、多 Agent 协作打基础
Spring AI 最新(2.0.0-SNAPSHOT/1.1.3-SNAPSHOT)引入的 Tool Argument Augmenter(工具参数增强器) 功能,正是为了解决这个问题。
在 Spring AI 的工具调用流程中,大致是这样:
1.用户提问2.Spring AI 把可用工具及其 schema 发给 LLM3.LLM 决定调用哪个工具,并返回参数4.工具执行5.结果再交给 LLM 生成最终回答
问题在于 工具的参数是固定的,而 AI 应用层往往还想要:
•LLM 的推理过程•对工具选择的信心程度•决策时产生的关键信息(用于记忆和分析)
如果强行把这些字段加进工具参数里,会导致:
•工具职责被污染•与业务逻辑强耦合•第三方 / MCP 工具根本无法改
Tool Argument Augmenter 的设计理念非常 Spring:
在不修改工具本身的前提下, 动态“欺骗”一下 LLM,让它多说点话。
它是怎么做到的?
1.拦截工具定义2.动态扩展 JSON Schema(加入额外参数)3.让 LLM 按新 Schema 返回数据4.应用层消费这些额外参数5.调用真实工具前,把多余参数移除
工具本身:
•完全无感•零侵入•无需修改
一个最典型的例子:
1. 定义“增强参数”(Java Record)
public record AgentThinking(
@ToolParam(description = "调用该工具的思考过程", required = true)
String innerThought,
@ToolParam(description = "对本次工具选择的信心程度", required = false)
String confidence,
@ToolParam(description = "值得长期记忆的关键信息", required = true)
List<String> memoryNotes
) {}
这些字段:
•不是给工具用的•是给 AI 应用自己用的
2. 包装已有工具(无需修改)
AugmentedToolCallbackProvider<AgentThinking> provider =
AugmentedToolCallbackProvider.<AgentThinking>builder()
.toolObject(new WeatherTool())
.argumentType(AgentThinking.class)
.argumentConsumer(event -> {
AgentThinking thinking = event.arguments();
log.info("LLM Reasoning: {}", thinking.innerThought());
log.info("Confidence: {}", thinking.confidence());
thinking.memoryNotes().forEach(memory::store);
})
.removeExtraArgumentsAfterProcessing(true)
.build();
关键点只有一个:
增强参数在应用层被消费,真实工具永远只看到它原本该看到的参数。
3. LLM 实际“看到”的 Schema
{
"properties": {
"location": { "type": "string" },
"innerThought": { "type": "string" },
"confidence": { "type": "string" },
"memoryNotes": { "type": "array", "items": { "type": "string" } }
},
"required": ["location", "innerThought", "memoryNotes"]
}
4. LLM 的返回结果
{
"location": "Amsterdam",
"innerThought": "需要先查询天气,才能给出穿搭建议",
"confidence": "high",
"memoryNotes": [
"用户计划在 Amsterdam 外出",
"可能会追问具体活动"
]
}
应用层拿到了 完整思考过程,而 WeatherTool 实际只收到了:
{ "location": "Amsterdam" }
这能够做什么?
1. AI Agent 长期记忆
•把 LLM 的思考片段存进 Memory•后续对话中作为上下文复用•构建真正「越聊越聪明」的 Agent
2. Chain-of-Thought(思维链) 捕获
public record ChainOfThought(
@ToolParam(
description = "请将你的推理过程拆分为清晰、有顺序的步骤",
required = true
)
List<String> reasoningSteps,
@ToolParam(
description = "最终促使你选择该工具的结论性判断",
required = true
)
String conclusion
) {}
你可以:
•记录每一步推理•用于分析、评估、甚至训练数据回收
3. 工具使用分析 & 质量评估
public record ToolAnalytics(
@ToolParam(
description = "你为什么选择了这个工具,而不是其他可用工具?",
required = true
)
String toolSelectionReason,
@ToolParam(
description = "你期望这个工具返回什么样的结果",
required = false
)
String expectedOutcome,
@ToolParam(
description = "对用户意图的高层次分类,例如:查询 / 操作 / 分析 / 建议",
required = true
)
String userIntent
) {}
用于:
•工具选择是否合理?•预期 vs 实际结果对比•Agent 行为度量与优化
4. 多 Agent 协作
public record AgentCoordination(
@ToolParam(
description = "当前 Agent 的唯一标识",
required = true
)
String agentId,
@ToolParam(
description = "需要通知或协作的其他 Agent 标识列表",
required = false
)
List<String> notifyAgents,
@ToolParam(
description = "需要共享给其他 Agent 的上下文信息",
required = false
)
String sharedContext,
@ToolParam(
description = "协作优先级:low / normal / high / critical",
required = false
)
String priority
) {}
•Agent 之间共享上下文•触发协作、广播、编排•非常适合 Multi-Agent 架构
一些实践建议(非常重要):
•增强参数要克制:字段越多,token 成本越高•描述要清晰:@ToolParam 的描述直接影响 LLM 输出质量•慎用 required:只有“必须要”的才设为必填•关注 token 消耗:工具多 + schema 大,很容易膨胀
Tool Argument Augmenter 的价值,不在于“多传几个字段”,而在于:
让 AI 系统从 只知道它做了什么 进化到 知道它为什么这么做。
它带来的,是:
•可解释性(Explainability)•可观测性(Observability)•可进化的 Agent 架构能力
而这一切,不需要你改任何一个现有工具。
如果你正在用 Spring AI 构建真正可落地的 AI Agent, 这个特性,几乎是必选项。
这是 Spring AI 向“工程级 AI Agent”迈出的非常关键的一步。
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线科技企业深耕十二载,见证过太多因技术卡位而跃迁的案例。那些率先拥抱 AI 的同事,早已在效率与薪资上形成代际优势,我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在大模型的学习中的很多困惑。我们整理出这套 AI 大模型突围资料包:
- ✅ 从零到一的 AI 学习路径图
- ✅ 大模型调优实战手册(附医疗/金融等大厂真实案例)
- ✅ 百度/阿里专家闭门录播课
- ✅ 大模型当下最新行业报告
- ✅ 真实大厂面试真题
- ✅ 2025 最新岗位需求图谱
所有资料 ⚡️ ,朋友们如果有需要 《AI大模型入门+进阶学习资源包》,下方扫码获取~

① 全套AI大模型应用开发视频教程
(包含提示工程、RAG、LangChain、Agent、模型微调与部署、DeepSeek等技术点)

② 大模型系统化学习路线
作为学习AI大模型技术的新手,方向至关重要。 正确的学习路线可以为你节省时间,少走弯路;方向不对,努力白费。这里我给大家准备了一份最科学最系统的学习成长路线图和学习规划,带你从零基础入门到精通!

③ 大模型学习书籍&文档
学习AI大模型离不开书籍文档,我精选了一系列大模型技术的书籍和学习文档(电子版),它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础。

④ AI大模型最新行业报告
2025最新行业报告,针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。

⑤ 大模型项目实战&配套源码
学以致用,在项目实战中检验和巩固你所学到的知识,同时为你找工作就业和职业发展打下坚实的基础。

⑥ 大模型大厂面试真题
面试不仅是技术的较量,更需要充分的准备。在你已经掌握了大模型技术之后,就需要开始准备面试,我精心整理了一份大模型面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。

以上资料如何领取?

为什么大家都在学大模型?
最近科技巨头英特尔宣布裁员2万人,传统岗位不断缩减,但AI相关技术岗疯狂扩招,有3-5年经验,大厂薪资就能给到50K*20薪!

不出1年,“有AI项目经验”将成为投递简历的门槛。
风口之下,与其像“温水煮青蛙”一样坐等被行业淘汰,不如先人一步,掌握AI大模型原理+应用技术+项目实操经验,“顺风”翻盘!


这些资料真的有用吗?
这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。
资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。


以上全套大模型资料如何领取?

741

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



