从 AI 图表初稿到技术文档:Mermaid 校验、修复与导出实践

简介: 大模型可以根据自然语言快速生成 Mermaid 流程图和时序图,但生成结果并不一定能够直接放进 README、技术方案或接口文档。除了语法错误,还可能存在参与者不一致、异常分支缺失、节点命名过长以及图表类型选择不当等问题。本文以一个订单接口调用流程为例,介绍如何对 AI 生成的 Mermaid 图进行预览、业务校验、语法修复和文档交付,并整理一份可复用的发布前检查清单。

AI 生成图表之后,还缺少一次 Review

在编写 README、技术方案和接口文档时,我经常让 AI 根据文字描述生成 Mermaid 图。

例如,我们可以给 AI 这样的需求:

用户提交订单后,请求先经过 API Gateway,再由订单服务检查库存并调用支付服务。库存不足时直接返回失败;支付失败时释放库存;支付成功后创建订单。

AI 通常能很快生成一段 Mermaid 代码。问题是,生成代码只完成了“表达转换”,并不意味着这张图已经可以交付。

实际使用中,经常会遇到几类问题:

  • Mermaid 语法无法被当前渲染器解析
  • 参与者名称前后不一致
  • 只描述正常流程,没有异常分支
  • 一条消息承载太多信息,导致图表难以阅读
  • 图中的调用关系和真实系统不一致
  • 图片可以显示,但源码后续难以维护
  • 导出的位图分辨率不足,不适合技术文档

因此,我一般不会直接把 AI 返回的代码复制进文档,而是增加一次“图表 Review”。


第一步:先明确图表需要表达什么

在生成图表之前,需要先限制图表范围。

以订单创建流程为例,这张图只需要回答三个问题:

  1. 请求经过哪些服务?
  2. 库存不足时如何结束流程?
  3. 支付失败后如何进行补偿?

如果同时加入登录鉴权、优惠券、风控、物流和消息通知,图表会迅速变得难以阅读。

一个更适合生成时序图的输入描述是:

参与者包括用户、API Gateway、订单服务、库存服务和支付服务。

流程:
1. 用户向 API Gateway 提交订单。
2. API Gateway 将请求转发给订单服务。
3. 订单服务向库存服务检查并预留库存。
4. 库存不足时返回失败。
5. 库存充足时调用支付服务。
6. 支付失败时释放已预留库存。
7. 支付成功时创建订单并返回订单编号。

这里特意明确了参与者、正常路径和异常路径,可以减少 AI 对业务流程的自由发挥。


第二步:检查 AI 生成的初稿

AI 可能生成类似下面的代码:

sequenceDiagram
    actor User
    participant Gateway
    participant Order
    participant Stock
    participant Payment

    User->>Gateway: Create order
    Gateway->>Order: Forward request
    Order->>Stock: Check stock
    Stock-->>Order: Stock result
    Order->>Payment: Pay
    Payment-->>Order: Payment result
    Order-->>User: Order created

这段代码可以正常渲染,但从业务角度看还不完整。

首先,库存不足时仍然会继续调用支付服务。其次,支付失败后的库存释放没有体现。最后,订单服务直接向用户返回结果,与实际经过 Gateway 返回的调用链不一致。

这也是 AI 图表最容易被忽略的问题:能够渲染,不代表业务关系正确。


第三步:补齐正常流程和异常分支

经过检查后,可以将代码调整为:

sequenceDiagram
    autonumber
    actor U as 用户
    participant G as API Gateway
    participant O as 订单服务
    participant I as 库存服务
    participant P as 支付服务

    U->>G: 提交订单
    G->>O: 创建订单请求
    O->>I: 检查并预留库存

    alt 库存不足
        I-->>O: 预留失败
        O-->>G: 返回库存不足
        G-->>U: 订单创建失败
    else 库存充足
        I-->>O: 预留成功
        O->>P: 发起支付

        alt 支付失败
            P-->>O: 支付失败
            O->>I: 释放预留库存
            I-->>O: 释放完成
            O-->>G: 返回支付失败
            G-->>U: 订单创建失败
        else 支付成功
            P-->>O: 支付成功
            O->>O: 保存订单
            O-->>G: 返回订单编号
            G-->>U: 订单创建成功
        end
    end

这次修改主要解决了四个问题:

  • 使用 alt 明确表示不同业务分支
  • 补充支付失败后的库存补偿操作
  • 保持请求和响应都经过 API Gateway
  • 使用统一的参与者别名,避免名称漂移

autonumber 还能给调用步骤自动编号,方便在评审技术方案时引用具体步骤。


第四步:在写入文档前进行实际预览

