【AIGC X UML 落地】通过多智能体实现自然语言绘制UML图

前天写了篇博文讲到用PlantUML来绘制C++类图和流程图。后台有读者留言,问这步能否自动化生成,不想学习 PlantUML 语法。

我想了下,发现这事可行,确实可以做到通过自然语言的描述就能实现 UML图的绘制,昨天晚上加了个班到凌晨,做了两个智能体,确实可以实现,效果还不错。

今天抽空把这篇文章写了,算是告诉读者如何去使用那两个智能体,直接通过自然语言对话的形式来快速画 UML 图,解决掉学习新语言的门槛。

如果还没读过前文的读者可以去看下:
👇👇👇👇👇
用PlantUML描绘C++世界:通过文本描述精准控制UML图的生成
👆👆👆👆👆

进入正题

话不多说,我们进入正题。
这两个智能体分别是:
在这里插入图片描述
在这里插入图片描述
通过名字,大家其实很容易看出这两个的区别。

  • 前者 UML 图片生成大师 主要服务于完全不想了解 PlantUML 的使用者,直接进行自然语言描述,就可以生成图片。优点很明显,就是通过聊天就能生成UML图片,不用太多的关注工具的绘制和语言的编写;自然的,也有弊端,就是格式定死了,不能干涉UML图片样式的生成。
  • 为了满足使用者更精细的控制生成UML的效果,就做了 标准 PlantUML 语句自动生成器,其可以先通过自然语言与智能体进行对话,生成标准的PlantUML 语句,自己可以觉得语句上又要修改的,可以进行修改,然后在这个网址上进行生成:https://www.plantuml.com/plantuml/uml/SyfFKj2rKt3CoKnELR1Io4ZDoSa70000。

好,了解了这些之后,我们分别来看下如何使用:

UML 图片生成大师的使用介绍

根据代码生成类图

在这里插入图片描述
在这里插入图片描述
点开图片看全图:
在这里插入图片描述

根据自然语言生成派生图

在这里插入图片描述
点开图片看全图:
在这里插入图片描述

根据给定代码生成状态图

在这里插入图片描述
在这里插入图片描述
点开图片查看全图:
在这里插入图片描述

除了上述介绍的这三点,由于篇幅原因,再次就不在介绍,大家可以在智能体上自己使用体验下。

当然了,有些用户肯定想进行更精细的控制,那我们就把它分为两步:

  1. 生成 PlantUML 语句
  2. 修改语句后,在生成图片

前者,我们可以借助下面的工具描述,后者可在 PlantUML的在线窗口中生成器。

标准 PlantUML 语句自动生成器的使用介绍

对这块基本上该智能体的能力上限由 PlantUML 的能力所决定。PlantUML 能做什么事情,该智能体就能做。

在此就仅举三例作为抛砖引玉,更多功能,欢迎使用者在用智能体的时候去体验。

根据自然语言描述生成派生图的标准语句。

在这里插入图片描述
在这里插入图片描述

根据给定代码生成类图

在这里插入图片描述
在这里插入图片描述

标准 PlantUML 语法解释

在这里插入图片描述

体验地址 && 后记

【1】UML 图片生成大师
【2】标准 PlantUML 语句自动生成器

大家在使用中有什么问题,或是想添加更多能力,欢迎私信联系!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/342419.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

统信UOS SSH服务升级(ubuntu20)内网

服务器配置 系统信息 SSH版本 目标版本 openssh-server_8.2p1-4_arm64.deb 因为不通互联网,所以所有deb包需要手动下载(可以连接互联网的可以自动忽略手动下载deb步骤,直接apt-get install xxx 即可) 升级步骤 !!!deb下载方式…

在Jenkins 中使用 NVM 管理 Node.js 部署项目的自动化脚本

在Jenkins 中使用 NVM 管理 Node.js 部署项目的自动化脚本 人生旅途,总有人不断地走来,有人不断地离去。当新名字变成老名字,当老的名字渐渐模糊,又是一个故事的结束和另一个故事的开始。 在现代软件开发中,持续集成/持…

Windows11下Docker使用记录(五)

目录 准备1. WSL安装cuda container toolkit2. win11 Docker Desktop 设置3. WSL创建docker container并连接cuda4. container安装miniconda(可选) Docker容器可以从底层虚拟化,使我们能够在 不降级 CUDA驱动程序的情况下使用 任何版本的CU…

支付宝小众玩法 爱溜达的人不容错过

创建一个简单的程序来帮助用户管理他们的图片,例如筛选分辨率合适、尺寸适中的图片来准备上传,这是一个技术上合理且有益的方向。例如,一个Python脚本使用Pillow库来检查文件夹中图片的尺寸: from PIL import Image import os# 根…

可视化数据科学平台在信贷领域应用系列五:零代码可视化建模

信贷风控模型是金融机构风险管理的核心工具,在信贷风险管理工作中扮演着至关重要的角色。随着信贷市场的环境不断变化,信贷业务的风险日趋复杂化和隐蔽化,开发和应用准确高效的信贷风控模型显得尤为重要。信贷风险控制面临着越来越大的挑战和…

【MySQL数据库】:MySQL内外连接

目录 内外连接和多表查询的区别 内连接 外连接 左外连接 右外连接 简单案例 内外连接和多表查询的区别 在 MySQL 中,内连接是多表查询的一种方式,但多表查询包含的范围更广泛。外连接也是多表查询的一种具体形式,而多表查询是一个更…

