多商品批量生图 Batch Image
多商品批量生图流水线。商品清单 CSV → 整批统一视觉的商拍图,带并发、重试、断点续跑、成本熔断与挑图联系表。当用户说「批量生图」「一批商品」「跑整个 SKU 表」「几百个商品出图」时使用。 Skill: 多商品批量生图 Batch Image Owner: dlazyai Summary: 多商品批量生图流水线。商品清单 CSV → 整批统一视觉的商拍图,带并发、重试、断点续跑、成本熔断与挑图联系表。当用户说「批量生图」「一批商品」「跑整个 SKU 表」「几百个商品出图」时使用。 Tags: latest:1.0.19 Version history: v1.0.19 | 2026-10-10T01:45:32.203Z | user 例行版本更新 2026-10-10 v1.0.18 | 2026-10-08T01:39:03.583Z | user 例行版本更新 2026-10-08 v1.0.17 | 2026-10-04T01:39:39.100Z | user 例行版本更新 2026-10-04 v1.0.16 | 2026-10-02T05:13:29.975Z | user 例行版本更新 2026-1
Rank
62
Safety
84
Downloads
1.3k
Updated
Oct 10, 2026
Version
1.0.19
Source
CLAWHUB
About
What it does, and when to use it.
Capability contract not published. No trust telemetry is available yet. 1.3K downloads reported by the source. Last updated 10/10/2026.
Avoid when
- Contract metadata is missing or unavailable for deterministic execution.
Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing
Public facts
Every fact links back to the source it came from.
- Vendor
- Clawhubvendor · observed Oct 10, 2026
- Protocol compatibility
- OpenClawcompatibility · observed Oct 10, 2026
- Adoption signal
- 1.3K downloadsadoption · observed Oct 10, 2026
- Latest release
- 1.0.19release · observed Oct 10, 2026
- Handshake status
- UNKNOWNsecurity
Install and run
Setup complexity: low.
clawhub skill install s170j1ymymrxasgd00dsk7tckx84cf45:batch-image- Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.
- Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Contract: missing
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-dlazyai-batch-image/snapshot"
Documentation
CLAWHUB
148,277 characters of source documentation, loaded on request.
Extracted files
5 files captured from the source.
SKILL.md
---
name: batch-image
version: 1.0.19
description: 多商品批量生图流水线。商品清单 CSV → 整批统一视觉的商拍图,带并发、重试、断点续跑、成本熔断与挑图联系表。当用户说「批量生图」「一批商品」「跑整个 SKU 表」「几百个商品出图」时使用。
---
# batch-image — 多商品批量生图
把单张生图变成**流水线**:一份商品清单 → 一整套风格统一的商拍图。
批量的难点不是「跑很多次」,而是**跑出来的图要像一套**。本技能的核心是**规范段与变量段分离**:视觉规范逐字不变,只有商品描述随 SKU 变化。
---
## 生成效果示例
| 输入:商品清单(2 个 SKU) |
| --- |
| `SKU001` <img src="https://raw.githubusercontent.com/dlazy-ai/ecommerce-skills/main/docs/batch-image/sku-a-sweater.jpg" width="150"> `军绿色麻花针织圆领毛衣,落肩宽松版型` |
| `SKU002` <img src="https://raw.githubusercontent.com/dlazy-ai/ecommerce-skills/main/docs/batch-image/sku-b-shoes.jpg" width="150"> `黑色亮面皮革布洛克德比鞋,厚底系带` |
实际执行的命令(循环体,两个 SKU 只有 `DESC` 与 `--images` 不同,规范段逐字相同):
```bash
for sku in a-sweater b-shoes; do
case $sku in
a-sweater) DESC='军绿色麻花针织圆领毛衣,落肩宽松版型' ;;
b-shoes) DESC='黑色亮面皮革布洛克德比鞋,厚底系带' ;;
esac
dlazy seedream-5.0 \
--prompt "电商商拍图。图1 是商品:${DESC}。商品的颜色、材质纹理、款式细节必须与图1完全一致。放置在同一套统一视觉里:纯米白色摄影棚背景,柔和顶光加左侧补光,45 度视角,画面下方留出统一的商品投影,构图与留白在整组图中保持一致。真实商业产品摄影,无文字无水印。" \
--images docs/batch-image/sku-${sku}.jpg --size 1:1 --resolution 2k \
--save docs/batch-image/example-output-${sku}.jpg
done
```
**输出:同一套视觉规范下的两个 SKU**
| SKU001 | SKU002 |
| --- | --- |
| <img src="https://raw.githubusercontent.com/dlazy-ai/ecommerce-skills/main/docs/batch-image/example-output-a-sweater.jpg" width="280"> | <img src="https://raw.githubusercontent.com/dlazy-ai/ecommerce-skills/main/docs/batch-image/example-output-b-shoes.jpg" width="280"> |
| 1:1 / 2K,5 credits | 1:1 / 2K,5 credits |
两张的背景色、光位、视角与投影方向一致——因为规范段逐字相同;商品各自保真。100 个 SKU 就是这个循环跑 100 次,总价约 500 credits。
---
## 1、能力边界
| 能力 | 说明 |
| --- | --- |
| 批量规模 | 一批最多 100 个商品(对应企业功能的规格) |
| 成本优势 | 批量场景下单图算力成本可降至约 7 折 |
| 协作 | 多人在线协作、出片进度实时追踪 |
| 资产共享 | 共享模特 / 参考图 / 作品 / 算力点 |
| 本技能落地 | 清单驱动循环 + 并发控制 + 失败重试 + 按 SKU 归档 + 汇总报告 |
**不做**:不在同一批里混用不同视觉规范(那不是一批);不跳过抽样质检直接全量上架;不因为批量就放宽商品保真要求。
---
## 2、输入素材规则
生成前先自检这几条硬性约束:
- 大小:**20KB ~ 15MB**
- 分辨率:**大于 400×400**
- 格式:**jpg / jpeg / png / webp**
**商品清单(manifest)** 是批量的输入,建议 CSV:
```csv
sku,image,desc
SKU001,docs/batch-image/sku-a-sweater.jpg,军绿色麻花针织圆领毛衣,落肩宽松版型
SKU002,docs/batch-image/sku-b-shoes.jpg,黑色亮面皮革布洛克德比鞋,厚底系带
```
**每张商品图仍要满足单图规则**:20KB~15MB、>400×400、jpg/jpeg/png/webp。
**批量前必做的事**
| 步骤 | 说明 |
| --- | --- |
| ✅ 先跑通 1 个 SKU | 单个跑不对,跑 100 个只是错 100 次 |
| ✅ 再抽样 5 个 SKU | 覆盖品类/颜色/深浅色的边界情况 |
| ✅ 确认成本 | `--dry-run` 单价 × SKU 数 × batch 数 |
| ❌ 直接全量 | 最容易烧算力的做法 |
---
## 3、规范段 / 变量段分离
这是批量出统一视觉的唯一方法:
```text
prompt = [规范段:整批逐字不变] + [变量段:每个 SKU 不同]
```
| 段 | 内容 | 是否变 |
| --- | --- | --- |
| 规范段 | 背景、光位、机位、构图留白、投影、色调、输出风格、`no text, no watermark` | **整批逐字不变** |
| 变量段 | 商品品类 + 颜色 + 材质 + 关键结构特征 | 每个 SKU 不同 |
写成 shell:
```bash
SPEC='放置在同一套统一视觉里:纯米白色摄影棚背景,柔和顶光加左侧补光,45 度视角,画面下方留出统一的商品投影,构图与留白在整组图中保持一致。真实商业产品摄影,无文字无水印。'
while IFS=, read -r SKU IMG DESC; do
dlazy seedream-5.0 \
--prompt "电商商拍图。图1 是商品:${DESC}。商品的颜色、材质纹理、款式细节必须与图1完全一致。${SPEC}" \
--images "$IMG" --size 1:1 --resolution 2k \
--save "docs/b_meta.json
{
"ownerId": "kn7c5wgeajfcfvdfb5ceemvdb984cjpd",
"slug": "batch-image",
"version": "1.0.19",
"publishedAt": 1791596732203
}references/model-flags.md
# `seedream-5.0` 参数清单
本技能默认用的模型的完整参数。日常只需要「参数约定」里那几个,
这份清单在需要用到非常规参数时再看。
**CRITICAL INSTRUCTION FOR AGENT**:
Run the `dlazy seedream-5.0` command to get results.
```bash
dlazy seedream-5.0 -h
Options:
--prompt <prompt> Prompt
--images [images...] Images [image: url or local path] (max 10)
--resolution <resolution> Resolution [default: 2k] (choices: "2k", "3k",
"4k")
--size <size> Size [default: 16:9] (choices: "1:1", "4:3",
"3:4", "16:9", "9:16", "3:2", "2:3", "21:9")
--dry-run Print payload without executing the tool
--no-wait Return generateId immediately for async tasks
--timeout <seconds> Max seconds to wait for async completion (default:
"1800")
--input <jsonOrFile> Inline JSON or @path/to/file.json — merged under
flag values (flags win)
--save <path> Download the result asset to this local path
(mkdir + retry handled for you). A destination
path — NOT a response format; for stdout shape use
--format
--batch <n> Fan-out N parallel runs (cloud tools only)
(default: "1")
-h, --help display help for command
```
> Any flag also accepts pipe references — `-` (auto-pick from upstream stdin), `@N` (n-th output), `@N.path` (jsonpath into output), `@*` (all primary values), `@stdin` / `@stdin:path` (whole envelope). See `dlazy --help` for details.
---
换其他后端时参数由 `scripts/gen.mjs` 统一翻译,见 [`provider-cli.md`](provider-cli.md)。references/platform-specs.md
<!-- 由 scripts/build-skills.mjs 从 shared/references/platform-specs.md 同步生成,不要直接改这里。 --> # 平台图片规格(可机检子集) `scripts/check_listing.py` 内置的规则来源与口径。**平台规则会变,以各平台最新官方文档为准**; 需要覆盖时写一份 JSON 用 `--rules` 传入,结构与下表字段一一对应。 --- ## 字段含义 | 字段 | 含义 | | --- | --- | | `pure_white_bg` | 是否要求纯白 RGB(255,255,255) 背景 | | `bg_tolerance` | 判定「纯白」允许的单通道偏差 | | `bg_coverage` | 边缘一圈需要有多大比例落在容差内 | | `min_long_side` / `recommend_long_side` / `max_long_side` | 最长边像素 | | `min_occupancy` | 商品包围盒面积 ÷ 画面面积 的下限 | | `allow_alpha` | 是否允许透明通道 | | `allow_border` | 是否允许描边 / 外框 | | `formats` / `max_bytes` / `aspect` | 允许格式、体积上限、允许比例 | --- ## 内置规则 | 平台 | 纯白底 | 最长边(下限 / 建议) | 主体占比 | 比例 | 体积上限 | | --- | --- | --- | --- | --- | --- | | `amazon` | 是 | 1000 / 1600 | ≥ 85% | 不限 | 10 MB | | `tiktok-shop` | 否 | 800 / 1600 | ≥ 60% | 1:1 或 3:4 | 5 MB | | `temu` | 是 | 800 / 1350 | ≥ 70% | 1:1 | 3 MB | | `shopee` | 否 | 500 / 1024 | ≥ 55% | 1:1 | 2 MB | | `shopify` | 否 | 1024 / 2048 | 不限 | 不限 | 20 MB | | `taobao` | 是 | 800 / 1200 | ≥ 70% | 1:1 | 3 MB | --- ## 几个容易踩的点 - **透明 PNG**:Amazon 会把透明像素转成黑色。永远压平成白底 JPEG 再传。 - **「白底」不等于「看起来是白的」**:棚拍的浅灰墙(约 RGB 208)肉眼像白,机检直接判不合格。 - **主体占比**:留白过多是最常见的驳回原因之一,比分辨率不够更常见。 - **文字 / 水印 / 拼图**:像素层测不了,交给 `detect-task` 的视觉模型或人工。 - **自动修复的边界**:`--fix` 能压白底、按占比重构画布、补分辨率、压体积; 它**不会**修图,也不会去水印——那是 `item-repair` 和 `remove-watermark` 的活。
references/provider-cli.md
<!-- 由 scripts/build-skills.mjs 从 shared/references/provider-cli.md 同步生成,不要直接改这里。 --> # 后端调用参考 技能正文只写「要生成什么」。认证、计费、错误码、输出结构这些每个技能都一样的东西放在这里, **用到时再读**,不占技能的常驻上下文。 --- ## 一、认证 ### 默认后端 dLazy ```bash dlazy login # 设备码流程,远程 shell 也能用,自动写入本地配置 dlazy auth set <KEY> # 已有 key 时直接写入 ``` key 存在用户配置目录(macOS/Linux `~/.dlazy/config.json`,Windows `%USERPROFILE%\.dlazy\config.json`), 权限限本机用户。也可以每次调用用环境变量 `DLAZY_API_KEY` 传入。 手动获取:登录 [dlazy.com](https://dlazy.com) → [API Key 页面](https://dlazy.com/dashboard/organization/api-key)。 key 按组织隔离,可随时轮换或吊销。 ### 其他后端 本技能库不锁定单一厂商。配好任意一家的 key 即可跑: | 后端 | 环境变量 | 说明 | | --- | --- | --- | | `dlazy` | `dlazy login` 或 `DLAZY_API_KEY` | 默认,最省事 | | `openai` | `OPENAI_API_KEY` | 走 `/v1/images/edits` 与 `/v1/images/generations` | | `gemini` | `GEMINI_API_KEY` | Nano Banana 系列 | | `fal` | `FAL_KEY` | | | `replicate` | `REPLICATE_API_TOKEN` | | | `ark` | `ARK_API_KEY` + `ARK_MODEL` | 火山方舟,模型 ID 需按开通情况填 | 选路优先级:`--provider` 参数 > `PROVIDER` 环境变量 > 第一个配了 key 的 > `dlazy`。 ```bash node scripts/gen.mjs --doctor # 看当前哪个后端可用 ``` 各后端的模型 ID 可用 `GEN_MODEL_OPENAI` / `GEN_MODEL_GEMINI` / `GEN_MODEL_FAL` / `GEN_MODEL_REPLICATE` / `GEN_MODEL_ARK` 覆盖。**厂商目录会变,以各家最新文档为准。** --- ## 二、两种调用方式 ### 方式 A:统一入口(推荐) ```bash node scripts/gen.mjs --task <技能名> --prompt '...' --images a.jpg b.jpg --save out.jpg ``` 它负责:后端选路、默认尺寸档位、失败重试(429/5xx 指数退避)、落盘建目录、成本估算。 ```bash node scripts/gen.mjs --task flat-lay --prompt '...' --dry-run # 不调用不计费,只看要发什么 node scripts/gen.mjs --help ``` ### 方式 B:直接用 dLazy CLI 不想引入 Node 依赖时,技能正文里的 `dlazy ...` 命令可以原样执行,效果等价。 ```bash npx @dlazy/[email protected] <command> # 不装全局二进制 ``` - CLI 源码:[github.com/dlazy-ai/cli](https://github.com/dlazy-ai/cli) · npm 包 `@dlazy/cli` --- ## 三、数据流向 调用 dLazy 时:提示词与参数发往 `api.dlazy.com`;传入的本地图片会上传到 `files.dlazy.com` 供模型读取;产出 URL 同样托管在 `files.dlazy.com`。这是云端生成 API 的通用形态。 换成其他后端时,数据流向对应厂商,不经过 dLazy。 --- ## 四、输出结构 `gen.mjs`(加 `--json`): ```json { "ok": true, "task": "flat-lay", "provider": "dlazy", "model": "gpt-image-2", "files": ["docs/flat-lay/output-sku001.jpg"], "texts": [], "estimatedCredits": 60, "elapsedMs": 58213 } ``` dLazy CLI 原生: ```json { "ok": true, "result": { "tool": "gpt-image-2", "data": { "urls": ["https://files.dlazy.com/data/ai/....jpg"] }, "savedPath": "docs/flat-lay/example-output.jpg" } } ``` 加 `--no-wait` 的异步任务不返回 `data`,返回 `task: { generateId, status }`, 用 `dlazy status <generateId> --wait` 轮询。 文本类模型(如质检)产出在 `result.data.texts[0]`: ```bash dlazy claude-sonnet-5 --prompt '...' --images x.jpg \ | python3 -c 'import sys,json;print(json.load(sys.stdin)["result"]["data"]["texts"][0])' ``` --- ## 五、错误处理 | Code | 类型 | 示例 | | --- | --- | --- | | 401 | 未授权 / 无 key | `ok: false, code: "unauthorized"` | | 501 | 缺必填参数 | `error: required option '--prompt <prompt>' not specified` | | 502 | 本地文件读不到 | `Error: Image file not found: ...` | | 503 | 余额不足 | `ok: false, code: "insufficient_balance"` | | 503 | 服务端错误 | `HTT
AionUi
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
activepieces
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
cherry-studio
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
CopilotKit
The Frontend for Agents & Generative UI. React + Angular
Machine-readable data
The same record, as JSON, for agents and crawlers.
{
"facts": [
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Clawhub",
"href": "https://clawhub.ai/dlazyai/skills/batch-image",
"sourceUrl": "https://clawhub.ai/dlazyai/skills/batch-image",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-10T20:10:04.361Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-dlazyai-batch-image/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-dlazyai-batch-image/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-10-10T20:10:04.361Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "1.3K downloads",
"href": "https://clawhub.ai/dlazyai/batch-image",
"sourceUrl": "https://clawhub.ai/dlazyai/batch-image",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-10T20:10:04.361Z",
"isPublic": true
},
{
"factKey": "latest_release",
"category": "release",
"label": "Latest release",
"value": "1.0.19",
"href": "https://clawhub.ai/dlazyai/batch-image",
"sourceUrl": "https://clawhub.ai/dlazyai/batch-image",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-10-10T01:45:32.203Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-dlazyai-batch-image/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-dlazyai-batch-image/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
],
"events": [
{
"eventType": "release",
"title": "Release 1.0.19",
"description": "例行版本更新 2026-10-10",
"href": "https://clawhub.ai/dlazyai/batch-image",
"sourceUrl": "https://clawhub.ai/dlazyai/batch-image",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-10-10T01:45:32.203Z",
"isPublic": true
}
]
}Record generated Oct 10, 2026.
