一个功能强大、开箱即用的在线「文生图 / 图生图」服务,完全基于 Cloudflare Workers AI 平台构建,侧重隐私保护、易用性与企业级安全配置。
✨ 功能亮点
本项目在融合多个开源方案的基础上,进行了大量增强与体验优化,主要特性:
- 全能模型支持
- 支持文生图(SDXL、FLUX)、图生图、局部重绘等主流模型。
- 本地文件上传
- 支持从本地直接上传图片用于图生图 / 局部重绘,免去外链繁琐操作。
- 批量生成与下载
- 支持一次性生成多张图片、画廊预览,并提供 ZIP 批量下载。
- 智能参数建议
- 根据选定模型自动推荐合适的步数与引导系数,降低使用门槛。
- 企业级安全配置
- 环境变量密码:通过 Cloudflare 环境变量设置访问密码,安全且易管理。
- IP 速率限制:内置基于 IP 的请求频率限制,防止滥用。
- R2 临时存储:上传图片存放于 R2 并自动过期,保护用户隐私与存储空间。
- 优秀用户体验
- 明/暗主题切换、响应式设计、移动端友好。
- 实时生成进度条(带超时),一键复制生成参数以便分享与复现。
- GitHub 地址:https://github.com/sinian-liu/AI-Images
- 支持部署方式:Cloudflare Pages
部署教程(快速上手)
前置条件:一个有效的 Cloudflare 账号。以下步骤在 Cloudflare 控制台中操作。
步骤1:部署 Worker 并上传代码
- 打开:https://github.com/sinian-liu/AI-Images
- 点击右上角 的”Star”,然后再点击”Fork”,复制项目到你自己的 GitHub 账户下
步骤 2:登录 Cloudflare 创建项目
- 创建 Worker 服务
- Cloudflare 控制台 → Workers & Pages → 创建应用程序 → 选择“从 Hello World! 开始”→然后在Worker名称里填一个自己喜欢的名称并且点击部署→从弹出的窗口中点击“编辑代码”。
- 上传代码文件
- 回到github,打开刚刚fork项目里面的“worker.js”这个文件,点击“copy raw file”复制全部代码,然后进入cloudflare中先删除原有的所有内容,然后将本github项目的
worker.js
代码完整粘贴到默认文件中(即worker.js的文件),接着新建一个名为index.heml
的文件,然后回到github,找到index.html的这个文件,和刚刚一样点击“copy raw file”复制全部代码并且粘贴到cloudflare刚刚新建的index.html里面,接着点击部署。
- 回到github,打开刚刚fork项目里面的“worker.js”这个文件,点击“copy raw file”复制全部代码,然后进入cloudflare中先删除原有的所有内容,然后将本github项目的
步骤3:绑定与环境变量(关键)
部署完成后返回到项目中,点击绑定→ 添加绑定→ 选择“Workers AI”→ 点击“添加绑定”→ 变量名称必须填“AI”→ 点击“添加绑定”
-
绑定(Settings → Bindings)
-
添加以下绑定(三次点击“添加绑定”),以下内容是为了防止滥用和上传附件用,如果没有需求可跳过,如有需要,按照刚刚绑定“Workers AI”的方法再绑定剩余的R2 存储桶和KV 命名空间即可。
绑定类型 变量名称 说明 Workers AI AI (无需选择命名空间) R2 存储桶 IMAGE_BUCKET 选择第 1 步创建的 R2 存储桶(例如 ai-image
)KV 命名空间 RATE_LIMITER_KV 选择第 1 步创建的 KV 命名空间(例如 AI_RATE_LIMITER
)
-
-
设置环境变量(Settings → Variables)
- 添加访问密码(可选):
- 变量名称:
PASSWORDS
- 变量值:例如
10000
- 提示:若不设置此变量或留空,则站点公开无需密码。
- 变量名称:
- 添加访问密码(可选):
- 添加域名访问:
- 设置→添加→自定义域→填写你域名的子域名→添加域
- 设置→添加→自定义域→填写你域名的子域名→添加域
步骤4:访问域名
访问你刚刚设置的域名,并且尝试如果能正常访问并且生成图像则完成部署了,进阶玩法后面可以自己研究,例如上传图片,上传的图片风格美化等。
QQ交流群:1043787517(群内不定时发放服务器相关福利)