top of page

构建生产级、高弹性的智能体人工智能架构

13小时前
讀畢需時 9 分鐘

企业人工智能的演进


企业在利用人工智能的方式上正经历着一场重大的范式转变。最初,企业采用人工智能的浪潮主要集中在生成式人工智能聊天机器人上——这类反应式系统需要不断的人工提示才能生成静态文本、代码或图像。虽然这些系统对提高个人效率很有价值,但它们无法扩展以处理复杂的跨职能业务流程。


业界正迅速向智能体人工智能发展。智能体系统是目标驱动的、半自主或完全自主的软件实体,能够规划多步骤工作流程,使用专门的数字工具,克服障碍,并在企业环境中安全地执行任务。


然而,一个悖论出现了:虽然约有60% 的企业正在积极投资于智能体人工智能能力,但只有 15% 的企业拥有确保成功所需的数据基础。大多数组织都陷入了耗资巨大的恶性循环,不得不手动清理遗留数据存储,仅仅为了运行一些基本的概念验证试点项目。


本指南详细阐述了构建生产级、高弹性智能体人工智能架构的战略、架构和代码层面的终极蓝图。我们将探讨如何在底层核心数据基础设施高度分散或混乱的情况下,利用 AWS 云原生原语和开源工作流网络(LangGraph、Temporal 和模型上下文协议)的混合组合,大幅提升企业效率。


战略核心:为什么要制定智能体人工智能战略?


缺乏系统性战略的人工智能部署会导致孤立的技术债务。企业需要制定全公司范围的智能体人工智能战略,原因有四:


  1. 从单一提示转向自主工作流

传统的生成式人工智能模型等待单一指令,执行单一任务,然后将控制权交还给人类操作员。而智能体人工智能则颠覆了这种模式。用户定义一个高层次的目标(例如, “将第三季度发货延迟与我们的B2B应收账款流程进行核对”) 。智能体感知目标,将其分解为一系列步骤,调用外部API,更新记录系统,并动态检查自身的工作。


  1. 消除人类认知疲劳并扩大运营规模

手动管理数十个分散、孤立的自动化脚本无法扩展。代理程序将底层工具管理从人工操作员手中解放出来。高度复杂的企业流程——例如信贷审批、执行客户尽职调查 (KYC)、管理多层供应链或协调复杂的客户技术故障排除——都可以以远低于标准运营成本和时间实现自动化。


  1. 重新设计工作和团队结构

智能体系统并非简单地替代任务,而是作为数字化同事发挥作用。它们协调复杂的流程,监控实时系统状态,并且仅在严格的确定性业务规则需要人工干预时,才会主动将特殊情况上报给人类专家。这使得人力资本从低价值的数据处理工作中解放出来,投入到高价值的战略决策中。


  1. 建立保障措施、信任和安全

由于自主代理具备执行现实世界操作(例如授权客户退款、编辑生产数据库字段或执行网络基础设施任务)的技术能力,因此,未经指导的部署会引入重大风险。战略框架可确保严格的架构边界——映射非人类数字身份、强制执行数据契约,并在人工智能错误在内部环境中累积之前嵌入不可更改的人工参与验证检查点。


最小可行数据基础(代理型 MVP)


如果您的全球企业数据湖管理混乱,切勿尝试将自主代理直接连接到它。赋予 LLM 对混乱数据库结构的开放式查询权限会导致高概率的幻觉、执行管道中断以及关键数据泄露风险。


人工智能代理

然而,您无需等待耗时数年、耗资数百万美元的数据仓库现代化项目完成才能继续推进。相反,您可以专注于构建一个Agentic MVP ,方法是围绕一个单一的、界限分明的业务问题,手动建立四个最基本的技术基础组件。


智能体人工智能流程

1.可访问的 API 端点(“手”)

代理程序无法直接与静态 PDF 打印输出或未建立索引的原始表进行交互。您必须至少公开一个清晰的 REST API 端点或安全的数据库视图,允许外部进程安全地读取或写入记录。API 是代理程序的双手;没有它们,推理系统将始终被困在封闭的沙箱中。


2.严格的、JSON 可读的模式(“大脑映射”)

LLM 需要明确的参数才能可靠地选择工具。您必须提供清晰的 JSON Schema 或 OpenAPI 规范,详细说明 API 期望的属性以及返回的结构化有效负载。如果代理调用端点并收到非结构化、不规则的文本转储,其下游逻辑将失败。


3.向量数据库或知识索引(“内存”)

