📢 转载信息
原文作者:Amazon Web Services
本文介绍了如何利用 Strands AI Agents 增强 Amazon Bedrock 上的 Amazon Generative AI Intelligent Document Processing (IDP) Accelerator 的文档分析能力。
GenAI IDP Accelerator 是一套专为企业设计的高级文档处理解决方案,旨在利用生成式 AI (GenAI) 简化文档工作流程。通过与 Strands AI Agents 的集成,我们可以实现更精细、更复杂的文档理解和数据提取任务,从而将文档处理的自动化水平提升到一个新的高度。
背景:GenAI IDP Accelerator 的挑战与机遇
企业在处理大量非结构化和半结构化文档时面临诸多挑战,如数据提取准确性低、处理速度慢以及需要大量人工干预。GenAI IDP Accelerator 旨在通过集成 Amazon 托管的 LLM(如 Amazon Titan)来解决这些问题。然而,对于高度复杂的文档类型和需要特定业务逻辑的场景,仅仅依靠基础的 LLM 接口可能不足以满足所有需求。
Strands AI Agents 提供了构建和部署复杂 AI 代理的框架,这些代理可以自主规划、执行多步骤任务并与外部工具交互。将这些智能代理集成到 IDP 工作流程中,可以为文档处理带来以下优势:
- 高级推理能力: 代理可以根据文档内容执行更复杂的推理和决策。
- 多步骤工作流: 自动化涉及多个文档或多个处理步骤的流程。
- 外部工具集成: 代理可以调用外部 API 或数据库来验证或丰富提取的数据。
集成 Strands AI Agents 的架构
集成 Strands AI Agents 的解决方案基于 Amazon Bedrock 提供的能力。整体架构如下:
在这个架构中,GenAI IDP Accelerator 负责初始的文档摄取、预处理和基础的 LLM 调用。而 Strands AI Agents 则作为增强层,接收 LLM 的输出或中间结果,并执行更深层次的分析或决策制定。
关键组件:
- Amazon S3: 存储原始文档和处理结果。
- Amazon Textract: 执行 OCR 和表单/表格检测(作为 IDP 的基础组件)。
- Amazon Bedrock: 提供访问基础 LLM(如 Claude 3、Titan 等)的接口。
- Strands Agent Runtime: 运行 Strands 代理逻辑,负责任务规划和工具调用。
案例研究:增强发票处理
我们以处理复杂的商业发票为例,展示集成后的能力提升。
传统 IDP 流程 (无 Strands Agent)
- 使用 Textract 提取所有文本、键值对和表格数据。
- 使用 Bedrock 上的 LLM 总结发票的关键信息(如总金额、日期)。
- (人工或简单脚本)将数据输入到 ERP 系统。
这种流程在处理数据验证、复杂的多行项目解析或跨文档一致性检查时效果有限。
集成 Strands Agent 后的增强流程
Strands Agent 被赋予了“验证器”和“数据整合器”的角色:
- 基础提取: 步骤 1 和 2 与传统流程相同。
- Agent 规划: Strands Agent 接收提取的数据,并根据预设的业务规则(定义在 Agent 的工具集中)开始执行任务。
- 数据验证工具调用: Agent 调用一个模拟的 ERP 校验 API 工具,验证发票上的总金额是否与产品行项目的总和一致。如果发现不一致,Agent 会自动标记该发票,并启动一个“人工审核请求”工作流,而不是直接进入系统。
- 复杂解析: 对于难以准确解析的表格(例如,多层嵌套的折扣和税率),Agent 可以使用多个 LLM 调用迭代地细化解析结果,直到满足置信度阈值。
通过这种方式,Strands Agent 充当了一个智能协调器,它不仅能从文档中提取信息,还能对信息进行批判性分析和验证。
如何开始?
要在 GenAI IDP Accelerator 中使用 Strands AI Agents,您需要在您的 AWS 环境中部署 Strands 平台,并配置必要的 IAM 角色以确保 Agent 可以安全地与 Amazon Bedrock 和其他 AWS 服务(如 Textract)交互。
关键的配置步骤包括:
- 定义工具集 (Tools): 明确 Agent 可以使用的外部函数(如数据库查询、API 调用)。
- 创建 Agent 蓝图 (Blueprint): 使用 Strands Studio 定义 Agent 的目标、记忆和初始任务序列。
- 集成到 IDP Pipeline: 将 Strands Agent Runtime 的调用点嵌入到您的 Amazon Step Functions 或其他工作流编排服务中,通常放在基础 LLM 调用之后。
示例代码片段(概念性,展示 Agent 调用的结构):
# 假设我们有一个发票数据字典 extracted_data
from strands_sdk import AgentClient
agent = AgentClient(name="InvoiceVerifierAgent")
# 代理接收 LLM 摘要后的数据,并决定下一步行动
validation_result = agent.run(
task="Validate financial totals against line items and external ERP system data",
context=extracted_data
)
if validation_result.status == 'FAILED':
print("发票验证失败,需要人工介入。")
总结
Strands AI Agents 与 Amazon GenAI IDP Accelerator 的结合,代表了企业级文档智能处理的一个重要飞跃。它将文档数据提取从一个简单的“查找与替换”过程,升级为一个能够进行复杂推理、自动化验证和跨系统数据整合的智能工作流。企业可以利用这种强大的组合,更快、更准确地释放其文档数据中的价值。
🚀 想要体验更好更全面的AI调用?
欢迎使用青云聚合API,约为官网价格的十分之一,支持300+全球最新模型,以及全球各种生图生视频模型,无需翻墙高速稳定,文档丰富,小白也可以简单操作。
评论区