BAIZE AI RESOURCE

把爆款套图拆解为可复用套图模版,并用自有商品图批量生成电商图

EcomGen

把爆款套图拆解为可复用套图模版,并用自有商品图批量生成电商图

EcomGen

资源介绍

EcomGen 是一个自托管的电商商品图生成系统,采用 monorepo 结构,包含 Web 工作台、API 服务、BullMQ Worker、Pi Agent 适配层以及 ecom-skill / ecom-suite-forge 等技能包。它的核心思路是把「爆款套图」逆向拆解为可复用的套图模版:按 L1/L2 品类分类,拆成符合转化漏斗顺序的分镜,并为每个分镜写出与原始图片完全解耦的 Prompt 模板。生成时,用户上传自己的商品真值图片,Agent 结合商品事实、目标市场与平台规则,为每个分镜改写最终生图 Prompt,再由 Worker 调用图像 Provider 执行生成。系统强调商品外观的唯一真值来自 PRODUCT_TRUTH 素材,禁止编造认证、销量、功效等事实,并通过 generationKey 保证幂等、避免重复计费与重复输出。前端为 React 19 + Vite + Ant Design 6 的桌面优先工作台,后端为 Fastify,任务队列使用 BullMQ 与 Redis,支持 Docker 部署。

核心能力

爆款套图逆向拆解

ecom-suite-forge 技能把一整套爆款电商图片按 L1/L2 品类分类,拆解为符合转化漏斗顺序的分镜,并输出符合 suite-schema 的套图模版 JSON,模版与原始图片完全解耦,换任意商品仍可使用。

Agent 逐分镜改写最终 Prompt

Pi Agent 接收项目上下文、商品事实、素材摘要、目标市场与模板 ID,为每个分镜生成可直接发送给图像模型的最终 Prompt,Worker 不再拼接模板、风格锁或负面词。

商品真值保护与事实约束

PRODUCT_TRUTH 素材被声明为商品外观的唯一真值,其他素材只能作为包装、风格或版式参考;校验器拒绝空 Prompt、未知模板、重复 shotRole × assetType 组合以及内部模板元数据泄漏。

幂等生成与崩溃恢复

每个图像候选生成稳定的 generationKey,同时作为 Provider 的 Idempotency-Key、输出数据库唯一键和本地文件名的一部分;图像生成任务不自动重试,只能由用户显式重试。

可配置联网视觉研究

research_visual_direction 工具默认关闭,仅调用显式配置的搜索源(Brave、Tavily、自托管 SearXNG),按 priority 串行尝试,结果只能作为视觉灵感,不能升级为商品事实。

分层导出与 PSD 支持

前端集成 ag-psd 与 fflate,提供图层堆叠、图层合成与 PSD 导出能力,Worker 侧也包含 layer-composite 与视觉资产处理模块。

使用方法

  1. 准备 Node.js 22+ 与 pnpm 11+ 环境,在仓库根目录执行 pnpm install 安装依赖。

  2. 复制 .env.example 为 .env,配置 API 基地址、Provider 密钥、Redis 等必要参数。

  3. 启动后端 pnpm dev:api(默认 http://127.0.0.1:8787),生成链路另需启动 pnpm dev:worker 与 Redis。

  4. 启动前端 pnpm dev:web,Vite 开发服务器会把 /api 代理到 127.0.0.1:8787。

  5. 在设置抽屉中配置图像 Provider 与搜索源(Brave / Tavily / SearXNG),密钥经 API 加密保存。

  6. 上传商品真值图片与素材,选择或生成套图模版,确认分镜后触发生成,并在结果工作区审阅、导出。

使用案例

爆款套图复刻

使用场景已有竞品或爆款商品的一整套图片,希望提炼成可复用模版

使用 ecom-suite-forge 技能输入 6–12 张同一主商品的参考图,系统按品类分类、拆解分镜并输出套图模版 JSON,之后可套用到自己的商品上。

自有商品批量出图

使用场景需要为自家商品快速产出风格统一的电商图套图

上传商品真值图片,选择套图模版,Agent 按分镜改写最终 Prompt,Worker 调用图像 Provider 生成整套商品图并支持导出。

分镜 Prompt 微调重生成

使用场景对某个分镜的生成结果不满意,需要定向修改

在结果工作区填写 revision 说明,Worker 调用 reviseImagePrompt 以现有最终 Prompt 为基础改写,保留商品事实与像素保护约束后重新生成。

包含内容

ecomgen-source.zip
README-中文安装说明.md
LICENSE-MIT.txt
SHA256.txt

常见问题

EcomGen 生成图片时会自动重试失败的任务吗?
不会。图像生成 BullMQ 任务不做自动重试,只能由用户显式重试。Worker 在发起外部图像请求前会写入内部「请求已开始」标记,若进程在 Provider 返回前退出,启动恢复会把任务标记为失败且禁止自动重试,因为此时无法判定 Provider 是否已计费。
套图模版和原始爆款图片是什么关系?
套图模版不是原始图片的复制,而是提炼出的视觉语法——分镜角色、构图、机位、光线、背景、色彩体系与文字策略,被改写为占位符驱动的通用 Prompt 模板,因此换入不同商品后仍然可用。
联网搜索会影响商品事实吗?
不会。research_visual_direction 默认关闭,只允许覆盖近期电商视觉趋势、构图、镜头、光线、材质与平台版式;不搜索或采信价格、规格、认证、功效、排名、发货承诺等商品事实,搜索结果也不会自动追加到最终 Prompt。
EcomGen 支持哪些图像 Provider 和搜索源?
Worker 会检查 Provider 与图像模型是否声明了 openai_images 或 gemini 能力;搜索源支持 Brave、Tavily 与自托管 SearXNG,按数值从小到大的 priority 串行尝试,任一成功即停止。
运行 EcomGen 需要什么环境?
前端要求 Node.js 22+ 与 pnpm 11+,后端 API 默认监听 http://127.0.0.1:8787;生成链路还需要启动 Worker 与 Redis。仓库提供 Dockerfile 与 docker-compose.yml,可用于容器化部署。