image2创作工作台开源-无限画布二开版开源:一个更适合自托管的 AI 图片创作工作台

mofeng make 2026-05-31 11:22 1

本帖使用社区开源推广,符合推广要求。我申明并遵循社区要求的以下内容:



  • 我的帖子已经打上 开源推广 标签:

  • 我的开源项目完整开源,无未开源部分:

  • 我的开源项目已链接认可 LINUX DO 社区:

  • 我帖子内的项目介绍,AI生成、润色内容部分已截图发出:

  • 以上选择我承诺是永久有效的,接受社区和佬友监督:


以下为项目介绍正文内容,AI生成、润色内容已使用截图方式发出




无限画布二开版:一个更适合自托管的 AI 图片创作工作台


最近在论坛里发现了一个非常好的ai图片创作开源项目 basketikun/infinite-canvas ,这两天根据自己的需求做了一版二次开发,重点增强了图片生成工作台、创作工作流、素材复用、账号同步和 R2 对象存储能力。项目会继续开源,适合想在自己服务器上搭一个 AI 图片创作工具的朋友试用和二开,暂不推荐商用。


项目地址:




原项目地址:




原帖



本帖使用社区开源推广,符合推广要求。我申明并遵循社区要求的以下内容:

我的帖子已经打上 开源推广 标签: 是
我的开源项目完整开源,无未开源部分: 是
我的开源项目已链接认可 LINUX DO 社区: 是
我帖子内的项目介绍,AI生成、润色内容部分已截图发出: 是
以上选择我承诺是永久有效的,接受社区和佬友监督: 是

以下为项目介绍正文内容,AI生成、润色内容已使用截图方式发出

一周开源总…


项目定位


这个项目不是单纯的“输入提示词生成图片”页面,而是把图片创作常用流程整合到一个工作台里:




  • 无限画布:整理图片、文本、参考图和生成节点。




  • 生图工作台:连续生成、对比、分类、复用历史结果。




  • 创作工作流:把固定提示词结构沉淀成模板,只替换少量变量即可批量生成同类型图片。(我个人非常需要也经常使用)




  • AI 创建工作流 Agent:直接根据提示词生成工作流。(本人比较懒,尤其是有了ai后,能交给ai的都让ai来干活)




  • 提示词库和素材库:把常用提示词、参考图、生成结果沉淀下来。




  • 自托管存储:支持 SQLite + S3/R2,把图片文件放到自己的对象存储。(主要为了给朋友用,方便线上跨设备使用,白嫖的Cloudflare R2对象存储,每个账号可以白嫖10g,同时可以添加多个R2,自动统计容量,到达9g后自动禁用并切换下一个,作为L站忠实用户,能白嫖绝不掏钱)




适合的场景包括电商海报、小红书封面、AI 写真风格探索、菜谱图、UI 视觉稿、广告创意图等。




新增功能截图


生图工作台改动





创作工作流









多渠道ai配置和cloudflare r2配置




后台配置






相比原项目新增和增强的功能

1. 生图工作台升级


二开版对生图工作台做了较多增强:




  • 支持侧边工作台和悬浮底部工作台切换。




  • 支持多个生图任务并发运行。




  • 生成中实时显示耗时。




  • 生成结果和历史结果合并展示,不再分散在两个区域。




  • 结果卡片展示提示词、模型、接口、尺寸、质量、格式、耗时等信息。




  • 失败结果支持保留卡片,并可查看完整错误详情。




  • 支持结果分类、分类展示、未分类结果管理。




  • 支持将生成结果加入参考图、加入“我的素材”、下载、重试和载入参数。




  • 参考图会显示缩略图,并区分临时上传、素材引用和生成结果引用,避免误删 R2 文件。




2. 支持 Images API 和 Responses API


原项目主要围绕 /v1/images。二开版增加了 Responses API 生图链路,并补充了更多配置项:




  • /v1/images/generations




  • /v1/images/edits




  • /v1/responses




  • 流式传输




  • 中间步骤图数量




  • 返回 Base64 图片数据




  • Codex CLI 兼容模式




  • 请求超时




  • 输出格式 PNG / JPEG / WebP




  • 压缩比例




  • 审核级别




这样更方便适配不同 OpenAI 兼容服务商和私有渠道,还是那句话:为了白嫖!Responses API成本非常低。


3. 多渠道多模型配置


现在可以配置多个模型渠道,并且图片、视频、文本可以分别选择不同渠道下的不同模型。


