AWS 官方博客详细介绍了如何使用 Bedrock AgentCore 构建 M&A 尽调的多智能体参考架构,包含编排、检索和治理组件,并提供可直接部署的示例。
并购与收购(M&A)团队面临一个持续的挑战:在保持速度和分析严谨性的同时,对多个收购目标进行彻底的尽职调查。团队通常需要花费数周时间手动审查目标,然后才能确定可行的机会。Amazon Bedrock AgentCore 是一个用于大规模构建、连接和优化智能体的平台,支持任何框架或模型。它可以通过编排 AI 智能体来加速这一过程,使智能体在定义的护栏内自主处理数据收集、分析和合规检查。
在这篇文章中,我们展示如何在 Amazon Bedrock AgentCore 上构建一个多智能体尽职调查系统。我们将介绍一种将智能体编排、知识检索和治理控制相结合的参考架构,然后逐步讲解如何使用完整的示例仓库部署和运行该解决方案。
M&A 尽职调查的挑战
例如,在交通运输和物流领域,分析师从金融数据库、市场研究应用、监管文件以及内部知识库中提取数据,然后手动核对这些信息。这个过程缓慢且耗费资源。
当团队重复工作时,问题会加剧。行业研究、估值模型和竞争分析会在每个新交易中重新创建,而不是从先前交易的机构知识中构建。与此同时,治理问题会减缓 AI 的采用,因为法律和合规团队需要确信 AI 生成的洞察是准确、可追溯的,并有来源引用支持。
这四个压力(周期缓慢、数据分散、重复工作以及治理要求)为 AI 智能体从根本上改变尽职调查运作方式创造了机会。
AI 智能体如何改变尽职调查
AI 智能体通过自主数据收集、智能路由、持久记忆和内置可审计性的组合来应对这些挑战。
在数据收集方面,智能体自主查询多个来源(金融数据库、知识库、市场数据 API),并将结果综合成初步评估。在我们的测试中,以前需要数周分析师时间的工作在数小时内就完成了,因为智能体可以在无需人工干预的情况下处理重复的搜索和摘要循环。
在优先级排序方面,智能体根据战略标准评估机会,并将高优先级交易路由给合适的专家。系统不是按顺序审查每个目标,而是首先呈现最有希望的候选者,并标记需要深入分析的特定维度(财务业绩、战略契合度、合规风险)。
智能体还会随着时间建立机构知识。每次完成的分析都会丰富共享记忆层,以便未来的交易受益于先前的研究、估值假设和整合经验。团队不再从头开始重新创建上下文。
治理从一开始就被内置到智能体工作流中,而不是作为事后补充。系统配置为使智能体发出的每个断言都基于引用,由引用检查评估器进行验证。每次智能体调用都会产生审计跟踪,护栏在运行时强制执行组织策略。合规团队可以追溯每个被引用声明到其源文档。
架构决策:集成套件还是定制构建
我们提供两种实现路径,每种都适合不同的组织需求。
方案 1:Amazon Quick(集成解决方案)
Amazon Quick 提供专为商业智能和研究工作流定制的即用型 AI 能力。如果您的需求与标准分析模式一致,它是通往生产环境的快速路径。Amazon Quick Research 生成专业的、可导出的深度报告。Amazon Quick Flows 使用预构建的工作流自动化重复性任务。Amazon Quick Index 在连接的数据源上提供统一搜索。
如果您希望快速部署,且工作流与标准商业智能模式一致,并喜欢托管服务而非定制开发,请选择 Amazon Quick。有关更多信息和参考架构,请参阅《Announcing Amazon Quick》。
您还可以使用自定义 Amazon Bedrock AgentCore 智能体扩展 Quick,以满足专有估值模型或战略契合框架等特殊需求。关于这种模式的实际示例,请参阅《Building Intelligent Contract Management with Quick and AgentCore》。该文章演示了 Amazon Quick 如何处理文档管理和用户界面,而 Amazon Bedrock AgentCore 如何为专业智能体协作提供动力。
方案 2:使用 Amazon Bedrock AgentCore 的定制架构
Amazon Bedrock AgentCore 使您能够对智能体行为、记忆和协调进行细粒度控制。这种方法适用于拥有专有方法论、复杂多智能体协调需求、与专业内部系统集成需求,或需要完全控制智能体行为和模型选择的 M&A 团队。
本文的其余部分将使用运输和物流尽职调查场景作为背景,详细探讨这种定制架构。我们部署了一个工作的多智能体系统,针对合成目标调用它,并通过自动化引用检查评估器验证输出。
参考架构
对于选择定制路径的 M&A 团队,以下参考架构展示了各部分如何从头到尾组合在一起。
Figure 1: Multi-agent M&A due diligence architecture with Amazon Bedrock AgentCore
该架构使用 Amazon Bedrock AgentCore 来编排多智能体尽职调查工作流。主管智能体协调四个专业智能体,每个智能体负责尽职调查过程的一个不同阶段。用户通过 Jupyter notebook 或终端界面进行交互,而 AgentCore 运行时管理智能体的执行和协作。该系统结合了检索增强生成(RAG)、结构化财务分析、外部工具集成、记忆和基于策略的治理,以支持生产就绪的尽职调查工作流。
智能体编排层
Amazon Bedrock AgentCore 运行时通过 Strands Agents SDK 协调多个专业智能体。主管智能体使用"智能体即工具"模式根据任务要求将请求路由到领域专家。
目标筛选智能体通过将自然语言查询转换为 SQL 并针对 Amazon Aurora PostgreSQL 执行来识别收购候选者。当分析师询问"收入在 1 亿至 5 亿美元之间且 EBITDA 利润率高于 12% 的中型市场物流公司"时,智能体会将其转换为参数化查询。然后它检索匹配的行,并从知识库中添加叙述性上下文来丰富结果。
财务分析智能体使用结构化和非结构化数据源执行估值分析。它应用标准估值方法,包括折现现金流(DCF)分析和可比公司分析,通过 AgentCore Gateway 支持的工具获取市场倍数。智能体生成带有支持假设内联文档化的初步估值,并标记与历史业绩不符的管理层预测。
战略契合度智能体评估整合风险、协同效应和组织一致性。它从 AgentCore 记忆中存储的先前交易中检索上下文(使用专用的 prior_deals 命名空间)。然后它将当前目标的概况与已完成的收购进行比较,并识别带有源备忘录引用的整合风险。
合规验证智能体根据 M&A 治理清单审计响应。它调用自定义引用检查评估器(实现为 AWS Lambda 函数),检查响应中的每个事实声明,并标记缺少支持源引用的断言。
关键架构组件
该架构结合结构化和非结构化企业数据,将智能体响应基于已验证的来源。
Amazon Aurora PostgreSQL Serverless v2 存储结构化的财务和运营数据集。目标筛选智能体从自然语言生成 SQL,并通过 RDS Data API 执行查询,使分析师无需自己编写 SQL 即可快速访问目标公司指标。
Amazon Bedrock Knowledge Bases 是 Amazon Bedrock 中完全托管的 RAG 能力,它为尽职调查文档建立索引,包括机密信息备忘录(CIM)、财务报表、新闻资料包和内部治理清单。智能体检索相关段落并内联引用它们。
AgentCore Gateway 是 Amazon Bedrock AgentCore 的一项功能,使智能体能够通过与 Model Context Protocol(MCP)兼容的集成安全地与外部工具和服务交互。在该架构中,智能体通过 Gateway 调用基于 AWS Lambda 的市场数据服务,由 Cedar 策略对工具使用和智能体交互执行确定性访问控制。
AgentCore memory 在整个交互过程中维护上下文状态和可复用的机构知识。Session memory 保留对话连续性,而 long-term prior_deals 命名空间则存储已完成收购案例的经验教训,为后续分析提供参考。
AgentCore Evaluations 是 Amazon Bedrock AgentCore 的一项功能,使用基于 Lambda 的评估器自动验证输出质量、引用准确性和领域特定标准。引用检查评估器返回结构化的通过/失败结果,并附带被支持主张和不被支持主张的计数。
Amazon Bedrock Guardrails 在整个工作流中强制执行安全与响应控制,在 supervisor 级别应用,使专家输出通过组织策略检查。
每次调用都会生成一个 Amazon CloudWatch 日志流和一条 AWS X-Ray 追踪,记录从 supervisor 到 specialist 再到工具调用的完整层次结构,提供端到端可观测性。
M&A 尽职调查涉及公司处理的最敏感数据:未发布的财务数据、交易条款和整合计划。因此安全是架构的一等公民。智能体可以调用的每个 IAM 权限都限定在特定的 Amazon Resource Name(ARN)上,而不是通配符。AgentCore Gateway 市场数据工具更进一步,使用 Cedar 策略引擎执行默认拒绝的基于属性的授权。该工具仅在请求的行业代码匹配已批准的垂直领域时才会运行。其他一切在运行前即被拒绝。数据库层位于私有、互联网隔离的子网中,通过虚拟私有云(VPC)端点连接。数据存储使用 KMS 进行静态加密,Amazon Bedrock Guardrails 对每条 supervisor 响应进行有害内容和个性化财务建议筛查。这种 IAM、Cedar、网络隔离和加密的分层模型,覆盖了处理机密交易数据系统的不同故障模式。
完整的参考实现可在 M&A Due Diligence Multi-Agent Sample 仓库中获取。它附带合成数据(无真实公司、财务数据或个人信息)、一键部署和一个 Jupyter notebook 演练。全流程部署-运行-清理周期的预估费用低于 5.00 美元。
部署前,请确认你具备以下条件:
你无需在本地安装 Docker。智能体容器镜像在 AWS CodeBuild 上构建。
部署到以下受支持的区域之一:us-east-1、us-west-2、ap-southeast-2 或 eu-central-1。
克隆仓库并运行部署脚本。首次部署需要 20–25 分钟。
# macOS / Linux
git clone https://github.com/aws-samples/sample-ma-due-diligence-agentcore.git
cd sample-ma-due-diligence-agentcore
./deploy.sh
# Windows
git clone https://github.com/aws-samples/sample-ma-due-diligence-agentcore.git
cd sample-ma-due-diligence-agentcore
.\deploy.ps1
部署脚本会验证你的区域和模型访问权限,创建虚拟环境,运行 cdk deploy --all,植入合成数据,并执行部署后冒烟测试。它还会以可编辑模式安装项目,这会注册 mna 命令行工具,在下一步中用于调用智能体。
使用 mna CLI 向单个专家发送提示,或让 supervisor 在它们之间路由:
# 让 supervisor 在各专家之间协调
mna invoke supervisor "Screen the mid-market logistics targets with revenue 100M-500M, then run a DCF on the top hit." --session-id walkthrough-session-00000000-0001
# Target Screening: text-to-SQL on Aurora + KB narrative enrichment
mna invoke target_screening "Screen the target pipeline for transportation companies with revenue between 100M and 500M USD, EBITDA margin above 12%, and fleet size above 200. Surface the top three and tell me what the CIM says about the leader's growth trajectory." --session-id walkthrough-session-00000000-0001
# Financial Analysis: KB retrieval + Gateway-backed market data tool
mna invoke financial_analysis "Run a DCF on Example Corp using the CIM in the knowledge base. Flag any management projection that diverges from historical performance by more than 20% and pull comparable multiples for transportation-logistics mid-market." --session-id walkthrough-session-00000000-0001
# Strategic Fit: AgentCore Memory long-term retrieval
mna invoke strategic_fit "Compare Example Corp' integration profile against our three most recent completed acquisitions. Identify the top three integration risks and cite the source memos." --session-id walkthrough-session-00000000-0001
每次调用都会在页脚打印一个 trace_id。使用 mna trace <trace_id> 来检查该调用的完整 X-Ray 追踪。
mna evaluate 子命令对专家输出运行引用检查评估器:
# 以 JSON 格式捕获响应
mna --json invoke financial_analysis "Run a DCF on Example Corp using the CIM." --session-id blog-demo-session-00000000-000002 > run.json
# --session-id 接受 33 到 256 个字符之间的任意字符串 --- AgentCore Runtime 对 runtimeSessionId 强制执行此长度范围。上面的值仅为示例;如果你想保持调用隔离,可使用 UUID 等唯一字符串,或完全省略 --session-id 让客户端生成一个。
# 提取响应文本和引用
python -c "import json,pathlib;d=json.loads(pathlib.Path('run.json').read_text());pathlib.Path('response.txt').write_text(d['text'])"
python -c "import json,pathlib;
d=json.loads(pathlib.Path('run.json').read_text());
pathlib.Path('citations.json').write_text(json.dumps(d['citations']))"
# 运行引用检查评估器
mna evaluate --response-file response.txt --citations-file citations.json
评估器返回结构化结果,标明通过或失败,并附带总主张数、被支持主张数和任何不被支持的断言的计数。通过时退出码为 0,失败时为 1,可集成到 CI 流水线中。
要获得相同工作流的逐步单元格导览:
jupyter lab notebooks/walkthrough.ipynb
该 notebook 依次介绍环境验证、数据概览、每个专家智能体一格(包含渲染的响应和引用)以及追踪检查。
为避免产生持续费用,请在探索完成后立即销毁所有已部署的资源:
# macOS / Linux
./cleanup.sh
# Windows
.\cleanup.ps1
清理脚本运行 cdk destroy --all --force 以反向依赖顺序拆除每个堆栈。然后执行验证扫描,检测孤立资源:
mna-* 的 S3 桶mna-* 的 ECR 仓库验证脚本打印出它找到的资源的复制粘贴命令,以便你确认零费用结束状态。如果每个扫描的脚本输出为空,则所有计费资源都已被移除。有关 CDK 资源清理的更多详细信息,请参阅 AWS CDK 文档。
我们鼓励你针对自己的用例扩展此架构。以下是几条可行路径:
添加生产级前端。 AgentCore 的全栈启动模板(FAST)提供了一个基于 React 的 UI、Amazon Cognito 身份验证和 Amazon CloudFront 分发,可直接与 AgentCore 运行时集成。
构建更多专家智能体。 示例的 CONTRIBUTING.md 文档记录了文件布局、Strands 模式和 supervisor 注册流程,用于添加新智能体(例如监管申报智能体或 ESG 评分智能体)。
探索高级编排。 Strands Agents SDK 支持多种协调方法,包括 agents-as-tools、swarms 和 agent graphs。多智能体协作模式文档详细介绍了每种方法。
连接更多数据源。 AgentCore Gateway 支持 HTTP API、MCP 服务器和 Amazon API Gateway 目标,远不止这里演示的单一 Lambda 工具。
在本文中,我们展示了如何在 Amazon Bedrock AgentCore 上构建多智能体系统,自动化交通运输与物流领域的并购尽职调查。我们深入介绍了协调各专业智能体的架构设计——分别负责目标筛选、财务分析、战略契合度评估和合规验证。随后我们部署了可运行的示例,并针对合成收购目标进行了调用验证。
该参考实现展示了每个架构层(智能体编排、知识检索、结构化数据访问、制度性记忆和自动化评估)如何共同构建出一个既有能力又可审计的系统。本文展示的模式可以自然地扩展到其他尽职调查领域,包括医疗保健、金融服务和科技并购。
要开始使用,请克隆示例代码仓库,在你的 AWS 账户中部署整个技术栈,然后尝试修改某个专业智能体或添加一个新的。FAST 模板提供了从示例到托管应用的完整路径,包含身份认证、可观测性和精美的用户界面。
Amazon Bedrock AgentCore
M&A Due Diligence Multi-Agent Sample – GitHub 仓库