Skip to content

01 项目概述与多 Agent 架构

学习理念:这是整门课程中**最接近"多 Agent 企业级应用"**的项目。前面 Ch19/20/23 都是单 Agent 系统,而这里是 5 个 Agent 协同工作——每个 Agent 有独立的 LangGraph 工作流,通过 Harness 编排层统一调度,用 EventBus + SSE 实时推送进度。理解了这个项目的架构,你就理解了复杂多 Agent 系统的通用设计模式。

海外对标:OpenAI Swarm(多 Agent 编排)、AutoGen(Agent 协作框架)、CrewAI


📖 阅读优先级

等级章节说明
🔴 必须深入多 Agent 架构设计模式面试常考,4 种模式的选择依据
🔴 必须深入5 个引擎的分工与协作理解各引擎的职责和通信方式
🟡 理解即可部署与配置用到时再回来看

一、项目定位

尚舆分析平台是一个面向舆情分析、热点研判和专题报告生成的多 Agent 智能分析系统

核心流程:

用户输入自然语言分析需求

5 个 Agent 引擎并行 + 协作分析

生成结构化舆情分析报告
特性说明
多引擎并行Insight/Media/Query 三引擎同时工作
Agent 工作流每个引擎内部用 LangGraph 组织搜索→总结→反思→再搜索
事件驱动EventBus 发布进度、结果、错误等事件
SSE 推送前端实时接收各引擎状态和论坛发言
论坛协作ForumEngine 模拟专家讨论,提升研判质量
自动报告ReportEngine 汇总多源信息生成 HTML/MD 报告

二、多 Agent 架构设计模式

🔴【必须深入】 这四种模式面试常考,而且直接决定了多 Agent 系统的骨架。

2.1 并行编排

多个 Agent 同时对任务的不同维度进行分析,各自独立运行:

用户: "分析某品牌最近一周的舆情"

    ├── Agent A: 社交媒体舆情分析(搜索微博/知乎 → 情感分析)
    ├── Agent B: 媒体报道分析(搜索新闻 → 传播路径)
    └── Agent C: 信息核验(搜索官方数据 → 可信度评级)

                  汇总 → 综合分析报告
  • ✅ 速度快,Agent 间无依赖
  • ❌ 缺乏跨维度交流

2.2 顺序编排

Agent 按顺序执行,前一个输出作为后一个输入:

用户 → Agent A(搜索) → Agent B(分析) → Agent C(报告)
  • ✅ 流程清晰,每步利用前序结果
  • ❌ 延迟高,上游错误会级联

2.3 层级路由

主控 Agent 根据意图类型路由到不同专业 Agent:

用户 → Orchestrator
    ├── 舆情分析 → InsightAgent
    ├── 事实查询 → QueryAgent
    └── 报告生成 → ReportAgent
  • ✅ 灵活性高
  • ❌ Orchestrator 需要强意图理解

2.4 协作讨论

多个 Agent 围绕同一主题进行多轮讨论,类似专家圆桌会议:

        共享上下文
        ┌────┴────┐
    Insight   Media   Query
       Agent    Agent   Agent
        └────────┬────────┘
         互相补充、质疑、深化
  • ✅ 洞見更深入
  • ❌ 耗时较长

三、本项目采用的混合架构

🔴【必须深入】 本项目结合了并行编排 + 协作讨论两种模式。

                      用户问题

                     Harness(编排层)

        ┌────────────────┼────────────────┐
        ▼                ▼                ▼
  InsightEngine    MediaEngine      QueryEngine
  (私域情感分析)  (媒体内容分析)   (互联网检索)
        │                │                │
        └────────────────┼────────────────┘

                   ForumEngine(专家讨论)

                   ReportEngine(报告生成)

                    HTML/Markdown 报告

3.1 Harness 编排层

Harness 是系统的"大脑",负责:

  1. 接收用户请求,启动所有引擎
  2. 管理各引擎的生命周期
  3. 通过 EventBus 收集各引擎进度和结果
  4. 触发 ForumEngine 讨论
  5. 触发 ReportEngine 生成报告

3.2 五个引擎的分工

引擎职责核心能力
InsightEngine私域数据情感分析 + 聚类NLP 情感分析、主题聚类
MediaEngine媒体内容搜索分析新闻搜索、传播路径分析
QueryEngine互联网事实查询核验搜索引擎优化、信息交叉验证
ForumEngine模拟专家讨论多角色讨论、意见汇总
ReportEngine报告生成多源汇总、HTML/MD 输出

3.3 事件驱动通信

Harness → EventBus 发布事件

    ├── 进度事件 → SSE → 前端显示各引擎进度
    ├── 结果事件 → ForumEngine 消费 → 触发讨论
    ├── 错误事件 → SSE → 前端显示错误
    └── 论坛事件 → SSE → 前端实时显示讨论内容

四、本项目用到的技术栈

技术用途
Python 3.12+开发语言
LangGraph各引擎内部工作流编排
FastAPI后端 API + SSE 推送
Vue3 + Vite前端展示
SSE实时进度推送
EventBus引擎间通信
Docker Compose容器化部署
MySQL数据存储

五、本阶段文件索引

优先级文件路径
🔥 P001_项目全景介绍.md1.笔记/课件/
🔥 P002_关键组件设计讲解.md1.笔记/课件/
🟡 P104_项目脚手架与单引擎工作流构建.md1.笔记/课件/

OPC 超级个体实战指南