V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
daweii
V2EX  ›  分享创造

写了一用 LLM 控制 Drawio 生成流程图的 app

  •  1
     
  •   daweii · 3 天前 · 2479 次点击

    特征如下

    1. 直接和 Drawio 无缝连接,不用复制粘贴来回倒腾 Drawio 的 XML 文件。
    2. 支持图像输入,可以直接发个手绘图让 llm 画图。
    3. 有历史功能。可以回溯到之前的编辑记录。

    Web 框架用的 Nextjs 。原理就是用 Embed Drawio 然后通过输入和输出 XML 的结果来控制 Drawio 。

    DEMO 动画( V 站能贴视频吗): https://res.cloudinary.com/jiang/video/upload/next-ai-drawio_urqdeu.webm

    DEMO 网站: https://next-ai-draw-io.vercel.app/

    Github (刚出了第一个 MVP ,功能还需要继续打磨): https://github.com/DayuanJiang/next-ai-draw-io

    29 条回复    2025-03-24 18:36:37 +08:00
    fanjinzhongju952
        1
    fanjinzhongju952  
       3 天前
    不好意思 请问一下 "刚出了第一个 MVP" 是什么意思呢?
    是 github 最受欢迎 或者 周期内热度最高的 一种项目标签认证吗?
    还是某种项目进度的 一种专业术语?
    llxvs
        2
    llxvs  
       3 天前 via iPhone
    @fanjinzhongju952 Minimum Viable Product
    daweii
        3
    daweii  
    OP
       3 天前   ❤️ 1
    @fanjinzhongju952
    不好意思我也是看着别人用,所以也跟着用这个词。意思是最简单的 DEMO 。

    最简可行产品(英语:minimum viable product, MVP ),是新产品开发中的名词,是指有部分机能,恰好可以让设计者表达其核心设计概念的产品。 设计者可以进行验证式学习,根据使用者的回馈,进一步了解使用情形,并且继续开发此产品。
    andytao
        4
    andytao  
       3 天前
    直接解析 AI 输出结果并加载到画布上,66666666
    fanjinzhongju952
        5
    fanjinzhongju952  
       3 天前
    @llxvs 感谢大佬解惑,谢谢
    fanjinzhongju952
        6
    fanjinzhongju952  
       3 天前
    @daweii 感谢大佬分享解惑,谢谢
    Peiiii
        7
    Peiiii  
       3 天前 via Android
    挺有意思,不过流式输出的时候画面抖动。这块不知道是不是 drawio 的问题,体验再优化下就好了
    acthtml
        8
    acthtml  
       3 天前
    很有意思的想法。
    niboy
        9
    niboy  
       3 天前
    我让画个 Michael Jackson ( MJ )它能画,我让他画软件流程图或者架构图它画不出来啊。
    之前我都是让 cursor 帮我生成 xml ,自己倒腾
    xyfan
        10
    xyfan  
       3 天前   ❤️ 1
    根据 Demo 视频,change all color to green 的时候,并未在你调整过对称之后的图形上进行更改,而是在原本 LLM 生成的 XML 上进行更改。似乎此 Demo 不会将当前绘图的 XML 作为上下文送入,只能在 LLM 原本生成的 XML 上不断用语言指导修改,手工修改的内容完全被忽略。
    daweii
        11
    daweii  
    OP
       3 天前
    @Peiiii 应该是加载 XML 的时候出现会闪烁,我看看减少频率会不会变好。
    jonathanchoo
        12
    jonathanchoo  
       3 天前
    之前体验 modao 的 ai 生成界面,跟你的效果一样也是生成一个组件就刷新一次界面,好奇请教是为什么
    ALongRanger
        13
    ALongRanger  
       3 天前
    反馈:
    是一个不错的思路。 最近我画图都在用 LLM 转成 mermaid 以后复制粘贴插入到 drawio ,这个确实能减少一定的操作复杂度。

    我目前主要使用 drawio 画时序图,有时候可能会画一些架构图。 但是目前看画时序图会比较蠢, 我使用转 mermaid 语法的方式是 OK 的,。
    daweii
        14
    daweii  
    OP
       3 天前
    @niboy 现在还只做出来功能,prompt 那边还没调。接下来会好好调 prompt 让他的生成更加自然。
    daweii
        15
    daweii  
    OP
       3 天前
    @xyfan 我也注意到了这一点,我在逻辑上确实是设置把当前绘图的 XML 作为上下文送入,可能是出 bug 了。。我仔细检查一下。
    skywalkerfc
        16
    skywalkerfc  
       2 天前
    挺厉害的,小众赛道
    korvin
        17
    korvin  
       2 天前   ❤️ 1

    ChoiYoonJung
        18
    ChoiYoonJung  
       2 天前
    star 了,drawio 用的很多,期待后续
    QAQqingju
        19
    QAQqingju  
       2 天前
    用了生成 ppt ,文字都在图形的上面,然后让改得时候,会弹窗提示出错,然后就好了,但是每次都是清空画布后再增加比之前多的图形,不够丝滑
    hxzhouh1
        20
    hxzhouh1  
       2 天前
    已经 star ,关注
    Jaeger
        21
    Jaeger  
       2 天前   ❤️ 1
    感觉是不是也可以通过 MCP 实现相同的效果?做一个 Drawio MCP ,然后让 AI 控制 Drawio 去做图
    lihanst
        22
    lihanst  
       2 天前
    我一般都直接让 AI 生成 PlantUML ,直接渲染出流程图。
    daweii
        23
    daweii  
    OP
       2 天前
    @xyfan #10 问题已修复。现在会正确参照现有的图了。
    jonty
        24
    jonty  
       2 天前
    思路好,但是基本不可用。。
    shui14
        25
    shui14  
       2 天前
    这种产品的致命 bug 是上下文丢失或者免费 key 的 llm 频繁降智后的错误
    如果本地塞一个 NLP 小模型监测,那系统复杂度就是指数上升
    这就是为什么所有主流 LLM 的会话机制不愿意改一下
    LawlietZ
        26
    LawlietZ  
       2 天前
    demo 地址怎么进不去了
    LawlietZ
        27
    LawlietZ  
       2 天前
    @shui14 用不付费的不就好了,提供给用户自己填 key
    mswh
        28
    mswh  
       2 天前
    牛,学习下
    mswh
        29
    mswh  
       2 天前
    如何实现网页的交互呢?我在想是不是也能把 AI 集成到我的网站里
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5643 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 01:51 · PVG 09:51 · LAX 18:51 · JFK 21:51
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.