在做出业务决策之前,代理商必须验证上下文、内部策略和合规性参数。最低要求是使用一个简单的、可管理的向量索引(例如 Pinecone、Qdrant 或运行`pgvector` 的PostgreSQL),其中包含清晰的、分块嵌入的核心操作手册、标准操作程序 (SOP) 或产品目录。这为检索增强生成 (RAG) 奠定了基础。


4.专用服务帐户和范围化身份与访问管理(“护栏”)

您必须像对待新入职的人类员工一样对待非人类人工智能代理。它必须拥有独立的专属服务帐户,其身份与访问管理 (IAM)策略应限制为初始的“只读”权限,并受到严格的 API 速率限制。切勿将根数据库凭据传递给 LLM 上下文循环。


双轨执行策略


为了平衡长期技术健康与短期业务速度,面临基础设施挑战的组织必须采取并行的双轨战略。



第一部分:构建隔离战术代理(沙盒方法)

通过为特定的高价值流程手动构建一个独立、纯净的“数据岛”,绕过混乱的企业架构。如果您的企业 CRM 系统混乱不堪,请手动将 500 条经过验证的记录子集导出到单独的向量索引中。将代理程序设置为严格只读,强制其输出为草稿格式,并在流程末端安排人工审核员检查并执行最终输出。


第二条:让代理商协助清理基础设施(清洁工模式)

利用专业的代码生成和数据工程代理,加速您的长期数据现代化路线图。人工智能代理能够高效地扫描冲突的遗留数据库表,自动推断数据类型,构建清晰的目标模式,并编写 Python 或 SQL 脚本来清理、规范化和迁移重复条目。


语义库

为了正确实施特定的代理活动,必须进行工作流映射。作为该活动的一部分,您需要收集信息,以使过渡更加顺畅高效:构建语义库。这将有助于“教育”您的代理,无论是代理之间的协调,还是代理内部的 RAG 活动。它是一个业务驱动的信息集合,如今通常包含一些技术组件。


语义库

图书馆应包含以下内容:

1. 商业条款

  • 一些技术术语可能会渗透进来。


2. 使用语境

  • 这需要针对含义丰富的术语进行具体说明,例如市场、组成部分等。

  • “all”是一个有效的上下文,但如果你的所有术语都属于“all”上下文,那么你可能做错了。


3. 上下文中的术语定义

  • 组成成分可以指投资组合、投资组合组、化合物、多种材料等。


4. 权威数据来源。

  • 这里需要记录物理数据的访问来源。例如,如果您有服务读取缓存来提供数据,或者有 SQL 查询从数据库执行 CRUD 操作,那么这些信息都需要记录在这里。这里应该记录当前或计划的数据访问方法,而不是物理数据库*、S3 存储桶等的目录。

    * 如果您没有可以访问数据的服务

  • 这里不需要包含代码,例如(SQL、JS、Python 等),这是一个对象引用。


5. 数据源内的数据元素目录

  • 服务输入输出、表、视图等等;以及服务或视图背后的实现机制。这对于代码变更的依赖关系分析至关重要。


6. 如果适用,请说明它们在工作流程中的使用阶段。

  • 工作流程中数据被使用或产生的地方。


如果存在多个“权威”数据源,则应将其分解为一个层级结构,以指示访问顺序。“语义库”及其映射本质上将为您的代理提供一个语义层。


语义库可以分模块构建,每个模块与 Agentic MVP 阶段相对应。虽然构建一个完整的语义库需要更多协调,但这比瀑布式的“一口气完成”项目模式要好得多。“一口气完成”的方法往往难以界定“完成”的界限,缺乏一个清晰的逻辑终点;而 MVP 阶段则清晰得多。如果您已经有一个现成的库,例如数据目录,那么 Agentic MVP 的构建过程应该是对该库进行验证和更新,但最好不要完全重建。仅仅拥有数据目录并不等同于语义库;它缺少上下文和工作流组件。


无论如何,随着时间的推移,您都需要更新您的库。它可能与业务线密切相关,因此捕获上下文信息尤为重要。您可能需要对库进行“切片”,以匹配特定的代理活动。



防止代理碎片化:多代理编排层


如果在各个部门扩展多个战术代理,而没有统一的层,您的企业将从传统的意大利面条式代码转变为“AI 代理意大利面条式代码” ——在这种状态下,独立的代理在不同的代码库上运行,产生冲突的输出,并且缺乏统一的业务可见性。