本地直连模式下,用户可以在浏览器里配置自己的 Base URL、API Key 和模型列表。


云端渠道模式下,管理员可以在后台配置多个私有渠道,由后端代理请求。前端只看到渠道摘要和可用模型,不暴露 API Key。


4. 创作工作流


新增“创作工作流”能力,用来沉淀可复用的创作模板。


例如可以创建一个“电商海报生成”工作流,只暴露几个变量:




  • 产品名称




  • 核心卖点




  • 活动信息




  • 海报风格




  • 是否显示价格




其他固定要求写在模板里,用户运行时只填写变量,就能生成同类型图片。


当前工作流支持:




  • 个人工作流和公开工作流。




  • 公开工作流可被其他用户查看和复制。




  • 短文本、长文本、数字、选项、开关变量。




  • 选项变量支持用 / 或换行分隔。




  • 开关变量会渲染为“开启/关闭”,方便写入中文提示词。




  • 工作流运行结果直接进入生图历史。




  • 工作流结果自动归类到同名分类。




  • 工作流运行时可上传参考图或选择“我的素材”中的图片。




5. AI 创建工作流 Agent


新增了一个工作流创建 Agent。用户只需要描述自己想要的工作流,Agent 会生成结构化草稿。


例如输入:



帮我创建一个小红书封面工作流,主题可以选择美食/旅行/穿搭,需要输入标题、卖点和画面风格,固定生成竖版封面图。


Agent 会生成:




  • 工作流名称




  • 分类




  • 描述




  • 输入变量




  • 变量类型




  • 选项




  • 默认值




  • 系统提示词




  • 用户提示词模板




  • 生图参数




弹窗里可以单独选择不同渠道和文本模型来运行 Agent,也可以上传参考图或选择素材作为参考。


6. 我的素材与素材复用


“我的素材”现在可以在多个地方直接使用:




  • 生图工作台




  • 画布 AI 助手




  • 工作流运行弹窗




  • AI 创建工作流弹窗




可以选择文本素材写入提示词,也可以选择图片素材作为参考图。图片素材会复用已有文件记录,不会重复上传。


生成结果也可以加入素材库,后续作为参考图反复使用。


7. SQLite + Cloudflare R2 存储


二开版新增了服务端存储方案:




  • SQLite 保存用户配置、画布数据、生成历史、工作流和文件索引。




  • Cloudflare R2 或其他 S3 兼容对象存储保存图片文件。




  • 前端仍保留 IndexedDB 本地模式。




  • 管理员后台可以配置系统 S3/R2。




  • 管理员允许后,用户也可以配置自己的 S3/R2。




  • 支持手动统计 R2 存储容量。




  • 到达容量限制后可自动禁用对应配置。




这对自托管比较重要:浏览器换设备后,核心配置、画布和历史可以跟随账号,图片文件也不会全部塞在浏览器本地。





快速启动

本地非 Docker:



git clone https://github.com/HuFakai/infinite-canvas.git

cd infinite-canvas

cp .env.example .env

go run .


另开终端:



cd web

npm install

npm run dev


访问:



http://localhost:13000


Docker Compose:



git clone https://github.com/HuFakai/infinite-canvas.git

cd infinite-canvas

cp .env.example .env

docker compose up -d --build





我帖子内的项目介绍,AI生成、润色内容部分截图



当前适合谁使用


如果你有这些需求,可以试试:




  • 想在自己服务器上跑一个 AI 图片创作工作台。




  • 想把多个 OpenAI 兼容渠道统一管理。




  • 想使用 Cloudflare R2 保存生成图片。




  • 想把常用提示词和参考图沉淀成素材。




  • 想把固定创作流程封装成工作流模板。




  • 想继续二开一个图片创作类开源项目。




目前项目仍然处于快速开发阶段,不建议直接作为稳定商用系统使用。数据结构和功能还会继续调整,适合个人自用、学习、二开和小范围测试。


致谢


最后必须感谢原开源作者。


本项目基于 basketikun/infinite-canvas 二次开发,原项目提供了非常好的无限画布基础、节点交互和 AI 创作雏形。我这版主要是在原项目基础上继续扩展生图工作台、工作流、存储、账号同步和部署能力。


原项目地址:



https://github.com/basketikun/infinite-canvas


感谢原作者的开源工作,也欢迎大家去给原项目点 Star。如果你觉得还不错的话可以给我点个赞和Star,谢谢!

