ChatGPT + PlantUML = 不用画图了

PlantUML是一个通用性很强的工具,可以快速、直接地创建各种图表。利用简单直观的语言,用户可以毫不费力地绘制各种类型的图表。支持序列图、用例图、类图、对象图、活动图、组件图、部署图、状态图、时序图。

「毫不费力」这个特点非常有吸引力,当然没那么夸张,还是要费点力气的。它有自己的一套语法,类似于写代码的方式表示各个实体之间的关系、指示要生成哪种类型的图。用过 Markdown 的一下就能理解。

举个例子,下面的代码可以表示 Client 向 Server 发送 Hello。

@startuml
!theme materia-outline
Client -> Server : Hello
@enduml

如果你想自己用它的语法规则,通过写代码的方式画图,可以到官网 https://plantuml.com/zh/ 上学习一下语法。

可以直接在 PlantUML 在线环境上运行

https://www.plantuml.com/plantuml/uml/SyfFKj2rKt3CoKnELR1Io4ZDoSa70000

上方写代码,下面就直接生成对应的 UML 图了,可以调整样式,可以下载各种格式的图片。

也可以在本地安装运行,支持 Java 包运行,也支持 Docker 。

另外,像 VSCode 这些编辑器或者一些笔记软件都有对应的插件支持,可以搜索安装。

ChatGPT + PlantUML

如果你还是觉得不够「毫不费力」,那可以让 ChatGPT 直接生成给你。

打开 ChatGPT ,在「探索 GPT」里面可以搜索 “PlantUML Diagram Wizard”,这个应用是专门用来帮你画 PlantUML 的,但是使用的话需要 GPT-4o,如果超过最大限制,则需要开通 plus 才能用,有实力的同学可以用这个。

不用它也完全可以,我就直接用的免费版 ChatGPT-3.5,效果也没有问题。除此之外,用 Kimi 等大模型应该也问题不大。

那应该怎么给 ChatGPT 提示词呢?

  1. 首先你必须知道你要画的是什么类型的图,序列图、用例图、类图、对象图、活动图、组件图、部署图、状态图、时序图,类型关键词必须准确给到 GPT。
  2. 描述要清晰,这是必须的,就像你解释给别人一样,只不过 GPT 的理解能力更强一些。
  3. 如果有代码的话,必要情况下给一些解释。

下面我举几个例子,不一定是最好的,但是基本上能解决问题。

用 ChatGPT 怎么做呢?

第一步就是将代码给到 ChatGPT。这一步要看你的代码量有多少,如果代码量不多的话,可以一次性都给它,如果多的话,ChatGPT 的输入token 是有限制的,就要分批次告诉它。

第一步 prompt:接下来我会发给你几个 java 文件,在我告诉你开始画图之前,你只需要记住文件的内容就好了。之后GPT会表示明白了,请你发送文件内容。

第二步:将你要画的文件一个个的输送给 GPT。

第三步:好了,请帮我生成 PlantUML 格式的类图,请开始画图吧

然后 GPT 就会输出一个 PlantUML 代码段。


Posted

in

by

Tags:

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *