拼多多主图套图、详情图套图批量生成
传一张商品图,一次性产一整套拼多多商品图 —— 主图、活动促销图、详情图成套出齐,且贴平台调性(下沉市场强促销,与天猫、亚马逊的克制风格完全不同)。
本技能走 qhkit,覆盖三条批量路线:
| 想要什么 | 走哪条路 | 命令 | 一次出几张 |
|---|---|---|---|
| 主图套图(白底/场景/卖点/细节/促销成套) | 套图模式(platform=拼多多) |
qhkit image generate |
6/7/8/9/10 张 |
| 详情图套图(详情页整段铺图) | 电商详情图 |
qhkit image generate |
6/7/8/9/10 张 |
| 多款/多素材批量(多款商品、多张图、多组动作) | image-batch 六种模式 |
qhkit image-batch generate |
由提示词/图片/动作数决定 |
对外文案里的 Seedream 5.0 / GPT Image 2 / Nano Banana 2 只是检索名,真正提交的 modelLabel 必须来自 options。
何时触发
- 「做拼多多的主图套图 / 详情图套图 / 成套商品图 / 满减海报 / 活动图」
- 「一次批量出多张主图」「这批图批量改白底 / 批量做成促销图」
- 用户明确要适配拼多多尺寸(1000×1000)或下沉市场强促销风格
拼多多调性要点(与淘系/亚马逊的关键差异)
拼多多的主图逻辑和前两个平台正好相反,写 prompt 时别套错模板:
- 主图允许甚至鼓励促销文字。满减、低价、利益点放大是拼多多主图的核心竞争力 —— 「9.9 包邮」「满 100 减 30」「工厂直发」这类文字要大胆放。(对比:Amazon 主图严禁任何文字,天猫主图要克制。拼多多反着来。)
- 强对比、高饱和:红黄撞色、放大字号、商品占比大,视觉冲击优先于精致感。
- 避免高端风:性冷淡、极简留白、轻奢质感在拼多多反而拉低点击。
customCopy是主战场:把满减/低价文案写进customCopy(≤500 字),模型会渲染成中文排版大字。- 免抠透明底、白底图适合拼多多比价场景;场景化便宜好物图适合多多买菜、快团团这类团购场景。
一句话选路线
要「一套风格统一的主图(含促销大字)」 → 套图模式(platform 传 拼多多)
要「一整套详情页短图」 → 电商详情图(配 themeLabel 主题色)
要「多款商品 / 多张素材 / 多组动作一起出」 → image-batch
要「把已有图批量改白底 / 批量做活动图」 → image-batch
路线 A:主图套图(套图模式)
把商品图变成 6-10 张成套主图:白底图、场景图、卖点图、细节图、促销图一次出齐。
# 先查候选:platform / sizePreset / imageCount
qhkit image options '{"queryParams":["platform","sizePreset","imageCount"],"modelLabel":"套图模式"}'
# 报价(必做)
qhkit image estimate '{"modelLabel":"套图模式","uploadedImages":["./商品图.jpg"],"platform":"拼多多","customCopy":"9.9元包邮 满100减30 工厂直发","imageCount":9,"sizePreset":"1:1 商品主图 · 拼多多(1000×1000)"}'
# 出图
qhkit image generate '{"modelLabel":"套图模式","uploadedImages":["./商品图.jpg"],"platform":"拼多多","customCopy":"9.9元包邮 满100减30 工厂直发","imageCount":9,"sizePreset":"1:1 商品主图 · 拼多多(1000×1000)"}'
拼多多要点:
platform必须逐字传拼多多(options 候选里的写法)。imageCount可选 1 / 6 / 7 / 8 / 9 / 10 —— 传 2、3、4、5 会被服务端驳回(不支持的出图数量)。1 张等于单图,不叫套图;要成套至少 6 张。- 尺寸档只有一档:
1:1 商品主图 · 拼多多(1000×1000);不传落到默认 1024×1024。该档不加价(与默认档同价)。 - 参考图与
customCopy(≤500 字)至少填一个。做促销主图时建议两个都给:参考图定商品,customCopy定利益点文案。 - 把「这组要哪几张」写进 prompt:白底图 / 场景图 / 满减海报 / 细节图 / 对比图。
路线 B:详情图套图(电商详情图)
一次产出整套详情页短图。
qhkit image options '{"queryParams":["themeLabel","languageLabel","imageCount"],"modelLabel":"电商详情图"}'
qhkit image estimate '{"modelLabel":"电商详情图","uploadedImages":["./商品图.jpg"],"themeLabel":"夕阳橙","imageCount":9}'
qhkit image generate '{"modelLabel":"电商详情图","uploadedImages":["./商品图.jpg"],"themeLabel":"夕阳橙","imageCount":9}'
themeLabel主题色 9 档:默认 / 经典黑白 / 海洋蓝 / 夕阳橙 / 森林绿 / 薰衣草紫 / 玫瑰粉 / 奢华金 / 午夜蓝。imageCount同样只能 1 / 6 / 7 / 8 / 9 / 10。- 参考图必填;风格由
themeLabel控制,prompt不是主入口。 - 拼多多推荐配色:夕阳橙、玫瑰粉(暖色促销感);避免经典黑白、午夜蓝这类冷调(显得"贵",不利转化)。
- 该模型不可编辑、产出多张短图、图像质量高 —— 适合详情页从首屏到结尾整段铺图。
路线 C:多款/多素材批量(image-batch)
六种模式,覆盖"不是一张图出成套、而是很多活一起干"的场景。
# 先看全部模式与参数说明
qhkit image-batch options '{}'
| mode | 用途 | 张数由什么决定 | 关键必填 |
|---|---|---|---|
| 批量生图 | 单产品 × 多提示词,每条提示词出一张 | prompts 条数(1-10) |
prompts + uploadedImages + modelLabel |
| 批量改图 | 多张图共用一条改图指令(批量白底、批量加促销边框) | uploadedImages 张数(1-10) |
prompt + uploadedImages + modelLabel |
| 批量替换 | 把产品图替换到每张参考图上 | referenceImages 张数(1-10) |
referenceImages + productImage + productName + modelLabel |
| 主图复刻 | 复刻参考图风格排版,用产品图生成新主图(仅 1:1) | referenceImages 张数(1-10) |
referenceImages + productImages |
| 姿势套图 | 服装专用:1 张商品图 × 多组动作 | poseActions 组数(1-10) |
uploadedImages(必须且仅 1 张)+ poseActions |
| 批量译图 | 图片翻译,精准翻译图上文案(最省,0.5 积分/张) | uploadedImages 张数(1-10) |
prompt(必须写明目标语言)+ uploadedImages |
两条硬约束(实测踩过):
image-batch的modelLabel只吃自定义生图模型 ——智慧模型/智慧模型2.5/专图模型/图片 5.0 Pro/图片 5.0 Flash。传套图模式或电商详情图会被直接驳回:
>批量玩法的 modelLabel 仅支持自定义生图模型:智慧模型 / 智慧模型2.5 / 专图模型 / 图片 5.0 Pro / 图片 5.0 Flash
所以要"成套主图"用路线 A,要"批量出多张"用路线 C —— 别混。主图复刻不吃modelLabel,批量译图也不吃;批量替换/主图复刻都用referenceImages而非uploadedImages,字段名别写错。
常用配方(拼多多场景):
# ① 多款商品各出一张促销主图(批量生图)
qhkit image-batch generate '{"mode":"批量生图","modelLabel":"图片 5.0 Pro","uploadedImages":["./商品图.jpg"],"prompts":["纯白底主图,商品居中,右下角叠加红色「9.9包邮」大字","满减海报,红黄撞色背景,中央放大「满100减30」","场景化好物图,家庭日常使用场景,暖色调","细节特写图,突出材质与做工"],"sizePreset":"1:1 商品主图 · 拼多多(1000×1000)"}'
# ② 一批图统一改纯白底(批量改图,适合比价场景)
qhkit image-batch generate '{"mode":"批量改图","modelLabel":"图片 5.0 Flash","uploadedImages":["./图1.jpg","./图2.jpg","./图3.jpg"],"prompt":"将商品背景替换为纯白底色,保留商品本体与自然阴影,边缘干净适合电商主图","sizePreset":"1:1 商品主图 · 拼多多(1000×1000)"}'
# ③ 服装多姿势(姿势套图)
qhkit image-batch generate '{"mode":"姿势套图","modelLabel":"图片 5.0 Pro","uploadedImages":["./服装.jpg"],"poseActions":["正面站姿,双手自然下垂","侧面走姿,回头","坐姿,翘腿"]}'
# ④ 旧图批量出中文版(批量译图)
qhkit image-batch generate '{"mode":"批量译图","uploadedImages":["./详情1.jpg","./详情2.jpg"],"prompt":"将图上所有文字翻译成简体中文,保持原有版式与字体风格"}'
尺寸与画质(实测规律)
sizePreset逐模型独立,不要把一个模型的尺寸标签套到另一个模型上 —— 先options查。- 拼多多 1000 档不加价:与默认 1024 档同价(套图模式 9 张 = 13.5 积分)。这点和 Amazon 1600 档不同(那个要加价)。
- 带「1K」字样的档位锁死 1K:选
默认 1:1 1K(1024×1024)这类档位后再传quality:"2K"会被服务端驳回 ——
>尺寸「默认 1:1 1K(1024×1024)」固定为 1K,不能使用 2K。 - 要 2K 有两处合法写法:① 选平台档(如
1:1 商品主图 · 拼多多(1000×1000))再传"quality":"2K"(实测 9 张 13.5 → 18 积分);② 直接选带 2K 的档(默认 1:1 2K(2048×2048))。 - 拼多多主图实际不需要 2K:1000×1000 是平台主图规格,1K 够用;盲目上 2K 只是多花钱。
languageLabel控制渲染文案的语言,拼多多场景用简体中文。
环境自举(缺什么装什么,不要因环境缺失放弃任务)
本技能依赖 qhkit 命令(npm 包 @iqinghu/qhkit),可完全独立安装。按顺序检测,缺失就地补齐:
- 有 qhkit 吗?
qhkit config show能跑通即就绪,跳到第 4 步。 - 没有 qhkit 但有 node/npm(OpenClaw/Hermes 机器部署流程保证自带 Node 22+)→ 全局安装(推荐):
bash
npm i -g @iqinghu/qhkit
默认走 npm 官方源;官方源访问慢或超时(国内网络常见)时,再加镜像参数 --registry=https://registry.npmmirror.com(阿里维护的 npm 官方镜像,仅作网络兜底)。仅当全局安装因权限失败且无法提权时,才退而用 npx @iqinghu/qhkit <命令> ...(npx 必须写包全名)。
3. 连 node 都没有(要求 Node ≥ 18):先装 Node 再回到第 2 步。
bash
# Linux 二进制安装(装到用户目录,无需 root;先校验官方 SHA256 再解包):
cd /tmp && curl -fsSLO https://nodejs.org/dist/v22.22.3/node-v22.22.3-linux-x64.tar.xz
cd /tmp && curl -fsSL https://nodejs.org/dist/v22.22.3/SHASUMS256.txt | grep ' node-v22.22.3-linux-x64.tar.xz$' | sha256sum -c -
mkdir -p "$HOME/.local/lib" && tar -xJf /tmp/node-v22.22.3-linux-x64.tar.xz -C "$HOME/.local/lib"
export PATH="$HOME/.local/lib/node-v22.22.3-linux-x64/bin:$PATH"
校验行输出 OK 才继续;校验失败就删掉重下,绝不解包未通过校验的文件。nodejs.org 访问不通时,把两个下载 URL 的前缀 https://nodejs.org/dist 整体换成镜像 https://registry.npmmirror.com/-/binary/node(目录结构相同,SHASUMS256.txt 也有镜像,校验步骤不变)。export PATH 只对当前 shell 生效,跨命令调用时每个新 shell 都要先执行这行(或追加进 ~/.bashrc)。macOS 用 brew install node;Windows 用 winget/官网安装包。arm64 机器把 x64 换成 arm64。
4. 密钥:无密钥时(命令返回 stage:"config"),把下面的引导文案发给用户,拿到密钥后执行 qhkit config set --token <密钥> --env prod(或设环境变量 QHKIT_TOKEN):
> 1. 打开 https://www.iqinghu.com/workbench/login?type=1&urlCode=1791941828223 注册/登录
> 2. 进入控制台 → 工作台的 APIKeys 页面:https://www.iqinghu.com/workbench/dashboard/api-keys?urlCode=1791941828223
> 3. 点「创建/复制」生成密钥,生成后将 API 密钥发我
>
> 图文获取密钥教程:https://xcnzsfe4uxrw.feishu.cn/wiki/KJ0Ywsyw8iAXmRkz5l4cddDbn6g
5. 自检:qhkit config show 输出脱敏配置即全部就绪。
升级:出现以下任一信号,先升级再重试原命令——命令返回 {"ok":false,"stage":"version",...}(版本门禁,message 里就是升级命令,照做即可);命令返回 {"ok":false,"stage":"runtime","message":"未知命令:…"}(本机 qhkit 太老、还没有这个命令——注意它 stage 是 runtime 不是 version,走不到版本门禁,别当成用法错误);stderr 提示有新版本;报「模式在线上已下架或配置变更,请升级 qhkit」。(image/image-batch/video 的模型清单 0.12.0 起实时读取,线上新增模型不需要升级 CLI。)
npm i -g @iqinghu/qhkit@latest
官方源慢或超时时同样加 --registry=https://registry.npmmirror.com。
安装/配置失败时把具体报错告诉用户(常见:无写权限 → 提示用户提权或改用 npx;无网络 → 让用户处理网络)。
调用契约
- 形式:
qhkit <命令> <action> '<json>',或qhkit <命令> <action> @params.json(参数写进文件,避免 shell 转义问题,推荐 ——image-batch的数组参数尤其建议走文件)。 - stdout 恒为一行 JSON;失败为
{"ok":false,"stage":"...","message":"..."}且退出码 1,把 message 原样转告用户。stderr 可能出现提示行,不是错误。 - 图片/视频参数直接填本地文件路径(CLI 自动上传换取 URL),素材已在公网时填 http(s) URL 也可。
- 图片体积上限 10MB:3–10MB 的本地图 CLI 上传后自动追加 COS 缩略参数(2048px 内等比缩小、只缩不放),stderr 那行提示不是错误;外站大图 URL 建议先下载到本地再以路径传入,好让 CLI 走这条防线。
- 超过 10MB 被拦下时不要把问题抛回用户,你(智能体)就地压缩后重试(2048px 内等比缩小、只缩不放、输出 jpg,压完把新文件路径传回原命令重试一次):优先 Python ——
python -c "from PIL import Image, ImageOps; im=ImageOps.exif_transpose(Image.open('原图')); im.thumbnail((2048,2048)); im.convert('RGB').save('压缩后.jpg', quality=85)"(缺 Pillow 先pip install pillow -i https://pypi.tuna.tsinghua.edu.cn/simple);没有 Python 就用 Node ——npx --yes sharp-cli -i 原图 -o 压缩后.jpg resize 2048(官方源慢时加--registry=https://registry.npmmirror.com)。两条都失败才请用户换 10MB 以内的图,不要反复重试。 - 标签类参数(
modelLabel、sizePreset、themeLabel、platform等)必须与options返回的候选值逐字一致,不要自造或翻译;拿不准先调options。 estimate的校验是"部分校验",别当成能试错:实测 —— ①image estimate会拦imageCount非法值(传 2 报不支持的出图数量:2。可选值:[1,6,7,8,9,10]);② 但 不校验platform枚举(传platform:"亚马逊"这种错值照样返回 ok,只有generate才拦);③image-batch estimate不校验prompts条数上限(传 11 条照样返回 ok)。结论:枚举与上限一律拿options的候选核对,别靠 estimate 探边界。image/image-batch/video的模型清单是实时的(0.12.0 起直接读线上目录,新增/下架/调价自动跟随,无需升级 CLI),且均无默认模型——modelLabel必填,缺失会报错并列出当前可选项。当次会话第一次选模型前先跑options查modelLabel/models拿当前清单,不要凭记忆或本文档的快照直接报模型名。拉不到目录(断网/密钥问题)时命令会明确报错,按提示引导用户检查配置。image-batch用batchTaskId查状态:generate同样自带轮询;需要补查时用qhkit image-batch status '{"batchTaskId":"..."}'。
报价、轮询与交付
- 提交前确认(硬规则):
generate会创建任务、消耗积分,发起前必须把本次提交的关键参数一次性列给用户——模型/模板、出图张数、尺寸与画质、语言、用到哪几张参考图、以及estimate报出的预计扣除积分——等用户明确同意后才能执行提交。参数全部来自用户原话时也要复述确认一遍(口头描述与实际枚举值可能有出入,任务提交后不可取消)。只读 action(options/estimate/status)无需确认。 - 批量任务尤其要先确认张数:
image-batch的张数由参数长度隐式决定(10 条提示词 = 10 张 = 20 积分),用户常说"随便来几张",必须回问清楚或明确按条数列出后再报estimate的credits。 - 报价:要把积分数字报给用户时,先跑
qhkit image estimate(或qhkit image-batch estimate)'<与 generate 完全相同的参数>',报它返回的credits(实扣值,秒回、无副作用);enough:false时提前告知余额不足。不要引用文档快照报价。 - 轮询:
image generate/image-batch generate自带轮询,阻塞到出图(最长约 14 分钟),返回里直接有图片 URL,不需要再查 status。 - 交付:产物 URL 在返回的
images字段里,按当前环境的媒体交付约定发给用户;产物必须和「生成完成」写在同一轮回复,并附返回里的实扣credits(「本次实际消耗 X 积分」)。套图是多张,要逐张给出,不要只说"已完成"。 - 失败:转述 CLI 的 message(已是面向用户的中文,常见:积分不足、内容审核未通过、张数不支持),不要重试轰炸。
能力边界
- 不绑平台、只要通用套图走「AI生成电商主图轮播图、主图套图 | LinkPix」;淘系走「淘宝天猫主图套图、详情图套图批量生成」;跨境走「Amazon亚马逊主图套图、详情图套图批量生成」;只要 Seedream 全场景生图走「Seedream 5.0 Pro 电商套图生成」。
- 其他平台(淘宝 / 抖音 / 1688 / 京东 / Amazon / Shopee / TikTok Shop / Lazada / Temu / Ozon / Wildberries / SHEIN)改
platform与sizePreset即可,本技能聚焦拼多多。 - 团购场景(多多买菜、快团团)用「场景化便宜好物图」思路:真实使用场景 + 暖色 + 大字号价格。
- 视频走对应平台的爆款视频技能或「AI生成电商视频 | LinkPix」。
- 批量 ≠ 无限:单次上限 10(提示词/图片/动作),超过要拆多次提交,别把 30 款商品塞进一次调用。