对负责服务器、发布流水线、监控告警和故障处理的运维或 SRE来说,告警多、脚本杂、变更文档和故障复盘写起来费时,夜间排障时更需要快速理清思路。流程图能让复杂的业务一目了然,但拖拽画图很费时间,修改一次就要重新排版。下面以运维工程师的真实场景为例,演示用 AI 画流程图的完整流程:用文字描述流程,让 AI 生成 Mermaid 代码,粘贴到支持的工具中自动渲染,修改时改文字即可。

场景:运维工程师为什么需要 AI 画流程图

运维工程师需要把“把发布流水线的构建时间缩短约三分之一”的处理流程画出来,用于新人培训或和技术负责人对齐。流程里有判断分支和异常处理,用画图软件拖来拖去很费劲。而且运维工程师手上通常同时压着“演练数据库主从切换”之类的事情,如果每次都从零开始,很容易顾此失彼。

用什么工具

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

举个例子

下面这个例子是虚构的:小吴遇到的难题是“机房网络计划维护,可能影响夜间批处理任务”。为了不让它拖慢“更新 Nginx 配置模板”的进度,小吴决定借助 AI 画流程图。第一次只写了一句简单的要求,结果很空泛;第二次把对象(技术负责人)、目的和限制条件都写清楚,输出就可用多了。这也是本文提示词模板要把背景写全的原因。

具体怎么做

  1. 用文字描述流程:开始、每一步、判断条件、结束
  2. 让 AI 生成 Mermaid 代码并检查语法
  3. 粘贴到支持的工具中预览
  4. 发现问题时修改文字描述重新生成

提示词示例

把方括号和括号里的内容换成你自己的信息即可:

【背景】最近在处理“更新 Nginx 配置模板”,同时要准备“演练数据库主从切换”。
请把下面的流程转换成 Mermaid 流程图代码(flowchart TD)。

流程:把发布流水线的构建时间缩短约三分之一
1. 收到需求后,先判断信息是否完整
2. 不完整:退回补充,补充后重新判断
3. 完整:进入处理,由运维工程师执行
4. 处理完成后提交技术负责人确认
5. 确认通过:归档结束;不通过:返回修改

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

AI 输出示例(示意)

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

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

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

拿到类似的结果后,小吴的做法是先核对事实和数字,再结合“演练数据库主从切换”的安排调整重点,最后才对外使用。

避坑指南

  • 分支太多时,拆成主流程和子流程两张图。
  • 让 AI 检查流程是否有“死循环”或没有出口的分支。
  • 画完后对照实际流程走一遍,确认没有遗漏。

给运维工程师的特别提醒

让 AI 写的命令先在测试环境执行,并要求它说明每个参数的作用。另外,涉及删除、重启、改权限的命令,必须先确认影响范围并做好回滚准备,不能照抄执行。

一个容易被忽略的习惯:排障时把日志片段、时间线和最近变更一起提供,让 AI 帮你列排查顺序。

还可以这样用

  • 时序图:描述系统或人员之间的交互顺序。
  • 甘特图:把项目计划转成 Mermaid gantt 代码。

相关阅读