Spring AI AgentCore SDK进入可用阶段:Runtime、Memory、Browser和Code Interpreter全解析
文章摘要
Spring生态近期重点介绍了Spring AI AgentCore SDK。它通过Spring Boot自动配置、注解和Advisor,把Amazon Bedrock AgentCore的Runtime、Memory、Browser、Code Interpreter和Artifact Store能力接入Spring AI。需要特别注意:Spring AI 2.0.0与AgentCore SDK自身的BOM版本并不是同一个版本号。本文梳理其模块结构、适用场景、接入方式和生产部署注意事项。
一、先澄清版本概念
开发者容易混淆两个版本:
Spring AI版本
AgentCore SDK版本
当前Spring AI稳定主线是:
Spring AI 2.0.0
Spring AI AgentCore社区项目的Quick Start中,BOM示例使用:
1.0.0
因此,不要因为Spring社区周报提到AgentCore可用,就直接假设依赖一定是:
spring-ai-agentcore-bom:2.0.0
实际接入前应以项目README和Maven仓库中的版本为准。
二、AgentCore SDK解决什么问题
普通Spring AI Agent运行在自己的Spring Boot服务中。
进入生产环境后,还需要:
- 标准Agent运行入口;
- 健康检查;
- SSE流式输出;
- 会话记忆;
- 浏览器自动化;
- 代码执行沙箱;
- 文件存储;
- OpenTelemetry;
- 限流;
- 云端身份与权限。
Spring AI AgentCore SDK的定位是:
让Spring AI应用使用熟悉的Spring编程模式接入Amazon Bedrock AgentCore能力。
架构:
Spring Boot应用
→ Spring AI ChatClient
→ AgentCore SDK
→ Amazon Bedrock AgentCore服务
三、核心模块总览
当前项目包含:
Runtime Starter
Memory
Browser
Code Interpreter
Artifact Store
OpenTelemetry Extension
Common
BOM
Runtime Starter
自动配置:
/invocations
/ping
SSE Streaming
Health Check
Rate Limiting
它让Spring Boot应用符合AgentCore Runtime的运行契约。
Memory
支持:
- 短期对话历史;
- 长期语义记忆;
- 用户偏好;
- 摘要;
- Episodic Memory。
Browser
提供:
- 网页导航;
- 内容提取;
- 截图;
- 表单交互;
- Playwright自动化。
Code Interpreter
支持安全执行:
- Python;
- JavaScript;
- TypeScript;
- 文件生成与读取。
Artifact Store
用于:
- Agent生成文件;
- 会话级文件;
- TTL管理;
- 结果下载;
- 中间产物存储。
四、最小依赖结构
使用BOM:
org.springaicommunity
spring-ai-agentcore-bom
1.0.0
pom
import
按需引入:
org.springaicommunity
spring-ai-agentcore-runtime-starter
org.springaicommunity
spring-ai-agentcore-memory
org.springaicommunity
spring-ai-agentcore-browser
org.springaicommunity
spring-ai-agentcore-code-interpreter
不要默认全部引入。如果Agent不需要浏览器和代码执行,就只使用Runtime和Memory,减少攻击面与依赖。
五、Runtime Starter的价值
传统Agent服务需要自己实现:
POST /invocations
GET /ping
流式事件格式
错误响应
健康状态
调用限流
Runtime Starter把这些基础契约自动化,让Spring Bean更容易成为AgentCore Runtime中的可调用Agent。
六、Memory如何与Spring AI配合
普通Spring AI Chat Memory关注对话消息。
AgentCore Memory进一步覆盖:
短期会话
长期事实
用户偏好
历史摘要
事件记忆
需要区分:
短期记忆
适合当前会话:
用户刚才说了什么
当前任务目标
最近工具结果
长期记忆
适合跨会话:
用户偏好
项目背景
历史决策
长期关注主题
错误做法是把所有历史消息无限放进Prompt。
推荐:
近期消息
+压缩摘要
+检索到的长期记忆
还要设置租户隔离、用户隔离、记忆写入规则、删除机制、敏感信息过滤与过期时间。
七、Browser模块适合什么场景
适合:
- 登录后网页操作;
- 表单填写;
- 页面截图;
- 信息采集;
- 网页流程测试;
- 无API系统集成。
优先级建议:
正式API
→ MCP工具
→ 数据库只读接口
→ 浏览器自动化
浏览器自动化更脆弱:页面结构变化、登录失效、验证码、网络波动和元素定位失败都可能导致任务中断。
高风险操作必须人工审批。
八、Code Interpreter如何控制风险
代码执行能力可以用于:
- 数据分析;
- CSV处理;
- 图表;
- 文件转换;
- 临时计算;
- 报告生成。
必须限制:
CPU
内存
执行时间
磁盘
网络
文件路径
依赖安装
系统调用
推荐:
独立沙箱
只读输入
限定输出目录
默认关闭外网
执行超时
完整审计
九、Artifact Store解决什么问题
Agent经常生成Excel、PDF、图片、Markdown、ZIP和分析报告。
Artifact Store应记录:
artifact_id
session_id
tenant_id
filename
content_type
size
created_at
expires_at
checksum
access_policy
生成文件后返回受控引用,而不是暴露服务器本地路径。
十、适合哪些企业项目
企业研究Agent
浏览网页
→ 提取资料
→ 代码分析数据
→ 生成报告文件
售前方案Agent
读取客户资料
→ 查询知识库
→ 生成方案
→ 生成PPT或文档
运维分析Agent
读取监控
→ 执行诊断脚本
→ 汇总故障原因
数据分析Agent
读取数据文件
→ Python计算
→ 生成图表
→ 保存结果
十一、哪些项目不需要AgentCore
以下情况直接部署普通Spring Boot可能更简单:
- 只有单次问答;
- 不需要长期记忆;
- 不需要Browser;
- 不需要代码沙箱;
- 已有成熟Agent运行平台;
- 不使用AWS;
- 成本与复杂度不值得。
不要为了使用新技术而增加云平台依赖。
十二、生产接入重点
AWS身份
使用IAM Role、临时凭证、最小权限、SigV4和CloudTrail审计。
避免长期Access Key写进配置。
多租户
Memory、Artifact和工具调用必须带:
tenant_id
user_id
session_id
可观测性
记录Agent请求、Advisor链、工具调用、Browser动作、代码执行、Memory读写、文件生成、Token和费用。
故障降级
AgentCore不可用时可以:
- 切换普通Spring Boot Runtime;
- 禁用Browser和Code Interpreter;
- 降级为只读问答;
- 转人工流程。
十三、与MCP是什么关系
AgentCore与MCP不是互斥技术。
可以形成:
Spring AI Agent
→ AgentCore Runtime
→ MCP Client
→ 企业MCP Server
AgentCore负责运行时、记忆和沙箱,MCP负责工具与资源协议。
十四、我的判断
Spring AI AgentCore SDK的价值在于:
将AWS AgentCore能力包装为Java和Spring开发者熟悉的自动配置、Bean、Advisor和Starter。
它特别适合Spring Boot团队、已使用AWS、需要浏览器和代码执行、需要托管Memory,以及希望统一Agent运行契约的项目。
但它不是Spring AI本身的替代,也不是所有Agent项目的默认选择。
总结
接入前应先判断:
是否真的需要AgentCore能力
→ 选择最少模块
→ 明确版本
→ 设计IAM权限
→ 隔离Memory和Artifact
→ 限制Browser与代码执行
→ 建立完整Trace
尤其要避免混淆Spring AI版本和AgentCore SDK自身版本。
延伸阅读
想持续跟踪大模型、AI Agent、RAG、MCP 与开发者生态的最新变化,欢迎访问 智元界:
https://www.zyentor.com/
智元界将持续分享 AI 热点解读、技术实战、工具推荐与企业落地案例。