修改源码后,需要放进真实 Mermaid 渲染器中进行预览。不要只根据代码表面判断,因为不同 Mermaid 版本对部分语法的支持可能存在差异。

我在这个过程中主要检查:

  • 是否出现解析错误
  • alt 和 else 的层级是否正确
  • 参与者是否过多
  • 消息文本是否挤压图表
  • 中文标签是否完整显示
  • 正常路径和失败路径是否容易区分

本文示例使用我整理的 DiagramPreview 页面进行预览。它的作用只是执行渲染和导出,业务关系仍然需要人工检查。

Mermaid 图表预览效果

如果图表横向过宽,可以优先缩短消息文本,或者把一个大图拆成“主流程”和“异常处理”两张图。直接缩小字体通常只能暂时掩盖问题。


第五步:选择合适的交付格式

完成检查后,还需要根据使用场景选择输出方式。

README 和代码仓库

如果目标平台支持 Mermaid,建议保留 Mermaid 源码:

```mermaid
sequenceDiagram
    ...

```

这样方便后续通过 Git 修改和审查,也能避免图片与源码失去同步。

技术方案和博客

可以导出 SVG。SVG 在缩放时不会失真,也适合包含较多文字的流程图和时序图。

PNG 更适合不支持 SVG 的平台,但导出时需要检查分辨率,避免在高分辨率屏幕上显示模糊。

需要人工排版的架构图

如果后续需要由产品、架构师或设计人员继续调整,可以转换为 draw.io 格式。不过需要注意,文本图表转换为 draw.io 后,布局和部分样式不一定能够完全一致,转换后仍需人工检查。


AI 图表发布前检查清单

在把图表放入正式文档之前,我通常会进行下面几项检查。

语法检查

  • 是否能在目标 Mermaid 版本中正常渲染
  • alt、loop、opt 等结构是否正确结束
  • 节点名称是否包含需要转义的特殊字符
  • 是否使用了目标平台不支持的实验语法

业务检查

  • 参与者是否与真实系统一致
  • 请求方向和响应方向是否正确
  • 是否遗漏失败、超时和重试流程
  • 是否存在 AI 自行补充的服务或接口
  • 补偿操作是否与主流程对应

可读性检查

  • 一张图是否只表达一个核心问题
  • 消息标签是否过长
  • 是否存在重复或无意义的节点
  • 读者能否快速找到入口、结果和异常分支
  • 是否需要拆分成多张图

交付检查

  • 是否保留可维护的图表源码
  • 导出格式是否适合目标平台
  • 图片中的文字是否清晰
  • 文档内容变化后,图表是否需要同步更新

隐私和安全边界

技术图表经常包含内部服务名称、接口路径、数据库结构和部署关系。使用在线工具或远程 AI 服务时,不应直接提交以下内容:

  • AccessKey、Token、密码和证书
  • 生产环境域名及内部 IP
  • 未公开的系统架构
  • 客户数据和业务敏感字段
  • 完整的私有仓库代码

比较稳妥的方式是先对服务名、域名和字段进行脱敏,再提交给远程服务。即使工具支持浏览器本地预览,也应确认其中的 AI 修复或生成功能是否会调用远程接口。


总结

AI 可以显著缩短图表初稿的生成时间,但它不能替代发布前检查。

一张真正适合技术文档的图,需要同时满足三个条件:

  1. 能够稳定渲染;
  2. 业务关系准确;
  3. 源码和导出结果便于维护。

更可靠的工作方式不是“让 AI 一次生成最终图”,而是把 AI 当作初稿生成器,再通过预览、业务校验、语法修复和格式选择完成交付。

本文示例使用的预览工具:DiagramPreview。普通预览应尽量在浏览器本地完成;涉及远程 AI 的功能,提交前需要先对内容进行脱敏。


建议发布信息

  • 分类:开发工具 / 人工智能 / 前端开发
  • 标签:Mermaid、技术文档、生成式 AI、架构设计
  • 摘要:AI 生成的 Mermaid 并不一定适合直接写入技术文档。本文通过订单调用流程案例,介绍图表预览、业务校验、异常分支修复和导出交付方法。
