Spring AI 实战指南(四):Agent开发与MCP协议详解——打造真正会自主执行任务的AI助手
前言
标签:Spring AI、Agent、MCP、Tool Calling、Function Calling、AI Agent、DeepSeek、OpenAI、智能体开发
难度:⭐⭐⭐⭐⭐
阅读时间:40分钟+
如果说:
Spring AI + RAG
解决的是:
AI知道什么
那么:
Agent
解决的是:
AI能做什么
这是两种完全不同的能力。
例如:
用户问:
Redis是什么?
RAG即可解决。
但如果用户说:
帮我分析最近30天学习情况,
找出薄弱知识点,
生成学习计划,
并推荐课程。
这已经不是简单问答了。
因为涉及:
查询数据库
统计成绩
分析数据
调用推荐系统
生成学习计划
多个步骤。
传统AI:
只能聊天
Agent:
能够完成任务
一、什么是Agent?
很多人认为:
Agent = ChatGPT
这是错误的。
Agent本质:
LLM
+
Memory
+
Tools
+
Planning
+
Reasoning
即:
大模型
+
记忆
+
工具
+
规划能力
+
推理能力
架构图:
用户
│
↓
Agent
│
┌──────────┼──────────┐
│ │ │
Memory Tools LLM
│ │
Redis 数据库/API
二、普通AI与Agent区别
普通AI
流程:
用户提问
↓
模型回答
↓
结束
例如:
北京天气怎么样?
模型:
我无法获取实时天气
Agent
流程:
用户提问
↓
分析需求
↓
调用天气工具
↓
获取结果
↓
整理答案
↓
返回
用户感知:
AI真的帮我完成了任务
三、Agent核心能力
一个成熟Agent通常包含五大能力。
1、感知(Perception)
理解用户输入。
例如:
帮我生成学习计划
模型识别:
用户意图:
学习规划
2、规划(Planning)
拆解任务。
例如:
分析成绩
↓
查找薄弱项
↓
推荐课程
↓
生成计划
这一步非常关键。
3、记忆(Memory)
保存上下文。
例如:
用户:
我是计算机专业
后面:
帮我推荐学习路线
Agent知道:
用户是计算机专业
4、工具调用(Tool)
执行实际任务。
例如:
查询数据库
发送邮件
获取天气
调用支付接口
5、行动(Action)
完成最终目标。
例如:
生成报告
创建订单
预约会议
四、为什么Agent这么火?
2024年:
ChatGPT时代
2025年:
RAG时代
2026年:
Agent时代
因为企业发现:
用户真正需要的不是:
聊天机器人
而是:
自动完成工作
例如:
AI员工。
五、Spring AI中的Agent架构
Spring AI Agent设计:
用户
↓
ChatClient
↓
Advisor
↓
Tool
↓
Model
↓
Response
核心组件:
ChatClient
Advisor
ChatMemory
Tool
VectorStore
ChatModel
六、Tool Calling原理
这是Agent最核心能力。
用户:
查询张三成绩
模型判断:
需要调用工具
工具:
@Service
public class ScoreTool {
public String getScore(
String username){
return "Java:85";
}
}
Spring AI:
chatClient.prompt(question)
.tools(
new ScoreTool()
)
.call();
模型自动:
识别工具
生成参数
调用工具
获取结果
整理答案
七、EduAgentX学习助手Tool设计
实际项目:
需要多个工具。
成绩查询工具
public class ScoreTool {
public StudentScore score(
Long userId){
}
}
课程推荐工具
public class CourseTool {
public List<Course>
recommend(String weakPoint){
}
}
学习计划工具
public class PlanTool {
public String createPlan(){
}
}
最终:
Agent
↓
调用多个工具
↓
组合结果
↓
返回
八、多工具协作
用户:
根据我最近考试情况,
推荐课程,
并制定学习计划。
Agent流程:
Step1
查询成绩
↓
Step2
分析弱项
↓
Step3
推荐课程
↓
Step4
生成计划
↓
Step5
返回结果
这就是:
Multi Agent Workflow
思想。
九、什么是MCP?
目前AI领域最热门协议之一。
MCP
全称:
Model Context Protocol
由:
Anthropic
提出。
目标:
统一模型与工具通信协议
类似:
HTTP
统一浏览器与服务器。
MCP:
统一AI与工具
十、为什么需要MCP?
以前:
接一个工具。
写一套代码。
接十个工具:
十套代码
维护灾难。
MCP出现后:
AI
↓
MCP
↓
任何工具
统一标准。
十一、MCP架构
LLM
│
↓
MCP Client
│
┌──────────┼──────────┐
│ │ │
Weather MySQL Redis
Server Server Server
任何服务:
只要支持:
MCP Server
即可接入。
十二、Spring AI与MCP
Spring AI已经逐步支持:
MCP Client
能力。
未来架构:
Spring AI
↓
MCP
↓
ERP系统
OA系统
CRM系统
数据库
Redis
无需手写大量适配代码。
十三、Memory记忆机制
Agent必须拥有记忆。
否则:
每句话都是新会话
方案:
Redis。
结构:
chat:1001
内容:
[
{
"role":"user",
"content":"我叫张三"
}
]
后续:
我叫什么?
Agent:
张三
十四、长期记忆与短期记忆
短期记忆
当前会话。
例如:
最近20条消息
Redis保存。
长期记忆
用户画像。
例如:
专业
年级
学习习惯
课程偏好
MySQL保存。
十五、Agent任务规划
高级Agent:
不仅调用工具。
还会规划。
例如:
用户:
帮我提高Java成绩
Agent:
分析成绩
↓
发现集合薄弱
↓
推荐课程
↓
生成计划
↓
监督执行
这就是:
Task Planning
十六、EduAgentX智能导师Agent设计
目标:
打造:
AI学习导师
功能:
学习分析
分析考试成绩
学习规划
生成学习路线
课程推荐
推荐课程
学习监督
每天提醒
成长报告
自动生成周报
架构:
Student Agent
↓
Score Tool
↓
Course Tool
↓
Plan Tool
↓
Report Tool
十七、Agent项目架构设计
生产环境:
Vue3
↓
Gateway
↓
Spring Boot
↓
Spring AI
↓
Agent
↓
Redis
↓
PGVector
↓
MySQL
↓
DeepSeek
职责:
Redis:
记忆
缓存
会话
PGVector:
知识库
MySQL:
业务数据
Agent:
任务执行
十八、企业落地难点
很多公司做Agent失败。
原因:
工具设计混乱
工具过多。
无法管理。
Prompt不规范
导致:
调用错误
Token成本过高
Agent容易:
无限思考
缺少权限控制
可能访问敏感数据。
十九、AI岗位面试高频题
什么是Agent?
回答:
Agent是具备感知、
规划、
记忆、
工具调用、
执行能力的智能体。
Tool Calling原理?
回答:
模型判断是否需要工具,
自动生成参数,
调用工具,
获取结果后组织答案。
MCP作用?
回答:
统一AI与外部工具的通信协议,
类似HTTP之于Web。
RAG和Agent区别?
回答:
RAG解决知识问题
Agent解决执行问题
二十、未来趋势
未来企业AI架构很可能演变为:
Spring AI
+
RAG
+
Agent
+
MCP
+
Workflow
+
多智能体协作
未来开发者不再只是写:
Controller
Service
Mapper
而是需要设计:
Tool
Agent
Workflow
Knowledge Base
总结
如果说:
Spring Boot
定义了过去十年的Java开发。
那么:
Spring AI
+
RAG
+
Agent
+
MCP
很可能定义未来五年的Java AI开发。
对于你正在做的 EduAgentX智能教育平台,最值得做的升级路线是:
第一阶段:
AI问答
↓
第二阶段:
RAG知识库
↓
第三阶段:
学习规划Agent
↓
第四阶段:
多Agent协同教学系统
做到第四阶段,这个项目已经不仅仅是普通毕设,而是一个完整的企业级 AI 教育平台雏形。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐
所有评论(0)