为了解决这个问题,不要尝试合并混乱的底层数据库。相反,应该规范代理之间的通信方式。这可以通过创建一个事件驱动的、有状态的编排层来实现,该编排层配置为中心辐射型多代理系统。


智能体架构


编曲的核心架构支柱


状态机和工作流引擎(确定性路径)

企业工作流程的高层路径绝不能完全交给层级管理(LLM)随意决定。编排层依赖于确定性状态机(例如使用LangGraph等框架或Temporal.io等分布式引擎构建)。这确保工作流程严格遵循业务图(例如,步骤 A 必须返回经过验证的 JSON 响应才能执行步骤 B )。它还能处理超时、异常和循环。


消息与事件总线(解耦通信)

由于代理的推理步骤和传统数据库的访问可能需要数分钟才能完成,同步 API 架构会超时并失败。编排层利用异步消息代理或事件总线(例如Amazon EventBridge 、 Apache Kafka或RabbitMQ )。代理通过发布和订阅标准化的 JSON 事件信封进行通信,而不是执行直接的点对点代码调用。


LLM路由器/裁判(动态控制器)

在状态机的严格控制下,LLM 封装器被部署为动态路由器或评判器。它评估中间代理输出的语义内容,以确定下一步路径。您在上述语义库方面的工作正是在这里得到验证和奖励。例如,如果数据库检索返回错误字符串,LLM 评判器会审查该文本,以确定它是需要自动重试的常规连接超时,还是需要立即上报给系统管理员的结构验证失败。


共享上下文存储(草稿本)

为了防止令牌膨胀和上下文窗口性能下降,代理不会来回传递大量的历史有效负载。编排层提供了一个集中式的持久化键值或文档缓存(例如Redis或快速的Amazon DynamoDB表)。它充当共享的会话暂存区,代理在其中读取事务的活动状态,追加其已验证的输出数据,并将令牌传递下去。如果您已按照之前的定义收集了信息,则此处会再次使用语义库。


企业混合堆栈实施蓝图


蓝图 A:AWS IAM 任务策略

--json
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "AllowEventBridgePublishing",
      "Effect": "Allow",
      "Action": ["events:PutEvents"],
      "Resource": "arn:aws:events:us-east-1:123456789012:event-bus/EnterpriseAgentBus"
    },
    {
      "Sid": "AllowStateCacheAccess",
      "Effect": "Allow",
      "Action": ["dynamodb:GetItem","dynamodb:PutItem","dynamodb:UpdateItem"],
      "Resource": "arn:aws:dynamodb:us-east-1:123456789012:table/AgentWorkflowState"
    }
  ]
}

蓝图 B:FastMCP 服务器接口

-- python

from mcp.server.fastmcp import FastMCP
import psycopg2
import json

mcp = FastMCP("Logistics Enterprise Database Server")
@mcp.tool()

async def get_shipment_status(invoice_id: str) -> str:

    if not invoice_id.startswith("INV-"):
        return json.dumps({"error": "Invalid format"})

    return json.dumps({"invoice_id": invoice_id, "status": "DELAYED", "delay_days": 14, "severity": "CRITICAL"})

蓝图 C:时间活动循环

--typescript

import { Client } from '@modelcontextprotocol/sdk/client/index.js';
import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio.js';

export async function executeLogisticsAgent(invoiceId: string) {
  const transport = new StdioClientTransport({ command: 'python3', args: ['logistics_mcp_server.py'] });

  const mcpClient = new Client({ name: 'TemporalClient', version: '1.0.0' }, { capabilities: { tools: {} } });

  await mcpClient.connect(transport);

  const toolResult = await mcpClient.callTool({ name: 'get_shipment_status', arguments: { invoice_id: invoiceId } });

  await transport.close();

  return JSON.parse(toolResult.content.text);
}


企业开发人员操作手册:添加新的代理孤岛(财务/计费)


本节概述了通过添加第三个数据孤岛(财务和计费)来扩展此架构所需的实际工程程序。


智能体人工智能工作流程示例

逐步实施


  1. 部署数据视图和 MCP 工具:在 `src/tools/finance_mcp_server.py` 中构建一个独立的工具,通过 FastMCP 提取规则。

  2. 定义代理间事件模型:使用 Pydantic 类强制执行严格的语义模式结构。

  3. 实现时间活动工作队列循环:创建 TypeScript 工作监听器代码。

  4. 在 LangGraph 中注册节点:更新状态 DAG 结构配置。

  5. 更新路由规则:实例化 AWS EventBridge 过滤器配置,以映射跨孤岛通知端点。

bottom of page