React-生成随机数和日期格式化

生成随机数 uuid文档:https://github.com/uuidjs/uuid npm install uuid import {v4 as uuidV4} from uuid 使用: uuidV4() 日期格式化 dayjs文档:安装 | Day.js中文网 npm install dayjs import dayjs from dayjs

LCTF 2018 bestphp‘s revenge

考点:Soap原生类Session反序列化CRLF注入 <?php highlight_file(__FILE__); $b implode; call_user_func($_GET[f], $_POST); session_start(); if (isset($_GET[name])) { $_SESSION[name] $_GET[name]; } var_dump($_SESSION); $a array(reset($_…

MySQL学习——选项文件的使用

MySQL 的许多程序都可以从选项文件&#xff08;有时也被称为配置文件&#xff09;中读取启动选项。选项文件提供了一种方便的方式来指定常用的选项&#xff0c;这样你就不必每次运行程序时都在命令行上输入这些选项。 要确定一个程序是否读取选项文件&#xff0c;你可以使用 -…

vim编辑器的使用

vim编辑器 1 vim编辑器三种常见模式2 命令模式2.1 移动光标的操作2.2 对数据操作2.3 查找函数 3 底行模式3.1 不退出vim进行操作3.2 与文件进行对比 4 vim的补充知识4.1 vim的批量化注释4.2 vim窗口的非正常关闭 5 vim的配置6 配置sudoer文件 1 vim编辑器三种常见模式 我们在编…

AMD显卡和英伟达显卡哪个好?

显卡是计算机中负责处理图形和视频输出的硬件设备&#xff0c;主要分为两种类型&#xff1a;AMD的A卡和NVIDIA的N卡。那么AMD显卡和英伟达显卡哪个好&#xff1f;怎么选&#xff1f; 答&#xff1a;不能一概而论地说哪个好&#xff0c;因为它们各有优势&#xff0c;选择应基于…

【Python报错】已解决ModuleNotFoundError: No module named ‘packaging’

成功解决“ModuleNotFoundError: No module named ‘packaging’”错误的全面指南 在Python编程中&#xff0c;遇到ModuleNotFoundError: No module named packaging这样的错误&#xff0c;通常意味着你的Python环境中缺少名为packaging的模块&#xff0c;或者该模块没有被正确…

Docker笔记-解决非交互式运行python时print不输出的问题

换句话来说就是在docker中如何不会python的print 只需要在启动时&#xff0c;不让python缓冲其输出。 关键命令如下&#xff1a;PYTHONUNBUFFERED1 如下&#xff1a; docker run -e PYTHONUNBUFFERED1 <your_image> 下面解释下-e "-e"选项的全称是"…

DDMA信号处理以及数据处理的流程---DDMA原理介绍

Hello&#xff0c;大家好&#xff0c;我是Xiaojie&#xff0c;好久不见&#xff0c;欢迎大家能够和Xiaojie一起学习毫米波雷达知识&#xff0c;Xiaojie准备连载一个系列的文章—DDMA信号处理以及数据处理的流程&#xff0c;本系列文章将从目标生成、信号仿真、测距、测速、cfar…

IT学习笔记--Flink

概况&#xff1a; Flink 是 Apache 基金会旗下的一个开源大数据处理框架。目前&#xff0c;Flink 已经成为各大公司大数据实时处理的发力重点&#xff0c;特别是国内以阿里为代表的一众互联网大厂都在全力投入&#xff0c;为 Flink 社区贡献了大量源码。 Apache Flink 是一个…

微信小程序uniapp的父子之间的通信传递

1.父传递给子信息 my-test是子组件 demo是父组件 这是定义在父组件中的的info信息 要将这个传递给子组件 子组件在properties 中接收父组件传递来的数据 msg type 是类型 value是默认值&#xff0c;当父组件没有传递数据时&#xff0c;就会默认使用value的数据 子组件…

JavaScript html css前端 日期对象 date对象 日期格式化 时间戳

日期对象 Date对象 Date 对象和 Math 对象不一样&#xff0c;他是一个构造函数&#xff0c;所以我们需要实例化后才能使用 Date 实例用来处理日期和时间 Date()使用方法 示例&#xff1a;获取当前时间 let now new Date() console.log(now) 示例&#xff1a;获取指定时间…

LabVIEW液压伺服压力机控制系统与控制频率选择

液压伺服压力机的控制频率是一个重要的参数&#xff0c;它直接影响系统的响应速度、稳定性和控制精度。具体选择的控制频率取决于多种因素&#xff0c;包括系统的动态特性、控制目标、硬件性能以及应用场景。以下是一些常见的指导原则和考量因素&#xff1a; 常见的控制频率范…

Vscode发生鼠标悬停正在加载、无法跳转和提示词的问题

Vscode发生鼠标悬停正在加载、无法跳转和提示词的问题 查看python语言服务器的日志&#xff0c;确定问题。 我的问题是加载的vscode 目录下存在一个很大的数据集目录&#xff0c;导致无法正常工作。 解决办法&#xff1a; 在vscode的pylance设置中&#xff0c;排除对应的目…

【WP】猿人学_13_入门级cookie

https://match.yuanrenxue.cn/match/13 抓包分析 抓包分析发现加密参数是cookie中有一个yuanrenxue_cookie 当cookie过期的时候&#xff0c;就会重新给match/13发包&#xff0c;这个包返回一段js代码&#xff0c;应该是生成cookie的 <script>document.cookie(y)(u)(a…