向AI转型的程序员都关注公众号 机器学习AI算法工程
DeepSeek可以生成文本数据,如果需要制作图表,则需要与其他的一些工具相互配合。这些工具中有大家所熟知的Visio、http://draw.io等。http://draw.io是一款开源免费的图表制作工具,作者《大模型实战:多领域应用开发》和《大模型实战:Agent开发与应用》两本书中的插图,就全部是用http://draw.io制作的。关于DeepSeek与http://draw.io相配合制作图表的方法,网上已有一些方法,但问题比较多,稳定性也比较差。现介绍一种简单、稳定、图表样式多、功能强大的AI制图方法。
一、原理
原理很简单:用提示词(业务需求+格式举例)生成XML文件
。
二、制作过程
制作过程细分为4步,其中第一步要注意一下,其他步都是大家日常使用频率很高的操作,只是点一下鼠标而已,一点也不麻烦。
1、准备提示词
在一些文章介绍的方法中,生成的图表往往效果不佳,表现为结果发散、样式不美观、后期修改工作量大等,主要原因还是提示词过于简单,本例中,提示词不但要包括具体业务需求,还要举个生成格式的例子,这样出来的结果不但贴近需求,也比较美观。提示词举例如下:
我现在需要一个CRM系统的部署架构图,使用WEB结构,K8S
部署。
请直接帮我用draw.io默认的文件格式生成,输出的XML可以直接用draw.io工具装载。XML的格式举例如下:
<?xml version="1.0" encoding="UTF-8"?>
<mxfile host="app.diagrams.net" page="1">
<diagram name="分页名称">
<mxGraphModel dx="1428" dy="849" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1169" pageHeight="827" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="nq-HUVbVELaHH7V7m82m-1" value=" 前端层" style="rounded=0;whiteSpace=wrap;html=1;fontSize=16;strokeColor=#82b366;fillColor=#d5e8d4;align=left;verticalAlign=top;fontStyle=1" vertex="1" parent="1">
<mxGeometry x="170" y="60" width="670" height="140" as="geometry" />
</mxCell>
<mxCell id="nq-HUVbVELaHH7V7m82m-3" value="WEB门户" style="dashed=0;outlineConnect=0;html=1;align=center;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;shape=mxgraph.weblogos.html5;fontSize=14;strokeColor=default;" vertex="1" parent="1">
<mxGeometry x="360" y="90" width="52.400000000000006" height="74" as="geometry" />
</mxCell>
<mxCell id="nq-HUVbVELaHH7V7m82m-4" value="移动应用" style="html=1;verticalLabelPosition=bottom;align=center;labelBackgroundColor=none;verticalAlign=top;strokeWidth=2;strokeColor=#0080F0;shadow=0;dashed=0;shape=mxgraph.ios7.icons.smartphone;fontSize=14;" vertex="1" parent="1">
<mxGeometry x="520" y="104" width="40" height="60" as="geometry" />
</mxCell>
<mxCell id="nq-HUVbVELaHH7V7m82m-5" value="管理后台" style="aspect=fixed;perimeter=ellipsePerimeter;html=1;align=center;shadow=0;dashed=0;spacingTop=3;image;image=img/lib/active_directory/home_page.svg;fontSize=14;strokeColor=default;labelBackgroundColor=none;" vertex="1" parent="1">
<mxGeometry x="670" y="95.75" width="69.44" height="62.5" as="geometry" />
</mxCell>
<mxCell id="nq-HUVbVELaHH7V7m82m-6" value=" 应用层" style="rounded=0;whiteSpace=wrap;html=1;fontSize=16;strokeColor=#d79b00;fillColor=#ffe6cc;align=left;verticalAlign=top;fontStyle=1" vertex="1" parent="1">
<mxGeometry x="170" y="210" width="670" height="130" as="geometry" />
</mxCell>
<mxCell id="nq-HUVbVELaHH7V7m82m-8" value="认证服务" style="verticalLabelPosition=bottom;shadow=0;dashed=0;align=center;html=1;verticalAlign=top;strokeWidth=1;shape=mxgraph.mockup.containers.userMale;strokeColor=#666666;strokeColor2=#008cff;labelBackgroundColor=none;fontSize=14;" vertex="1" parent="1">
<mxGeometry x="317.5" y="240" width="50" height="50" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>
注意:mxCell元素
的属性不能重复定义
2、用DeepSeek生成XML
使用DeepSeek R1、DeepSeek V3或其他大模型,输入以上提示词,生成的XML内容保存成文件。
3、校验XML文件
生成的XML格式依赖于模型的能力,有可能格式会有问题,双击XML文件,用浏览器打开此文件,查看是否报错,如果文件以层级显示,则没有问题,如有报错,则需要手动修改XML文件。有问题的情况多发生在用Ollama在本地部署的量化模型服务时出现,DeepSeek的在线服务不会有问题。
用http://draw.io软件打开此XML文件,再进行修改加工就可以了。
三、高级应用
按以上提示词格式,生成图表的样式比较固定,如果需要更多样式,可以采用以下方法。
1、下载http://draw.io的源码
gitclonehttps://github.com/jgraph/drawio-diagrams
在examples目录下找到合适的例子,然后通过“文件->导出->XML”导出成XML文件。
2、准备提示词
提示词中举例的部分,就按以上例子中的XML的内容设定。一般大模型的输入窗口都超过了8K,所以提示词不要超过8K就行了,太长的话,中间删除些内容即可。下图是以infographic-project-steps.drawio为例的生成结果:
除了上述方法
这年头谁还人工画图啊?我用 AI 几十秒就搞定了。
这个最近大火的 AI 画图神器,完全免费开源,短短几天就涨了 6k star,值得收藏!
开源指路:https://github.com/DayuanJiang/next-ai-draw-io
这个项目支持在线体验,你可以完全从 0 开始画图,比如画一个流程图,演示 RAG 的工作原理。
⭐️ 建议观看视频演示:https://bilibili.com/video/BV18NmnB4EeM
AI 会自动生成 Draw.io 绘图代码,很快精美的流程图就搞定了!
然后你可以利用 Draw.io 自身强大的绘图能力手动修改任意元素、或者是改变风格样式。
也可以通过 AI 对话让它帮你修改,比如改成动画连接线,逼格一下子就上来了。
还有程序员工作涉及的架构图:
提示词:绘制电商平台的微服务架构图
UML 类图:
提示词:用 UML 类图展示用户管理模块的设计
ER 图:
提示词:绘制在线教育平台的数据库 ER 图
时序图:
提示词:用时序图展示用户登录的交互过程
知识讲解图:
提示词:用动画演示冒泡排序的执行过程
甚至是沙雕图:
提示词:让程序员鱼皮卑微地求用户点赞
这些通通不在话下,帮你节省大把的时间和毛发~
还有一些使用小技巧,比如配合免费的图标库,让整个绘图元素更丰富。
提示词:使用 AWS 图标生成 CDN 架构图
可以使用原生 SVG 动画标签,给整个绘图增加缩放和路径动画(不过支持的动画很有限)。
提示词:演示 DDOS 攻击,使用 SVG 的 和 增加缩放和路径动画
还可以自己上传一个草图,比如我用文本模型生成的 Mermaid 流程图,让 AI 帮我替换为更美观的样式风格。
提示词:改为彩虹主题的配色、放大字体、使用加粗动画连接线
效果还不错吧!
最后导出为各种图片或文档格式,美滋滋~
注意,官方提供的演示网站可能限量和不稳定,像我连续用了几次就被拒绝了:
所以我建议下载开源代码到本地,按照官方文档的说法 配置自己的大模型 来运行;或者用 Docker 一键启动,想怎么用就怎么用。
最后多说两句,这个项目的实现其实并不复杂。作者通过集成 Vercel AI SDK 轻松对接各种大模型,让 AI 生成 draw.io 能理解的 XML 代码,然后直接使用开源的 draw.io 代码实现了核心的绘图展示和编辑能力,整个过程和 AI 生成网站是类似的。
你学会了吗?
机器学习算法AI大数据技术
搜索公众号添加: datanlp
长按图片,识别二维码
阅读过本文的人还看了以下文章:
整理开源的中文大语言模型,以规模较小、可私有化部署、训练成本较低的模型为主
基于40万表格数据集TableBank,用MaskRCNN做表格检测
《深度学习入门:基于Python的理论与实现》高清中文PDF+源码
2019最新《PyTorch自然语言处理》英、中文版PDF+源码
《21个项目玩转深度学习:基于TensorFlow的实践详解》完整版PDF+附书代码
PyTorch深度学习快速实战入门《pytorch-handbook》
【下载】豆瓣评分8.1,《机器学习实战:基于Scikit-Learn和TensorFlow》
李沐大神开源《动手学深度学习》,加州伯克利深度学习(2019春)教材
【Keras】完整实现‘交通标志’分类、‘票据’分类两个项目,让你掌握深度学习图像分类
如何利用全新的决策树集成级联结构gcForest做特征工程并打分?
Machine Learning Yearning 中文翻译稿
不断更新资源
深度学习、机器学习、数据分析、python
搜索公众号添加: datayx
