用全栈入门模板加快 Amazon Bedrock AgentCore 智能体应用开发
本文说明如何把 FAST 部署到 AWS:用 CDK 拉起 AgentCore 运行时、网关、记忆与代码解释器,再部署 React 前端并创建用户。

目录
#用全栈入门模板加快 Amazon Bedrock AgentCore 智能体应用开发
生成式人工智能(AI)和智能体(agent)式应用正在重塑企业的运作方式,从客户支持机器人到研究助手,团队需要快速从原型走到生产。去年,AWS 发布了 Amazon Bedrock AgentCore,一个用于在生产中构建、部署和扩展人工智能智能体的开发平台。AgentCore 提供核心构建块,例如运行时托管、记忆、工具集成和可观测性,并带有企业级安全和动态扩缩。
全栈 AgentCore 方案模板(Fullstack AgentCore Solution Template, FAST)从一开始就向你展示这些部分如何协同工作。它是一个可立即部署的入门项目,把 AgentCore Runtime、Gateway、Memory 和 Code Interpreter 与 React 前端和 Amazon Cognito 身份验证连接起来,全部用 AWS Cloud Development Kit(AWS CDK)定义。FAST 提供一套完整的参考架构(reference architecture),展示各部分如何集成,并带有一个可学习、可在其上继续构建的可用聊天应用。
在本文中,你将学习如何把 FAST 部署到你的 Amazon Web Services(AWS)账户,理解其架构,并了解如何按你的要求扩展它。你将学习如何构建自己的智能体,同时由 FAST 处理身份验证、基础设施即代码(infrastructure as code, IaC)、部署流水线和服务集成。
方案概览
FAST 提供一套完整的全栈架构,用于在 Amazon Bedrock AgentCore 上部署智能体。该模板默认处理身份验证、前端应用托管、智能体运行时、记忆、可观测性,以及模型上下文协议(Model Context Protocol, MCP)工具集成。
架构以 Amazon Bedrock AgentCore Runtime 为中心,它托管你的智能体。在 FAST 中,用户通过 Amazon Cognito 进行身份验证,它保护四个集成点:
- 用户登录到 Amazon CloudFront 上的前端 Web 应用
- 前端访问 AgentCore Runtime 的基于令牌(token)的身份验证
- 智能体访问 AgentCore Gateway 的基于令牌的身份验证
- 发往 Amazon API Gateway 的 API 请求的基于令牌的身份验证
前端是使用 Tailwind CSS 和 shadcn 组件的 React 应用,托管在 AWS Amplify Hosting 上。它使用可流式 HTTP 与 AgentCore Runtime 通信,以实现实时响应流。
提供反馈机制,是为了演示如何通过 API Gateway 进行同步且经过身份验证的 HTTP 调用,并把应用数据存储在 Dynamo DB 中。AgentCore Runtime 连接到若干 AgentCore 能力:
- AgentCore Memory:存储对话历史(短期)和提取出的洞察,例如用户偏好(长期),因此你的智能体可以跨会话记住上下文,而无需自定义数据库工作。(FAST 默认包含短期记忆,长期记忆可以通过少量修改无缝添加。)
- AgentCore Gateway:把 API 作为与模型上下文协议(MCP)兼容的工具暴露给你的智能体
- AgentCore Code Interpreter:在隔离的沙箱环境中安全执行 Python 代码
- AgentCore Observability:把与开放遥测(Open Telemetry, OTEL)兼容的指标和日志发送到 Amazon CloudWatch,并把追踪发送到 AWS X-Ray
模板包含 Strands Agents 和 LangGraph 的模式。FAST 和 AgentCore 与智能体框架无关,因此你可以使用自己选择的智能体 SDK。基础设施在 AWS CDK 中定义,以便可重复部署。
架构在设计上是模块化的。前端与由 AgentCore 驱动的后端集成,你可以把它当作与自己的前端应用集成的示例。那可以是你自己的 React 应用,或使用完全不同前端框架的前端。
为人工智能辅助开发而设计
FAST 在设计上包含大量文档。仓库包括:
- 引导文档:编码助手自动遵循的规则和约定
- 功能指南:关于 gateway、memory、流式传输和其他集成的详细文档
- 贯穿代码库的 README:每个组件的上下文
当你要求编码助手做更改时,它可以阅读这些文档并遵循已记录的模式。这种方法适用于许多人工智能编码助手,包括 Kiro、Cline、Claude Code、Cursor 等。文档和引导文档与具体系统无关。
人工智能辅助开发是可选的。引导编码助手的同一套文档,对更喜欢自己写代码的开发者同样有用。
先决条件
部署 FAST 之前,请确认你已安装以下各项:
- Node.js 20 或更高版本
- Python 3.11 或更高版本
- Docker
- 已配置至少这些最低凭据的 AWS Command Line Interface(AWS CLI)
- AWS CDK
你使用的 AWS Identity and Access Management(IAM)用户必须有权限进行必要的 AWS 服务调用,并管理本文提到的 AWS 资源。向 IAM 用户授予权限时,遵循最小权限原则。
方案部署演练
先在本地环境中部署本方案。
步骤 1:克隆仓库
先使用以下命令克隆仓库。
git clone https://github.com/awslabs/fullstack-solution-template-for-agentcore.git
cd fullstack-solution-template-for-agentcore步骤 2:配置你的部署
编辑 infra-cdk/config.yaml 以自定义部署:
stack_name_base: your-project-name
admin_user_email: admin@example.com # Optional: auto-creates user and emails credentials
backend: pattern: strands-single-agent # Available: strands-single-agent, langgraph-single-agent
deployment_type: docker # Available: docker, zip步骤 3:用 CDK 部署后端
使用以下命令部署后端。
cd infra-cdk
npm install
cdk bootstrap # Only required once per account/region
cdk deploy这会创建 Cognito 用户池,构建智能体容器并推送到 Amazon Elastic Container Registry(Amazon ECR),创建 AgentCore Runtime,并建立 CloudFront 分配。部署大约需要 5–10 分钟。
步骤 4:部署前端
使用以下命令部署前端。
cd ..
python scripts/deploy-frontend.py该脚本根据 CDK 栈输出生成身份验证配置,安装依赖,构建 React 应用,并部署到 AWS Amplify Hosting。脚本完成时输出应用 URL:
✓ Deployment completed successfully!
Console: https://console.aws.amazon.com/amplify/apps
App URL: https://main.d123490abcdef.amplifyapp.com步骤 5:创建 Amazon Cognito 用户
如果你在配置中提供了 admin_user_email,你会收到一封带临时凭据的电子邮件,可用于登录。转到下一步。
如果你没有提供 admin_user_email,请手动创建用户:
- 打开 Amazon Cognito 控制台。
- 找到你的用户池(名为 {stack_name_base}-user-pool)。
- 前往 Users 并选择 Create user。
- 输入电子邮件地址和临时密码。
- 选择 Mark email as verified。
- 选择 Create user。
步骤 6:访问并测试应用
你可以使用以下步骤访问并测试应用:
- 在浏览器中打开 Amplify Hosting URL(部署前端后打印在终端中)。
- 使用你的 Amazon Cognito 用户凭据登录。
- 在提示时更改临时密码。
FAST 示例应用是一个直接的多轮聊天界面。用户界面在设计上保持精简;它被构建为可替换成你自己的前端,或集成到现有应用中。基线智能体包含两个工具以演示该架构:
- 文本分析工具:AgentCore Gateway 后面一个基于 AWS Lambda 的工具,统计词数并分析字母频率。这演示 Gateway 集成模式。
- Code Interpreter:与 AgentCore Code Interpreter 直接集成,以便在隔离沙箱中更安全地执行 Python。
尝试这些示例查询以验证工具是否工作:
- “Analyze the text: The quick brown fox jumps over the lazy dog”:智能体应返回词数和字母频率分析
- “Calculate the first 20 Fibonacci numbers”:观察智能体实时编写并执行 Python 代码
与用户界面一样,所提供的工具也是为了被替换。它们的存在是为了演示两种添加工具的架构(像文本分析工具那样放在 AgentCore Gateway 后面,以及像代码解释器工具那样直接加到智能体上),并给你一个可用的起点。此外,反馈收集机制的存在是为了演示如何通过 API Gateway 进行同步且经过身份验证的 HTTP 调用,并且可以无缝移除或改作他用。
按你的需要定制应用
如果你需要的是文档分析智能体而不是聊天机器人呢?或者你想与公司现有的身份提供者集成?FAST 正是处理这种情况;基线应用是起点,不是约束。
以下是 AWS Events YouTube 频道上的一场直播录像,其中使用 FAST 实时构建一个智能体式个人助理应用。
更改智能体模式
模板在 patterns/ 目录中包含两种智能体模式:
- strands-single-agent:使用 Strands 框架、带 MCP 工具集成的基本对话智能体
- langgraph-single-agent:使用 LangGraph、带 MCP 工具集成的基本对话智能体
要切换模式,更新 infra-cdk/config.yaml 中的 backend.pattern,并用 cdk deploy 重新部署。
要创建自己的模式,在 patterns/ 下添加一个新目录,放入你的智能体实现、一个 requirements.txt 文件和一个 Dockerfile。更新配置以指向你的新模式。
使用 Gateway 添加新工具
AgentCore Gateway 把工具调用路由到一个 AWS Lambda 函数。要添加新工具:
- 创建一个实现你的工具逻辑的 Lambda 函数。
- 在 CDK 栈中定义工具模式(名称、描述和输入参数)。
- 把该 Lambda 函数添加为 AgentCore Gateway 目标。
- 用 cdk deploy 重新部署。
智能体通过 MCP 自动从 Gateway 发现工具。实现细节和示例见 docs/GATEWAY.md。
使用 Code Interpreter
Code Interpreter 已集成在基线智能体中。它在隔离沙箱环境中提供更安全的 Python 执行,并带有会话持久化。用户可以要求智能体运行计算、生成数据,或执行任意 Python 代码。
修改前端
前端是 frontend/ 目录中的标准 React 应用。像 Kiro 这样的人工智能编码助手擅长修改 React 前端。描述你想要的更改,并让助手实现它们。
做出更改后,用 python scripts/deploy-frontend.py 重新部署
因为 FAST 使用 AWS Amplify Hosting,你可以选择与受支持的版本控制系统集成,以利用 Amplify Hosting 内置的持续集成与交付(CI/CD)能力,它可以替换所提供的 deploy-frontend.py 脚本。
聊天之外:其他用例
基线应用以聊天界面为中心,但 FAST 支持许多智能体式用例。例如,文档分析智能体可以在前端增加文件上传组件,增加一个从 PDF 提取文本的 Lambda 工具,以及总结发现的智能体逻辑。或者,工作流自动化智能体可以监视 Slack 频道,并自动根据支持请求创建 Jira 工单。同一架构适用,你只是在更换部件。这些定制在 FAST 的默认架构内进行。但如果你需要整个替换一个核心组件呢?
灵活性:更换主要组件
架构有意做成模块化,因此你可以随着要求演变替换主要组件。以下是一些示例:
- 身份提供者:用 Okta、Microsoft Entra ID、Auth0 或你现有的、与 OAuth 2.0 兼容的身份系统替换 Amazon Cognito
- 前端框架:把 React 前端换成 Vue、Angular,或把智能体后端集成到现有应用中
- 托管:从 AWS Amplify Hosting 迁到 Vercel、Netlify、自管的 CloudFront 分配,或你偏好的托管方案
- 智能体框架:使用 Strands Agents、LangGraph、CrewAI,或甚至使用 TypeScript 或 Java 等其他语言的智能体 SDK
这些是 FAST 提供的一些灵活点。模块化的 CDK 基础设施和解耦架构,使按你的具体需要调整模板变得直接。
清理
使用以下命令移除 FAST 创建的资源:
cd infra-cdk
cdk destroy --force这会删除 AWS 资源,包括 Amazon Simple Storage Service(Amazon S3)存储桶和 Amazon Elastic Container Registry(Amazon ECR)镜像。如果你让资源继续运行,某些正在运行的资源可能会产生费用。请注意,Amazon Bedrock AgentCore 按使用付费。
结论
FAST 帮助把构建并部署一个智能体应用的时间减到 30 分钟以内。你可以获得更安全的身份验证、一个可用的前端,以及集成的 AgentCore 能力——Memory、Gateway、Code Interpreter 和 Observability——而无需从零编写基础设施代码。基线聊天应用和示例工具是起点,不是约束。换入你自己的智能体逻辑,连接你的工具,修改前端,或替换身份提供者或托管方案等主要组件。模块化架构适应你的要求。
要开始使用,请为仓库加星并克隆,把 FAST 部署到你的 AWS 账户,并在 30 分钟内运行一个可用的智能体应用。从那里定制并交付真实的东西。
如需专家协助,AWS Generative AI Innovation Center、AWS Professional Services 以及我们的 AWS 合作伙伴可以提供帮助。
PRIMARY_SOURCE: https://aws.amazon.com/blogs/machine-learning/accelerate-agentic-application-development-with-a-full-stack-starter-template-for-amazon-bedrock-agentcore
- #AgentCore
- #FAST
- #CDK
- #Cognito
- #全栈部署


