【软件架构】使用ChatGPT和PlantUML的思维导图
视频号
微信公众号
知识星球
在我之前的关于将Mermaid.js与ChatGPT一起使用以构建系统图的系列文章(第1部分和第2部分)中,我们研究了ChatGPT构建序列、活动、状态和C4模型的能力。
我有兴趣进一步探索这一点,下面是我关于使用PlantUML使用ChatGPT构建更复杂的图的下一个系列
PlantUML允许您根据文本描述创建广泛的图表。在目前的状态下,除了所有UML图之外,它还可以支持甘特图、思维导图、概念图等
我对构建思维导图特别感兴趣,所以这是我关于PlantUML系列的第一篇文章。我与ChatGPT的交互,并使用它与PlantUML创建思维导图
思维导图简介
Prompt: What's a mindmap
ChatGPT: A mind map represents ideas or information organized around a central concept or key idea. Mind maps are often used to visually organize information and create a clear structure for thoughts and concepts. The nodes in a mind map can branch out to show relationships between ideas. They can be colour-coded, labelled with icons, or annotated with text to clarify the relationships further. Mind maps are commonly used in note-taking, brainstorming, problem-solving, and decision-making, as they help to capture and organize thoughts visually and intuitively.
基本思维导图
Prompt: Okay, Let's start by creating a simple MindMap on the topic of
Artificial Intelligence
Can you give the mindmap inPlantUML
format. Keep it structured from the core central topic branching out to other domains and sub-domains. Let's go to 4 levels to begin with. Add the start and end mindmap tags and keep it expanding on one side for now
ChatGPT: Sure, here's a simple mind map of the topic "Artificial Intelligence" in PlantUML format, with four levels
@startmindmap * Artificial Intelligence ** AI Technologies *** Machine Learning **** Supervised Learning **** Unsupervised Learning **** Reinforcement Learning *** Natural Language Processing (NLP) **** Sentiment Analysis **** Part-of-Speech Tagging **** Named Entity Recognition @endmindmap
为了将其可视化,让我们打开draw.io或diagrams.net,然后转到
排列->插入->高级->PlantUML
并粘贴上面的片段
opening plantUML diagrams in draw.io
下面是可视化
凉的我们有思维导图!!
让我们试着调整一些设置。
提高级别
Prompt: Can you increase it by two more levels and add further domains
ChatGPT: Sure, here's the expanded mind map of the topic "Artificial Intelligence" in PlantUML format, with six levels:
@startmindmap * Artificial Intelligence ** AI Technologies *** Machine Learning **** Supervised Learning ***** Regression ***** Classification **** Unsupervised Learning ***** Clustering ***** Association Rules **** Reinforcement Learning *** Natural Language Processing (NLP) **** Sentiment Analysis ***** Polarity Analysis ***** Emotion Analysis **** Part-of-Speech Tagging **** Named Entity Recognition ** AI Applications *** Computer Vision **** Object Recognition **** Image Segmentation *** Robotics **** Navigation **** Manipulation *** Speech Recognition **** Speaker Verification **** Speech Synthesis @endmindmap
添加颜色代码
接下来,让我们为我们的思维导图添加颜色代码。
注意:我必须提供提供颜色代码的语法,因为ChatGPT可能使用了一个旧的语法,该语法在预处理时破坏了plantUML代码
Prompt: Can you add colour codes to the above mind map? Use the format
*[#FFFF00] Artificial Intelligence
. The above is just an example; use your colour codes for each node based on the complexity of each node in terms of the time it takes to learn that topic for a beginnerChatGPT: Here's an updated version of the mindmap, with colour codes indicating the complexity of each topic
@startmindmap
*[#red] Artificial Intelligence
**[#red] AI Technologies
***[#orange] Machine Learning
****[#orange] Supervised Learning
*****[#yellow] Regression
*****[#yellow] Classification
****[#orange] Unsupervised Learning
*****[#yellow] Clustering
*****[#yellow] Association Rules
****[#orange] Reinforcement Learning
***[#orange] Natural Language Processing (NLP)
****[#yellow] Sentiment Analysis
*****[#green] Polarity Analysis
*****[#green] Emotion Analysis
****[#yellow] Part-of-Speech Tagging
****[#yellow] Named Entity Recognition
**[#red] AI Applications
***[#orange] Computer Vision
****[#yellow] Object Recognition
****[#yellow] Image Segmentation
***[#orange] Robotics
****[#yellow] Navigation
****[#red] Manipulation
***[#orange] Speech Recognition
****[#yellow] Speaker Verification
****[#yellow] Speech Synthesis
@endmindmap
和表示
但是这些颜色是什么意思?让我试着找到一个传奇
Prompt: can you create a PlantUML legend for the colour codes above? Mark them against the time duration based on which the colours were selected
ChatGPT: Here is a PlantUML legend for the colour codes, indicating the time duration for a beginner to learn each topic:
legend - Green: Topics that can be learned in less than a week (around 10-20 hours of study) - Yellow: Topics that take a few weeks to a month to learn (around 30-50 hours of study) - Orange: Topics that take a few months to learn (around 100-150 hours of study) - Red: Topics that require substantial effort and time to learn (around 200-300 hours or more of study) endlegend
和在draw.io中导入
太好了,我们有一个带有颜色代码的思维导图和一个相应的图例,其中包含每个颜色代码的描述。
添加图标
接下来,让我们尝试将图标添加到我们的思维导图中
注意:我必须提供提供图标的语法,因为ChatGPT可能使用了一种旧的语法,它在预处理时破坏了plantUML代码
Prompt: Can you add icons to the above MindMap using plantUML-supported icons from the open iconic library? The format for usage is as
*[#red] <&star> Manipulation
. The above is an example of a red colour node and start icon from the open iconic library. Keep the same colour codes as above but use relevant icons as appropriate
ChatGPT:@startmindmap *[#red] <&home> Artificial Intelligence **[#red] <&aperture> AI Technologies ***[#orange] <&puzzle-piece> Machine Learning ****[#orange] <&tag> Supervised Learning *****[#yellow] <&code> Regression *****[#yellow] <&circle-check> Classification ****[#orange] <&dashboard> Unsupervised Learning *****[#yellow] <&list> Clustering *****[#yellow] <&tag> Association Rules ****[#orange] <&pulse> Reinforcement Learning ***[#orange] <&cog> Natural Language Processing (NLP) ****[#yellow] <&pulse> Sentiment Analysis *****[#green] <&arrow-top> Polarity Analysis *****[#green] <&eye> Emotion Analysis ****[#yellow] <&tag> Part-of-Speech Tagging ****[#yellow] <&bookmark> Named Entity Recognition **[#red] <&aperture> AI Applications ***[#orange] <&image> Computer Vision ****[#yellow] <&target> Object Recognition ****[#yellow] <&crop> Image Segmentation ***[#orange] <&code> Robotics ****[#yellow] <&map-marker> Navigation ****[#red] <&star> Manipulation ***[#orange] <µphone> Speech Recognition ****[#yellow] <&person> Speaker Verification ****[#yellow] <&audio> Speech Synthesis @endmindmap
和代表
这些图标看起来并不都合适,但至少是ChatGPT根据主题映射关闭图标的一次非常好的尝试。
进入下一步
添加说明
Prompt: Can you add a definition to only the leaf nodes? These definitions should be word-wrapped using PlantUML format and not have a surrounding box. Keep the Icons and Colors of the nodes as-is, and add additional description nodes to all leaf nodes. The format for adding leaf nodes is
****_ description
ChatGPT:
@startmindmap *[#red] <&home> Artificial Intelligence **[#red] <&aperture> AI Technologies ***[#orange] <&puzzle-piece> Machine Learning ****[#orange] <&tag> Supervised Learning *****[#yellow] <&code> Regression ******_ A statistical approach to finding the relationship between a dependent and one or more independent variables. *****[#yellow] <&circle-check> Classification ******_ The task of categorizing a set of data into classes based on their features. ****[#orange] <&dashboard> Unsupervised Learning *****[#yellow] <&list> Clustering ******_ A method of organizing a set of data into groups (clusters) based on their similarities. *****[#yellow] <&tag> Association Rules ******_ A statistical approach for finding relationships between variables in large datasets. ****[#orange] <&pulse> Reinforcement Learning *****_ An area of machine learning that focuses on training an agent to make a sequence of decisions by maximizing a reward. ***[#orange] <&cog> Natural Language Processing (NLP) ****[#yellow] <&pulse> Sentiment Analysis *****[#green] <&arrow-top> Polarity Analysis ******_ A method of identifying the sentiment expressed in a text as positive, negative, or neutral. *****[#green] <&eye> Emotion Analysis ******_ The task of detecting and classifying emotions in text or speech. ****[#yellow] <&tag> Part-of-Speech Tagging *****_ The task of marking each word in a sentence with its corresponding part of speech, such as noun, verb, adjective, etc. ****[#yellow] <&bookmark> Named Entity Recognition *****_ A NLP technique that identifies named entities in a text, such as organizations, people, locations, etc. **[#red] <&aperture> AI Applications ***[#orange] <&image> Computer Vision ****[#yellow] <&target> Object Recognition *****_ The task of recognizing objects in images or videos based on their features and attributes. ****[#yellow] <&crop> Image Segmentation *****_ The process of dividing an image into multiple segments or regions, each of which corresponds to a different object or part of the image. ***[#orange] <&code> Robotics ****[#yellow] <&map-marker> Navigation *****_ The task of guiding a robot from one place to another. ****[#red] <&star> Manipulation *****_ The task of manipulating objects in the environment using a robot. ***[#orange] <µphone> Speech Recognition ****[#yellow] <&person> Speaker Verification *****_ The task of verifying the identity of a speaker based on their speech. ****[#yellow] <&audio> Speech Synthesis *****_ The task of generating speech from text. @endmindmap
and the representation
就在这里。用ChatGPT制作的复杂思维导图,用图例、图标和描述性进行颜色编码。
感谢阅读!
- 179 次浏览