最新回复 (19)
  • sisisisisiyuan 05-31 13:05
    2

    之前在原项目有人提过 下面这个建议 有弄这个功能吗?

    图片蒙版遮罩局部修改 功能。

    希望可以在图片上添加蒙版或遮罩,选中指定区域后,只对局部内容进行修改,其他区域保持不变。这样会更方便进行细节调整和图片局部优化。

  • mofeng make 楼主 05-31 13:12
    3

    好的,我去研究以下,下个版本加上

  • 爱吃肉包子的小狐狸 05-31 13:14
    4

    ai用蒙版和遮罩修图,也多少会影响到原图片的质量的,会多好多噪点,完全不如重新生成或者古法修图

  • 美女 05-31 17:54
    5



    问下这个工作流截图所示都是自己加的吗,我自己部署只有一个,有没有模板什么的

  • mofeng make 楼主 05-31 18:10
    6

    可以使用ai创建,点击ai创建的按钮,然后输入你的要求,让ai帮你生成工作流,也可去x上或其他ai做图网站找别人的提示词发给ai创建工作流,然后根据提示词生成工作流,你可以告诉他哪些内容是变量,然后就可以生成包含对应变量的工作流

    流程示例:




    示范截图








  • 陈佩恩 05-31 22:33
    7

    原因找到了:不是没生成出来,而是历史结果卡片只拿 firstImage = displayImages[0] 作为主图显示,下面最多只露出 4 个小缩略图,而且没有“展开全部”的入口。生成 5 张时,记录里确实会保存 log.images 的多张图,但界面主要只让你看第一张,体验上就像“不能 5 张都看”。


    我已经改好了:


    infinite-canvas/web/src/app/(user)/image/page.tsx



    • 历史卡片现在如果有多张图:

      • 缩略条从最多 4 张改成最多 6 张;

      • 缩略条可以点击;

      • 卡片按钮区新增 全部 N;

      • 点击后弹出窗口展示本次生成的全部图片;

      • 弹窗里每张图都能:

        • 加入素材

        • 加入参考图/编辑

        • 下载

          多张不能看很难受.



          还有个这个问题.得手动去设置比例?





  • mofeng make 楼主 05-31 22:49
    8

    这是哪个地方出现的问题?

    可以选择尺寸

  • Kirafishy 06-01 17:58
    10

    佬,我用第一次生成的图片再加新的提示词生图的时候会报CORS错误,是我的操作不对吗

  • mofeng make 楼主 06-01 18:13
    11

    应该是传递参考图的时候前端跨域的问题,是最新版的代码吗,配置s3/r2了吗,更新一下代码试试,

    git pull


    docker compose up -d --build

  • Kirafishy 06-01 18:17
    12

    下午刚部署的,没配置存储,图片存的是URL,可能是这个原因吧^-^

  • mofeng make 楼主 06-01 18:21
    13

    我晚上排查一下问题,今晚会更新,之前没细致测试,开发的时候都是配置着存储用的

  • clzj 06-03 11:46
    15



    请教一下, 是我安装的程序问题还是什么, 我用更新命令,更新了, 版本号一直是这个

  • mofeng make 楼主 06-03 11:56
    16

    这个不影响使用,只要是拉去的GitHub仓库的最新代码就行

  • 夏至未至 06-03 12:16
    17

    API配置是全局生效吗?如果配置多个账户时是否可以直接进行ai工作?

  • clzj 06-03 12:34
    18

    请教一下, 是我安装的程序问题还是什么, 我用更新命令,更新了, 版本号一直是这个





    更新了以后生图这个是什么问题

  • 帅呆 06-03 12:40
    19

    支持大佬开源精神,打算抛弃我公司内部原有的生图,再你这个基础上重新二次开发。想了解下你后续的更新频率,想自己二次开发,又舍不得你后面的更新内容 ^-^

  • mofeng make 楼主 06-03 13:23
    20





    看一下没有报错日志,原因可能有很多,还不行的话佬加我微信,我看看,私你了

  • mofeng make 楼主 06-03 13:25
    21

    其实我自己也没规划,我就是刚好看到了原开源项目,忍不住根据自己的需求二开了一下,后续很根据后面的需求和大家提的意见进行更新,有需求的话可以提 ^-^

  • 辣椒炒肉 06-03 15:30
    22

    怎么你们都用上了,我这个低配机还没部署成功呢


* 帖子来源Linux.do
返回