对每天写业务代码、修线上问题、参加评审的后端或全栈开发来说,真正写代码的时间常被排查问题、写文档和同步进度挤占,很多重复性的文字和样板代码其实可以交给 AI 起草。流程图能让复杂的业务一目了然,但拖拽画图很费时间,修改一次就要重新排版。下面以程序员的真实场景为例,演示用 AI 画流程图的完整流程:用文字描述流程,让 AI 生成 Mermaid 代码,粘贴到支持的工具中自动渲染,修改时改文字即可。

典型场景

程序员需要把“修复支付回调偶发超时问题”的处理流程画出来,用于新人培训或和技术负责人对齐。流程里有判断分支和异常处理,用画图软件拖来拖去很费劲。

推荐工具

对话助手负责生成 Mermaid 代码,Typora、Obsidian、Notion、飞书文档、语雀以及 Mermaid 在线编辑器都能渲染;draw.io 也支持导入 Mermaid。

一个虚构的例子

先看一个虚构但很典型的例子。小李是一位每天写业务代码、修线上问题、参加评审的后端或全栈开发,这周手头的事情包括“修复支付回调偶发超时问题”和“上线订单服务灰度”,偏偏这时又需要画流程图。小李没有从空白页开始,而是先花几分钟把相关材料整理好,按下面的提示词交给 AI,拿到初稿后对照原始资料逐条核对,再补上自己的判断。整个过程中,小李特别留意不把密钥、内网地址、数据库连接串和用户数据放进对话里。

分步操作

  1. 用文字描述流程:开始、每一步、判断条件、结束
  2. 说明需要的方向(从上到下或从左到右)
  3. 让 AI 生成 Mermaid 代码并检查语法
  4. 发现问题时修改文字描述重新生成

可复用的提示词

下面的提示词可以直接复制,按程序员的实际情况替换细节:

【背景】身份:每天写业务代码、修线上问题、参加评审的后端或全栈开发;平时主要和业务方同事和技术负责人打交道。
请把下面的流程转换成 Mermaid 流程图代码(flowchart TD)。

流程:修复支付回调偶发超时问题
1. 收到需求后,先判断信息是否完整
2. 不完整:退回补充,补充后重新判断
3. 完整:进入处理,由程序员执行
4. 处理完成后提交技术负责人确认
5. 确认通过:归档结束;不通过:返回修改

要求:判断节点用菱形,节点文字简短,只输出代码,并在代码后说明如何修改节点文字。

示例输出(仅供示意)

示例输出如下(虚构内容,仅演示 AI 大致会给出什么样的结果):

flowchart TD
    A[收到需求] --> B{信息完整?}
    B -- 否 --> C[退回补充]
    C --> B
    B -- 是 --> D[执行处理]
    D --> E[提交确认]
    E --> F{确认通过?}
    F -- 是 --> G[归档结束]
    F -- 否 --> D

修改方法:方括号 [ ] 中是普通节点文字,花括号 { } 中是判断节点文字,直接修改即可;箭头上的文字写在 – 和 –> 之间。

注意示例中所有内容都是虚构的。实际使用时,AI 的输出质量取决于你提供的材料是否完整、要求是否具体。

实用技巧与常见坑

  • 节点文字里有括号、引号等特殊符号时,Mermaid 可能报错,可以让 AI 用引号包裹。
  • 让 AI 检查流程是否有“死循环”或没有出口的分支。

给程序员的特别提醒

把报错堆栈、相关代码片段和运行环境版本一起贴给 AI,比只描述现象有效得多。另外,AI 生成的代码必须经过本地运行、测试和代码评审,不要直接合入主干。

再补充一条经验:让 AI 先解释思路再给代码,便于你判断方向对不对。

变体用法

  • 时序图:描述系统或人员之间的交互顺序。
  • 状态图:描述订单、工单等对象的状态变化。

相关阅读