相关文章
|
23小时前
|
弹性计算 人工智能 运维
阿里云大促活动汇总:企业用户可选哪些低价云服务器,特惠机型全盘点
大促阶段是企业采购阿里云算力资源、降低IT基础设施成本的黄金窗口期。很多中小企业运维、采购人员面对繁多的服务器规格、多样的优惠类型,不清楚哪些实例适合企业业务,也不了解企业专属权益,容易出现预算浪费、选错实例、无法享受企业特惠等问题。本文汇总大促企业用户云服务器相关活动,梳理各类低价实例的适用场景,搭配运维命令实操,帮助企业按需采购,最大化享受优惠。
23 0
|
3天前
|
人工智能 开发工具 开发者
首月只卖6份,半年月流水18万:他把音色玄学做成AI查询生意
21岁吉他爱好者用AI一周做出音色参数工具,首月仅售6份,半年后月流水达2.5万美元、服务15万吉他手。全程0广告,靠精准痛点定位+每日垂直内容冷启动。本质是将老师傅隐性经验结构化,验证了“一人公司=杠杆思维,非孤军奋战”。
|
6天前
|
人工智能 JSON 编解码
【2026最新版】ComfyUI本地部署教程,新手也能看懂!
ComfyUI是本地运行的AI绘画工具,采用节点式工作流设计:通过拖拽连接“加载模型”“提示词编码”“采样”“解码”等模块,实现高度可控的文生图。新手推荐使用秋叶整合包,一键启动、内置模型管理与插件安装器,轻松上手。(239字)
|
5天前
|
人工智能 运维 IDE
阿里云Qoder CN最新活动:开通专业版或高级版,首月Credits翻倍,续费加赠1000Credits
本文聚焦阿里云Qoder CN 2026年9月限时Credits加赠活动,面向个人版专业版、高级版、旗舰版月付用户,推出首月额度翻倍、续费/升级额外加赠1000 Qwen专属Credits的双重算力补贴。完整拆解活动时间窗口、适用边界、加赠额度明细与30天生命周期管理规则,帮助符合条件的用户在窗口期内完成理性订阅决策,低成本从免费体验向AI生产环境平滑迁移。
|
6天前
|
人工智能 Linux 开发者
【2026国内使用】Codex安装过程一篇讲透(Win/Mac/Linux全支持)
Codex是OpenAI推出的AI编程智能体,可读取本地项目、理解需求并自动修改代码。支持桌面GUI、命令行(CLI)及VS Code/Cursor插件三种形态,覆盖可视化操作、终端高效开发与编辑器无缝集成场景,助开发者用自然语言驱动编码全流程。(239字)
【2026国内使用】Codex安装过程一篇讲透(Win/Mac/Linux全支持)
|
1天前
|
缓存 NoSQL 区块链
0.8MB 跑通 Qwen|第 15-2 篇:推理引擎的 prefill 与 decode——两条路径为何分开
本篇详解Qwen推理引擎中prefill与decode双路径设计:prefill一次性处理整段prompt(如18 token),批量写入KV缓存;decode逐token循环生成,追加KV。通过RK3588真机gdb断点实证,明确二者独立入口、状态流转与性能动因,手搓零依赖纯C引擎的核心逻辑。(239字)
|
1天前
|
缓存 调度
聊天记录越长越贵:我的上下文压缩分了七层
Agent 对话越长 token 越贵、模型越迷糊,但压缩本身也有成本。本文附我开源项目 codeAgent 的真实源码:compress_if_needed 分层压缩总调度——从免费的时间清理、L1 裁中间、L2 单条折叠,到最贵的 L4 LLM 摘要,共七层流水线各管一档;L4 还带四套保命机制(9 段式结构化 prompt、PTL 重试、熔断器、预提取记忆替代),摘要请求本身还设计成能命中前缀缓存。
27 0
|
1天前
|
人工智能 开发者
阿里云Token Plan个人版:四个版本区别对比、费用价格、Credits计费用量及问题解答FAQ
阿里云Token Plan个人版含Lite/ Essential/Standard/Pro四档:Lite(¥39,1.15万Credits)适合轻量使用;Essential(¥79)用量翻倍;Standard(¥139,推荐)起赠Harness权益;Pro(¥499)适配高并发与海量调用。权益、额度、并发数逐级提升,详见官网。
|
19小时前
|
人工智能 监控 IDE
Jetbrains 正式官宣:全新AI IDE正式发布!
JetBrains AIR 是全球首个AI原生IDE,定位为“智能体调度台”而非AI供应商。它不内置模型,而是通过ACP协议统一管理Codex、Copilot等第三方智能体,支持多任务并行、实时会话监控、一键子任务与Worktree开发,强调确定性、可审查性与开发者主权。(239字)
|
1天前
|
存储 弹性计算 JSON
把 HelloAGENTS 的项目知识库放进云上开发环境
HelloAGENTS 云上部署指南:明确区分长期知识(进 Git/共享存储)与短时运行时(本地、自动过期),指导 ECS 多机持久化、同步边界、快照策略及安全升级回滚,助团队高效复用项目知识。
23 1