如果你已经了解过 Bedrock 的大模型 API 调用和 SageMaker 的模型训练,可能会问一个更实际的问题——如何把它们组合起来,解决真实的业务问题?
单点的大模型 API 能对话,但要完成一个完整的业务流程——比如智能客服需要查订单、取消订单,或者文档处理需要 AI 提取 + 人工审核——就需要把多个服务串联起来。
今天这篇文章,就为你完整梳理 AWS AI 应用开发的架构模式与实践路径,从最基础的 API 调用到完整的 Agent 业务流程,覆盖不同复杂度的场景。
一、理解 AI 应用开发的架构逻辑
在开始写代码之前,先想清楚一件事:为什么单纯的 LLM API 调用不够用?
直接调用大模型 API 存在几个核心局限 :
无状态:大模型不会自动记住你上一句说了什么,每次调用都需要重新发送完整对话历史
无法访问业务数据:模型不知道你的订单系统里有什么,不知道用户的购买记录
缺乏结构化流程:纯大模型对话无法保证业务规则(比如“必须确认才能取消订单”)
这就是为什么需要 Agent(智能代理) 架构——它让大模型在理解自然语言的同时,能够调用工具、维持状态、遵循业务流程 。
二、五种集成模式:从简单到复杂
基于 AWS Bedrock 的 AI 应用开发,可以分为五个层次 :
模式一句话定位复杂度适用场景Converse API最基础的对话 API 调用⭐ 最低简单问答、内容生成、原型验证Inline Agents在 Lambda 中自己控制 Agent 循环⭐⭐ 中低自定义工具调用、快速迭代Bedrock AgentsCDK 基础设施即代码的 Agent⭐⭐⭐ 中高企业级 CI/CD、多 Action GroupLambda + LangGraph容器化 Lambda 中的工作流编排⭐⭐⭐ 高复杂多步流程、灵活控制AgentCore + LangGraph生产级 Agent 运行时 + 全量指标⭐⭐⭐⭐ 最高生产环境部署、完整可观测性
新手建议:从 Converse API 开始(5 分钟上手),熟悉后再逐步进阶到工具调用和 Agent 架构。
三、核心能力组件
无论选择哪种模式,一个完整的 AI 应用都离不开以下四个核心能力 :
1. 智能层(Intelligence):用 Bedrock 调用大模型
Bedrock 是 AI 应用的“大脑”,负责理解用户意图、提取关键信息、决定下一步行动 。通过统一的 Converse API,可以调用 Claude、Nova、Llama 等多种模型。
python
import boto3
import json
bedrock = boto3.client('bedrock-runtime', region_name='us-east-1')
response = bedrock.converse(
modelId='anthropic.claude-3-sonnet-20240229',
messages=[{
'role': 'user',
'content': [{'text': '我想查一下订单状态'}]
}]
)
print(response['output']['message']['content'][0]['text'])2. 记忆层(Memory):用 DynamoDB 维持对话状态
大模型是无状态的,需要借助外部存储来维持对话上下文。DynamoDB 是常见的方案——存储会话 ID、完整对话历史、提取出的关键信息(如订单号)。
3. 工具层(Tools):让 AI 能调用外部系统
工具调用(Tool Use / Function Calling)是 Agent 架构的核心。它让大模型不是“凭空回答”,而是通过结构化的方式调用你定义的工具 。
工具可以连接:
数据库查询(查订单、查用户信息)
业务 API(取消订单、修改任务)
外部服务(查天气、网页抓取)
python
# 工具定义示例
tools = [{
'toolSpec': {
'name': 'get_order_status',
'description': '根据订单号查询订单状态',
'inputSchema': {
'json': {
'type': 'object',
'properties': {
'order_id': {'type': 'string', 'description': '订单号'}
},
'required': ['order_id']
}
}
}
}]4. 编排层(Orchestration):用 LangGraph 管理多步流程
当业务逻辑涉及多个步骤时(比如:意图识别 → 查订单 → 确认操作 → 执行),就需要编排框架。LangGraph 是目前最流行的方案之一——它用有向图(Directed Graph)的方式定义对话流程,每个节点负责一个阶段,条件边控制路由 。
四、两种典型业务场景实战
场景一:智能客服 Agent(Bedrock + LangGraph + DynamoDB)
这是一个完整的无服务器智能客服系统架构,以订单查询和取消为例 :
工作流程:
用户通过 WebSocket 发送消息 → API Gateway → Lambda
Lambda 调用 Bedrock 识别意图,提取订单号
通过工具调用查询 RDS 数据库中的订单信息
LangGraph 管理三步流程:意图识别 → 订单确认 → 执行操作
DynamoDB 存储会话状态,支持多轮对话
MLflow on SageMaker 提供完整追踪(每个节点的输入/输出、延迟、token 用量)
python
# LangGraph 状态图示例(简化)
from langgraph.graph import StateGraph
graph = StateGraph(ConversationState)
graph.add_node('entry_intent', handle_entry) # 意图识别
graph.add_node('order_confirm', confirm_order) # 订单确认
graph.add_node('resolution', execute_action) # 执行操作
graph.add_conditional_edges('entry_intent', route_by_intent)
graph.add_conditional_edges('order_confirm', route_by_confirmation)场景二:文档处理流水线(Bedrock Data Automation + SageMaker 人工审核)
对于合同、发票等多页文档,单纯靠 AI 还不够——某些关键字段需要人工复核。AWS 提供了一个完整的集成方案 :
工作流程:
文档上传到 S3,触发 Step Functions 工作流
Lambda 调用 Bedrock Data Automation 提取文档中的关键字段,同时输出置信度评分
对于置信度低于阈值(如 70%)的字段,工作流将任务路由到 SageMaker Ground Truth 进行人工审核
审核人员通过私有工作团队 UI 查看并修正 AI 提取的内容
修正后的数据回写到 S3,形成最终输出
这个模式实现了“AI 处理 90% 的常规内容,人只复核不确定的部分”的效率平衡 。
五、SageMaker 在 AI 应用中的角色
在这类智能业务流程中,SageMaker 通常扮演两个角色 :
自定义模型训练与部署:如果 Bedrock 的现成模型不够用,可以在 SageMaker 中训练专属模型,然后部署为端点供应用调用
人工审核与标注:通过 SageMaker Ground Truth 构建人工审核工作流,用于处理 AI 不确定的边缘情况
六、快速上手路径
初级:用 Bedrock 示例库学习(1-2 小时)
AWS 官方提供了 Bedrock for Beginners 示例库,按顺序跑通以下示例,就能理解从 API 调用到完整 Agent 的全部核心概念 :
Converse API:你的第一次模型调用
多轮对话:手动维护对话历史
工具调用:让模型使用 get_weather 函数
知识库(RAG):创建知识库,让模型基于 FAQ 回答
Guardrails 安全护栏:拦截不当提问
Capstone Agent:综合以上所有能力构建一个完整的大学 FAQ 聊天机器人
中级:用 AgentCore CLI 快速搭建生产级 Agent(30 分钟)
2025 年发布的 Amazon Bedrock AgentCore 大大简化了 Agent 的部署 :
bash
# 安装 AgentCore CLI
npm install -g @aws/agentcore
# 创建新项目(交互式向导:选择框架、语言)
agentcore create
cd my-agent
# 本地开发调试
agentcore dev
# 一键部署到 AWS
agentcore deployAgentCore 支持 LangGraph、Strands Agents、CrewAI 等主流框架,且与模型无关(可选用 Claude、Nova 等)。
别忘了“打扫房间”
实验完成后,按顺序清理资源 :
删除 Bedrock 知识库(如果创建了)
删除 S3 Vectors 存储桶(先清空再删除)
删除 Lambda 函数和 Step Functions 工作流
停止或删除 SageMaker 端点
AWS AI 应用开发早已超越了“调用一个 API”的阶段。从基础的 Converse API,到带工具调用的 Inline Agent,再到用 LangGraph 编排的复杂业务流程,AWS 提供了从简单到复杂的完整进阶路径。而 AgentCore 的推出,进一步降低了生产级 Agent 的部署门槛,让开发者可以聚焦于业务逻辑本身,而非基础设施