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 热点解读、技术实战、工具推荐与企业落地案例。