DeepDiagram 技术分析:Agentic AI 多智能体可视化平台
一、项目概述
DeepDiagram 是一个基于 Agentic AI 架构的开源智能可视化平台,能够将自然语言描述转换为专业的思维导图、流程图、数据图表等多种可视化形式。该项目采用多智能体架构,每个可视化领域由专门的 Agent 负责处理,通过 LangGraph 编排层实现智能路由。
项目地址: https://github.com/twwch/DeepDiagram
在线演示: http://deepd.cturing.cn/
开源协议: AGPL-3.0
二、系统架构分析
2.1 整体架构图

2.2 架构分层
前端层(React 19)
- 技术栈: React 19 + Vite + TypeScript + TailwindCSS
- 状态管理: Zustand
核心组件:
- 交互式画布(基于 React Flow、Mind-elixir)
- 可调整大小的面板布局(react-resizable-panels)
- SSE 流式数据接收与实时渲染
UI 增强特性:
- 现代化聊天输入框(回形针上传、发送按钮)
- 稳定的布局设计(图片预览置于 Agent 快捷方式上方)
- 进程追踪操作(上下文渲染、实时反馈标签)
后端层(FastAPI)
- 技术栈: Python 3.10+ + FastAPI + LangGraph + LangChain
- 数据持久化: PostgreSQL + SQLModel
- AI 模型: DeepSeek/OpenAI(支持多模型切换)
- 通信机制: SSE (Server-Sent Events) 用于实时流式传输
编排层(LangGraph)
- 核心功能: 智能路由 + Agent 协调
- 路由策略: 基于 ReAct 的意图识别,自动将请求分发至最合适的 Agent
- 状态管理: 维护对话上下文、Agent 执行状态、工具调用历史
专门化 Agents
- Mind Map Agent: 基于
mind-elixir,生成交互式思维导图 - Flowchart Agent: 基于
React Flow,创建专业流程图 - Data Chart Agent: 基于
Apache ECharts,生成数据可视化图表 - Draw.io Agent: 基于
Draw.io(Atlas 主题),输出技术绘图 - Mermaid Agent: 基于
Mermaid.js,生成序列图、甘特图、状态图等 - Infographic Agent: 基于
AntV Infographic,创建信息图和数据海报
2.3 数据流与 ReAct 循环
graph LR
A[用户输入] --> B[智能路由器]
B --> C[LangGraph 编排器]
C --> D[专门化 Agent]
D --> E{LLM 推理}
E -->|工具调用| F[MCP 工具/插件]
F -->|执行结果| E
E -->|最终响应| G[结构化代码/XML/JSON]
G --> H[SSE 流式传输]
H --> I[前端画布]三、核心特性分析
3.1 多模态输入支持
- 文本输入: 自然语言描述
- 图像上传: 支持白板照片、手绘草图数字化
- 扩展计划: PDF、Docx 等文档格式支持
3.2 智能路由机制
- 上下文感知: 基于 ReAct 的意图识别
- 自动分发: 根据用户请求自动选择最合适的 Agent
- 多语言支持: 中英文自然语言处理
3.3 持久化与版本管理
- 会话管理: 多聊天会话维护,自动状态恢复
- 消息分支: 支持重新尝试 Assistant 响应,探索不同可视化路径
- 版本导航: 内置分页在版本间切换
- 高可靠性: PostgreSQL 存储复杂技术跟踪和多模态内容
3.4 实时流式渲染
- SSE 传输: 后端通过 Server-Sent Events 实时推送更新
- 即时预览: 前端实时接收并渲染生成的内容
- 进程透明: 格式化的 JSON 日志用于调试和透明度展示
四、技术栈详解
4.1 前端技术栈
| 技术 | 用途 | 特点 |
|---|---|---|
| React 19 | UI 框架 | 最新版本,支持并发特性 |
| Vite | 构建工具 | 快速冷启动、HMR |
| TypeScript | 类型系统 | 静态类型检查 |
| TailwindCSS | 样式框架 | 原子化 CSS、快速开发 |
| Zustand | 状态管理 | 轻量级、简洁 API |
| React Flow | 流程图渲染 | 交互式节点编辑器 |
| Mind-elixir | 思维导图 | 高性能思维导图库 |
| react-resizable-panels | 可调整布局 | 专业级拖拽分隔 |
| AntV Infographic | 信息图 | 声明式 DSL、SVG 渲染 |
4.2 后端技术栈
| 技术 | 用途 | 特点 |
|---|---|---|
| FastAPI | Web 框架 | 高性能异步、自动文档 |
| LangGraph | Agent 编排 | 状态图、循环机制 |
| LangChain | LLM 集成 | 统一接口、工具生态 |
| SQLModel | ORM | 类型安全、基于 Pydantic |
| PostgreSQL | 数据库 | 可靠性、事务支持 |
4.3 部署方案
- 开发环境: 独立启动前后端服务
- 生产环境: Docker Compose 一键部署(Nginx + Frontend + Backend + PostgreSQL)
五、第一性原理分析
5.1 核心问题分解
- 自然语言理解: 如何将模糊的用户意图映射到具体的可视化类型?
- 可视化生成: 如何生成高质量、可交互的图表?
- 实时性: 如何在生成过程中提供即时反馈?
- 可扩展性: 如何轻松添加新的可视化类型?
5.2 DeepDiagram 的解决方案
| 问题 | 解决方案 | 技术实现 |
|---|---|---|
| 意图理解 | ReAct 编排 + LLM 推理 | LangGraph 状态图 |
| 可视化生成 | 专门化 Agent 封装 | 各 Agent 独立实现 |
| 实时反馈 | SSE 流式传输 | FastAPI + EventSourceResponse |
| 可扩展性 | 插件化 Agent 架构 | 继承基础 Agent 类 |
5.3 系统组件交互
- 用户请求 → 智能路由器(意图分类)
- 路由器 → LangGraph 编排器(状态同步)
- 编排器 → 专门化 Agent(任务分发)
- Agent → LLM 推理(ReAct 循环)
- LLM → MCP 工具(工具调用)
- 工具 → 结构化输出(代码/XML/JSON)
- 输出 → SSE 流(实时传输)
- 流 → 前端画布(实时渲染)
六、创新点与优势
6.1 Agentic AI 多智能体架构
- 领域专业化: 每个 Agent 专注于一种可视化类型,积累领域最佳实践
- 独立演进: 各 Agent 可独立优化、更新,互不影响
- 灵活组合: 支持多 Agent 协作完成复杂任务
6.2 智能路由与编排
- 自动选择: 用户无需指定可视化类型,系统自动判断
- 上下文感知: 基于对话历史和当前请求动态决策
- 容错机制: 路由失败可自动重试或切换 Agent
6.3 全面的可视化支持
- 覆盖主流场景: 思维导图、流程图、数据图、技术绘图、信息图
- 高质量输出: 每种类型都采用专业级渲染库
- 可导出格式: PNG、SVG、JSON(可编辑格式)
6.4 卓越的用户体验
- 实时反馈: SSE 流式传输让用户看到生成过程
- 可调整布局: 拖拽分隔符灵活分配画布和聊天面板空间
- 版本管理: 消息分支和版本切换支持探索不同方案
- 进程透明: 完整的追踪日志让用户了解 AI 的思考过程
七、潜在挑战与改进方向
7.1 当前挑战
- LLM 依赖: 输出质量依赖底层 LLM 能力
- 成本控制: 多次 ReAct 循环和工具调用增加 API 成本
- 响应延迟: 复杂图表生成可能需要较长时间
- 准确率: 智能路由可能误判用户意图
7.2 改进建议
- 缓存机制: 对相同或相似请求缓存结果
- 增量更新: 支持在现有图表基础上修改,而非重新生成
- 混合模型: 根据任务复杂度选择不同成本的模型
- 用户反馈: 收集用户对路由结果的反馈,持续优化
- 本地模型: 集成开源 LLM(如 LLaMA)降低 API 依赖
八、应用场景
- 教育培训: 快速创建教学图表、知识结构图
- 产品设计: 绘制用户流程、系统架构图
- 数据分析: 将数据描述转换为可视化图表
- 技术文档: 自动生成流程图、时序图等
- 会议记录: 将讨论内容整理成思维导图
- 白板数字化: 将手绘草图转换为专业图表
九、总结
DeepDiagram 通过 Agentic AI 多智能体架构成功实现了自然语言到专业可视化的智能转换。其核心创新在于:
- 关注点分离: LangGraph 负责编排,各 Agent 专注领域渲染
- 智能路由: 基于上下文自动选择最合适的可视化方式
- 实时反馈: SSE 流式传输提供卓越的用户体验
- 可扩展性: 插件化架构支持轻松添加新的可视化类型
该项目为 AI + 可视化 领域提供了一个优秀的参考实现,展示了如何将 LLM 的推理能力与专业渲染库结合,创造出真正实用的生产力工具。
参考资料:
- DeepDiagram GitHub 仓库: https://github.com/twwch/DeepDiagram
- LangGraph 官方文档: https://langchain-ai.github.io/langgraph/
- React Flow 文档: https://reactflow.dev/
- Apache ECharts 文档: https://echarts.apache.org/