利用AI大模型和Mermaid生成流程图

news/2025/1/14 8:12:30/

核心点1:利用大模型生成流程图的语句(Code)

  1. 确定业务流程

    • 用户需要明确要绘制的业务流程,包括主要步骤、决策点以及各步骤之间的关系。
    • 将确定的业务流程以文字形式描述出来。
  2. 生成Mermaid代码

    • 将描述好的业务流程交给大模型(如ChatGPT),让其生成相应的Mermaid代码。
    • 大模型会根据输入的业务流程描述,自动生成符合Mermaid语法的代码。

例如,假设我们要绘制一个用户登录的业务流程图,内容包括用户登录、检查用户权限、显示内容或权限错误以及用户注销等步骤。描述业务流程如下:

  • 用户登录
  • 检查用户权限
  • 如果权限有效,显示内容;否则显示权限错误
  • 用户可以选择注销

将上述业务流程描述交给ChatGPT,生成如下Mermaid代码:

PlainText

graph TB
A[用户登录]-->B[检查用户权限]
B--权限有效-->C[显示内容]
B--权限无效-->D[显示权限错误]
C-->E[用户操作]

核心点2:利用Mermaid的开源API将Code转换成流程图片

  1. 渲染流程图

    • 将生成的Mermaid代码放入支持Mermaid的环境中,如在线免费网站(Online FlowChart & Diagrams Editor - Mermaid Live Editor),进行渲染生成流程图。
    • 用户可以根据自己的需求对生成的流程图进行调整和优化。
  2. 下载或引用图片

    • 将生成的流程图按照自己需要的格式下载下来,或者直接引用当前图片的链接,将其嵌入到文档中。

Mermaid API的详细使用

Mermaid提供了丰富的API方法,使得在网页中创建和展示各种类型的图表变得非常方便。以下是一些关键步骤:

  • 初始化图表: 使用mermaid.initialize方法可以初始化一个流程图,该方法接受一个可选的配置对象作为参数,用于自定义图表的样式和行为。

  • 添加节点和消息: 使用mermaidAPI.add方法可以向流程图中添加节点或消息。节点定义字符串可以使用-->表示节点之间的连接关系。

  • 渲染图表: 使用mermaidAPI.render方法可以将流程图渲染到指定的元素中。渲染后,图表将自动根据元素的大小进行布局和缩放,以适应不同的屏幕尺寸。

示例代码与流程

以下是一个完整的示例流程,展示了如何使用大模型和Mermaid API生成业务流程图:

  1. 确定业务流程并描述: 例如,用户登录、检查权限、显示内容或权限错误、用户注销等步骤。

  2. 使用大模型生成Mermaid代码: 将业务流程描述交给ChatGPT或其他大模型,生成Mermaid代码。

  3. 在Mermaid环境中渲染: 将生成的Mermaid代码粘贴到支持Mermaid的在线网站(如Online FlowChart & Diagrams Editor - Mermaid Live Editor)中进行渲染。

  4. 下载或引用图片: 根据需要下载生成的流程图图片,或直接引用其链接嵌入到文档中。

注意事项

  • 确保大模型能够准确理解并生成符合Mermaid语法的代码。
  • 根据实际需求调整和优化生成的流程图。
  • 注意Mermaid API的版本兼容性,确保使用的API方法在当前版本中有效。

通过以上步骤,你可以高效地利用大模型和Mermaid实现业务流程图的快速生成,并将其应用于各种文档和项目中。

代码:

# Mermaid Live Editor APIapi_url = "https://mermaid.ink/img/"full_url = f"{api_url}{base64_str}"# 下载图片response = requests.get(full_url)if response.status_code == 200:# 确保目录存在os.makedirs(upload_dir, exist_ok=True)# 保存图片with open(output_path, 'wb') as f:f.write(response.content)print(f"图片已保存到: {output_path}")print(f"访问链接: {full_url}")return output_pathelse:print(f"错误: {response.status_code}")print(f"URL: {full_url}")return None


http://www.ppmy.cn/news/1562984.html

相关文章

IntelliJ IDEA 主题插件

在 IntelliJ IDEA 中,有很多优秀的主题插件可以帮助你改变 IDE 的外观和配色方案,使得开发过程更加愉悦和高效。以下是一些非常受欢迎和实用的 主题插件,以及如何安装和使用它们的步骤: 🌟 流行主题插件推荐 1️⃣ Ma…

Spring Boot启动流程详解与技术探讨

引言 Spring Boot作为一个快速构建Spring应用的框架,以其简洁的配置和强大的自动装配功能,受到了广大Java开发者的青睐。在面试中,Spring Boot的启动流程是一个高频问题,它不仅考察了对Spring Boot框架的理解深度,还涉…

HarmonyOS中实现TabBar(相当于Android中的TabLayout+ViewPager)

参考网址:自定义页签切换联动 1.自定义组件TabBarView Component export struct TabBarView{State currentIndex: number 0State selectedIndex: number 0private controller: TabsController new TabsController()//tab标签内容横线布局Builder tabBuilder(ind…

云原生周刊:Prometheus 3.0 正式发布

开源项目推荐 Achilles-SDK Achilles-SDK 是一个专为构建 Kubernetes 控制器而设计的开源开发工具包。它简化了控制器的开发流程,提供了强大的 API 和高效的抽象层,使开发者能够专注于业务逻辑的实现,而无需处理底层复杂性。Achilles-SDK 支…

基于Springboot + vue实现的厨艺交流平台

🥂(❁◡❁)您的点赞👍➕评论📝➕收藏⭐是作者创作的最大动力🤞 💖📕🎉🔥 支持我:点赞👍收藏⭐️留言📝欢迎留言讨论 🔥🔥&…

nginx-lua模块安装

一.简述 安装 Nginx 的 Lua 模块(通常指的是 ngx_lua 模块)可以显著增强 Nginx 的功能,使其能够执行 Lua 脚本。这使得 Nginx 可以处理更复杂的逻辑和动态内容生成。以下是详细的安装步骤,包括安装 OpenResty 或从源码编译 Nginx…

Python----Python高级(函数)

一、函数基础 1.1、函数的用法和底层分析 函数是可重用的程序代码块。 函数的作用,不仅可以实现代码的复用,更能实现代码的一致性。一致性指的是,只要修改函数的代码,则所有调用该函数的地方都能得到体现。 在编写函数时&#xf…

机器学习头歌(第二部分)

一、朴素贝叶斯简述 任务描述 本关任务:了解朴素贝叶斯的基本概念,完成右侧窗口内的单项选择题。 相关知识 概率的解释 现在我们站在两个统计学派的角度来深入理解什么是概率。 经典统计学认为概率表述的是一件事发生的频率,概率定义为频率…