使用AI绘制流程图和UML图
零 前言
事情的起因是苦逼大学生要写实习报告,老师还要求必须附上流程图,但是偷懒是第一生产力,于是聪明的我就研究出了了以下两种方法,其中第二种方法可是有我的很大独创性哦(求夸(●’◡’●))。
方法一是针对懒人的,直接逆向生成,方法二适合于要求高的同学(真棒棒(๑•̀ㅂ•́)و✧).
本教程意在指导读者使用当下流行的大语言模型通过已存在的代码绘制流程图,帮助人们更清晰地了解代码结构。
一 前任载树,后任乘凉
3、2、1,上链接
https://debug996.com/draw/draw.html
又有诗云:
bug九九六
挂号ICU
二 基于大语言模型与Mermaid语法耦合机制的代码可视化流程
扮猪吃老虎🤣👆
2.0、原理解释
当下的主流免费大语言模型的都无法直接输出图片,但是它们的对各种代码语法掌握较好,所以我们可以让AI分析代码,输出流程图的标记型语言Mermaid
,再将输出代码转换为流程图,通过测试,该方法输出的UML图是特别漂亮的,但是流程图时常会出错,这就需要你掌握一丢丢Mermaid语法来debug。
2.1、通过AI获取流程图代码
只要给AI输入提示词:
请使用Mermaid帮我绘制下面代码的流程图
即可获得流程图代码。
我们以以下C++代码为例,
#include <iostream>
using namespace std;
int main() {
int i = 1, sum = 0; //定义参数,sum为所求,i为自增变量
do {
sum = sum + i;
i++;
} while (i <= 10);
cout << sum << endl; //在屏幕上输出结果
}
AI将会输出如下结果:
graph LR;
graph TD
A[开始] --> B[定义 i=1, sum=0]
B --> C[sum = sum + i]
C --> D[i++]
D --> E{ i <= 10? }
E -->|是| C
E -->|否| F[输出 sum]
F --> G[结束]
2.2、将Mermaid语言转换为流程图
你可以在Mermid的在线网站绘制流程图,或者你也可以在vscode里安装Markdown All in One
和Mermaid Preview
获取流程图,就像这样:
不过这里建议你使用另外一个免费软件(也有网页版)drawio,在将流程图导入后你甚至还可以编辑!
2.3、 Mermaid的基本语法
关于Mermaid的教程你可以看这里:Mermaid中文网,这里介绍你可能用得上的:
graph TD;
表示流程图是竖着的,你可以改为graph LR;
使其变为横着的。
真的不点一个赞再走吗🥺