
1. 从“画个图”到“画对图”大模型流程图绘制的真实挑战最近在几个项目里我频繁地需要绘制系统架构图、数据流程图和业务逻辑图。和很多开发者一样我的第一反应是打开熟悉的绘图工具比如 Draw.io现在叫 diagrams.net或者 Visio然后开始手动拖拽、连线、调整样式。这个过程本身并不复杂但问题在于当逻辑变得复杂或者需要根据一段文字描述快速生成初稿时手动绘制就显得效率低下且容易出错。于是我把目光投向了当下如火如荼的大模型。理论上一个足够智能的 AI 应该能理解我的自然语言描述并生成结构清晰、元素准确的流程图。这听起来像是“降维打击”——用对话代替拖拽。但实际体验如何呢我决定做一次系统性的横向测评对象是当前市面上几款主流且易于获取的大模型测试场景就是最朴实无华的“流程图绘制”。这次测评的核心不是比谁的画布更花哨而是看谁能真正理解需求生成逻辑正确、元素规范、可直接用于后续编辑的流程图。换句话说我要的不是一张“看起来像”的图片而是一个具备正确语义的、可编辑的流程图文件如.drawio或.vsdx它里面的每个图形、每条连线、每段文字都应该准确反映我的描述意图。这背后考验的是模型的多模态理解、逻辑推理、代码生成因为很多工具支持代码生成图表以及领域知识如 UML、BPMN 符号体系的综合能力。2. 测评框架设计我们到底在测什么在开始“跑分”之前明确测评的维度和标准至关重要。如果只是笼统地说“画得好”或“画得不好”那结论毫无价值。我结合实际的绘图工作流设定了以下几个核心评测维度2.1 需求理解与逻辑还原度这是最根本的一条。模型能否准确抓取描述中的关键实体、动作、判断条件和流程走向基础实体识别能否正确区分“用户”、“系统”、“数据库”、“服务”等不同角色和组件会不会把“订单”这个数据实体画成一个“人”的形状流程顺序对于“先登录后查询如果库存不足则提示否则生成订单”这样的描述生成的流程图顺序是否正确“判断”环节菱形是否被正确放置分支与循环对于“重复尝试直到成功”或“根据状态A、B、C分别处理”的复杂逻辑模型能否用正确的决策分支和循环结构来表达关系刻画实体之间的关系是“调用”、“包含”、“存储”还是“继承”模型是否选用了正确的连线实线、虚线、箭头和连线上的标签2.2 图形化规范与工具兼容性画出来的图最终是要用的。这就涉及到两个层面符号规范是否遵循了流程图或特定图表如 UML 时序图、架构图的基本绘图规范例如开始/结束用圆角矩形处理过程用矩形判断用菱形数据用平行四边形。模型是严守规范还是自由发挥输出格式与可编辑性这是本次测评的重中之重。模型是直接生成一张 PNG/JPEG 图片还是生成了可编辑的源文件图片对于简单参考可以但无法修改实用价值低。Mermaid / PlantUML 代码这是目前大模型最擅长的方式。它们是一种基于文本的图表描述语言。优点是纯文本易于由 AI 生成和版本管理缺点是需要渲染引擎才能查看且高级样式调整复杂。Draw.io XML / VSDX这是直接生成绘图工具的原生文件格式。如果能生成这个意味着你可以直接在 Draw.io 或 Visio 中打开获得一个完全可编辑、元素分层清晰、样式可调的图表这是最理想的“生产就绪”输出。2.3 交互与迭代能力在实际工作中很少有“一稿过”的图表。模型的交互能力决定了它能否成为一个高效的协作伙伴。理解修改指令当我说“把这里的数据库改成 Redis 集群图标”或“在用户和认证服务之间加一个负载均衡器”时模型能否在原有图表基础上进行精准修改是生成全新的代码还是能给出针对性的修改建议或差分代码支持增量描述能否接受“基于上一张图我们再增加一个异常处理流程”这样的指令2.4 复杂场景处理能力除了画一个简单的登录流程模型能否处理更专业的图表系统架构图涉及云服务组件如 AWS S3、Kafka、Kubernetes Pod、网络拓扑、部署关系。时序图对象之间的消息传递、生命线、激活条。实体关系图ER表和字段、主外键关系。基于以上维度我设计了从易到难的一组测试用例并将重点观察模型在“生成可编辑的 Draw.io 文件”这一高实用性任务上的表现。3. 主流模型实战谁能真正交出“.drawio”文件我选取了 GPT-4o、Claude 3.5 Sonnet、DeepSeek-V3 和国内一款表现较好的开源模型通过其官方演示界面作为测评对象。测试均使用其最新的公开可用版本截至测评时采用零样本Zero-shot提示不进行特定微调或提供大量示例。测试用例1基础业务流程提示词“请绘制一个用户在线购书的简化业务流程图。流程包括用户访问网站、浏览书籍、将书加入购物车、进行结算登录、支付、支付成功后生成订单、系统通知仓库发货。请直接生成可以导入 Draw.io 编辑的 XML 文件内容。”GPT-4o它首先用文字详细描述了流程然后提供了一段完整的 Draw.io 兼容的 XML 代码。这段代码可以直接保存为.drawio文件用 Draw.io 打开后呈现出一个结构清晰、符号规范的流程图。所有图形开始/结束、过程、判断使用正确连线有序。它甚至为“支付”这个环节添加了一个判断分支成功/失败虽然我并未明确要求但这体现了其对业务常识的理解。Claude 3.5 Sonnet表现与 GPT-4o 类似同样给出了可直接使用的 Draw.io XML 代码。其生成的图形在视觉布局上略显紧凑但逻辑完全正确。一个细微的优点是它在 XML 注释中简要说明了各部分对应的图形对开发者更友好。DeepSeek-V3它倾向于首先生成 Mermaid 代码。当我再次强调“要 Draw.io XML”时它能够转换并生成 XML但生成的 XML 结构相对简单图形样式是 Draw.io 的默认样式复杂性和细节丰富度略低于前两者。开源模型A主要生成 Mermaid 代码。当被要求生成 Draw.io XML 时输出的代码格式存在问题导入 Draw.io 时部分图形无法正确解析或位置错乱。实操心得对于直接生成可编辑文件的需求在提示词中明确指定“生成 Draw.io 兼容的 XML”至关重要。GPT-4o 和 Claude 3.5 Sonnet 在这一轮表现最为可靠它们似乎内置了对于 Draw.io 数据模型的理解。而许多模型包括一些大厂模型的“第一反应”是生成 Mermaid因为这对纯文本模型来说更“自然”。测试用例2复杂系统架构图提示词“绘制一个微服务架构的电商平台简化架构图。包含客户端Web/App、API Gateway、用户服务、订单服务、商品服务连接 MySQL、购物车服务连接 Redis、支付服务外部调用、以及一个消息队列如 Kafka用于异步通信。服务之间通过 REST API 调用。请生成 Draw.io XML。”GPT-4o成功生成了包含所有指定组件的架构图。它使用了不同的图形来区分客户端矩形、服务圆角矩形/圆柱形、数据库圆柱形、消息队列队列符号。连线表达了调用关系并标注了“REST”或“Async”。输出 XML 可直接使用布局合理。Claude 3.5 Sonnet同样成功生成。一个亮点是它尝试使用了 Draw.io 形状库中更接近云原生风格的图标如一个简化的服务器图标代表服务视觉效果更贴近现代架构图。但在表示 Kafka 时其图形选择稍显模糊。DeepSeek-V3能够列出所有组件并尝试用 XML 描述但对 Draw.io 中复杂形状如特定的数据库、消息队列图标的引用不够准确导致打开后部分图形显示为默认矩形需要手动调整。开源模型A未能有效组织如此多的组件生成的 XML 逻辑混乱图形大量重叠无法直接使用。避坑指南绘制架构图时模型的难点在于图形语义的精确映射。比如“Redis”它可能知道这是一个数据库但在 Draw.io 的上下文中是用一个标准的圆柱形还是用带有“Redis”字样的预定义图标高级模型如 GPT-4o似乎能更好地处理这种映射。对于精度要求高的图一个技巧是在提示词中补充“使用 Draw.io 形状库中常见的图标例如用圆柱体表示数据库用队列符号表示 Kafka”。测试用例3迭代修改提示词基于用例1生成的图“在刚才的购书流程图中支付环节之后如果支付失败需要增加一个‘重试支付’的循环最多重试3次。3次都失败则取消订单。请提供修改后的完整 Draw.io XML。”GPT-4o / Claude 3.5 Sonnet两者都能很好地理解这是在原有流程上增加一个“循环”和“计数器”逻辑。它们不是简单地重画而是在描述中说明“在支付判断的‘失败’分支后添加一个循环节点……”并给出了整合了修改的、新的完整 XML 代码。虽然我们更希望得到“差异补丁”但给出全量新代码在现阶段是更可靠的方式。DeepSeek-V3能够理解修改意图并在新生成的代码中体现出来但需要你明确替换掉旧的 XML 部分。开源模型A对迭代指令的理解不稳定有时会生成一个完全无关的新图。4. 核心发现与能力边界分析经过多轮测试几个核心结论逐渐清晰1. 第一梯队GPT-4o 与 Claude 3.5 Sonnet——可靠的“图表工程师”两者在流程图生成任务上表现最为全面和稳定。优势深度理解工具链它们对 Draw.io、Mermaid、PlantUML 等图表描述语言或工具的数据结构有深入理解能生成语法正确、结构良好的源代码尤其是 XML。逻辑还原能力强能准确把握复杂描述中的顺序、分支、循环关系错误率低。符号库知识丰富能较准确地为不同概念匹配流程图或架构图的标准图形。交互友好能较好地处理迭代修改指令。局限生成的图表在美学设计上较为基础布局是自动的通常基于 Draw.io 的自动布局引擎可能不够精美需要人工二次调整。对于极其复杂、包含上百个节点的超大型流程图生成的 XML 可能过于庞大有时会导致 Draw.io 渲染缓慢。2. 第二梯队DeepSeek-V3 等优秀追赶者——合格的“图表助手”优势在理解业务流程和生成 Mermaid 代码方面已经相当不错能满足大部分快速文档化的需求。挑战在直接生成特定工具如 Draw.io的复杂、可精细编辑的文件格式时细节处理能力和稳定性与第一梯队有差距。它更像一个“概念转译器”而不是“生产文件生成器”。3. 通用挑战与能力边界“最后一公里”问题所有模型都能生成“对的逻辑”但离生成“开箱即用、布局美观的最终图表”还有距离。布局优化、颜色搭配、对齐排版等设计工作仍需人工完成。AI 目前是优秀的“草图作者”而非“美术编辑”。高度专业化图表对于需要严格遵循特定标准如 ArchiMate、BPMN 2.0 所有细节的图表模型容易出错。它可能知道 BPMN 中要用矩形和菱形但对于“事务子流程”、“补偿事件”等特定符号的运用就不够准确。依赖精确的提示词输出的质量与提示词的精确度强相关。“画一个登录流程”和“画一个包含前端、后端、数据库交互并考虑登录失败重试和密码找回的 UML 序列图”得到的结果天差地别。使用者需要具备一定的图表知识才能通过提示词“驱动”模型。5. 实战指南如何高效利用大模型绘制流程图基于以上测评如果你想在真实工作中用大模型提升画图效率我推荐以下工作流和技巧1. 分层提示法不要试图一句话让模型画出完美的图。采用“描述-细化-定稿”三步走第一步逻辑描述“我需要一个描述 [你的业务场景] 的流程图。关键步骤包括A, B, C, D。其中在 B 之后根据条件 X 会有分支走向 C 或 E。” 先让模型理解逻辑。第二步指定规范“基于以上逻辑使用标准的流程图符号开始/结束用圆角矩形过程用矩形判断用菱形生成 Mermaid 代码。” 先拿到可快速验证的逻辑草图。第三步指定输出格式“将上述 Mermaid 代码表示的逻辑转换为 Draw.io 的 XML 格式并尽量使用清晰的横向布局。” 获得可编辑的生产文件。2. 善用“种子”图形如果你已经有一个基础框架可以将其 XML 部分内容或 Mermaid 代码粘贴给模型然后指令“请在这个现有流程图的基础上在‘用户验证’模块之后增加一个‘风控检查’环节。” 这比完全从头描述更高效、更准确。3. 明确拒绝与修正当模型理解错误时直接指出“不这里‘库存服务’不应该直接连接‘用户’它应该被‘订单服务’调用。请修正。” 清晰的否定和正确的指引能帮助模型快速调整。4. 工具链整合将大模型集成到你的绘图工作流中VS Code Mermaid 插件让模型生成 Mermaid 代码在 VS Code 中实时预览和微调。这是最轻量、最快捷的方式。Draw.io Desktop / Diagrams.net准备一个基础的、带有你公司常用图标和样式的 Draw.io 模板文件。让模型生成基于此模板的 XML 修改建议或者生成主要逻辑的 XML然后你将其复制粘贴到模板的相应图层中。5. 管理期望目前大模型在流程图绘制上是强大的“辅助脑”和“手”能承担 70% 的重复性、框架性工作但无法替代你 100% 的思考和对最终成果的质量把控。它最适合的场景是快速将头脑风暴或会议记录转化为可视化的初稿、为已有文档补图、以及维护和更新图表时提供修改建议。最终大模型没有淘汰绘图工具也没有淘汰会画图的人但它正在淘汰那些只会机械拖拽图形、而不思考逻辑本身的人。它把我们的工作重心从“如何画”重新拉回到了“画什么”和“为什么这么画”——这才是创造力的核心。