OpenClaw 批量生图实战:从 Prompt 到成品画廊

61次阅读

OpenClaw 批量生图实战:从 Prompt 到成品画廊

需要大量配图但没时间一张张做?OpenClaw 的 OpenAI Image Gen 技能让你批量生成 AI 图片,自动生成 HTML 画廊,还能随机采样 Prompt。本文带你搭建”说话就出图”的自动化工作流。


01 为什么批量生图?

传统配图方式的痛点:

OpenClaw 的解决方案:

  • 🎲 随机采样 — 自动生成多样化 Prompt

  • 🖼️ 批量生成 — 一次出 10-20 张图

  • 📁 自动归档 — 生成 index.html 画廊

  • 🔧 灵活配置 — 支持多种模型、尺寸、风格


02 环境准备

安装依赖

# 确保 Python 3 已安装
python3 --version

# 设置 OpenAI API Key
export OPENAI_API_KEY="sk-xxxxxxxx"

配置 OpenClaw

~/.openclaw/openclaw.json 中添加:

{
  "skills": {
    "entries": {
      "openai-image-gen": {"apiKey": "sk-xxxxxxxx"}
    }
  }
}

03 基础用法

快速开始

# 运行生成脚本(默认生成 8 张随机图片)python3 ~/.nvm/versions/node/v22.17.0/lib/node_modules/openclaw/skills/openai-image-gen/scripts/gen.py

# 自动打开画廊
open ~/Projects/tmp/openai-image-gen-*/index.html

💡 提示: 脚本路径可能因安装方式不同而异。如果上述路径不存在,可以通过 find ~/.nvm -name "gen.py" 2>/dev/null | grep openai-image-gen 查找实际路径。

输出结构:

openai-image-gen-20240315-143022/
├── image_001.png
├── image_002.png
├── ...
├── prompts.json          # Prompt 和文件映射
└── index.html            # 画廊页面 

04 实战演示

案例 1:批量生成博客配图

场景: 需要 16 张科技风格博客配图

python3 ~/.nvm/versions/node/v22.17.0/lib/node_modules/openclaw/skills/openai-image-gen/scripts/gen.py \
  --count 16 \
  --model gpt-image-1 \
  --size 1536x1024 \
  --quality high \
  --out-dir ./blog-images

参数说明:

查看结果:

# 打开画廊
open ./blog-images/index.html

浏览器会显示一个网格画廊,点击可查看大图。


案例 2:指定主题生成

场景: 需要一组”太空龙虾”主题图片

python3 ~/.nvm/versions/node/v22.17.0/lib/node_modules/openclaw/skills/openai-image-gen/scripts/gen.py \
  --prompt "ultra-detailed studio photo of a lobster astronaut floating in space, cinematic lighting, 8k" \
  --count 4 \
  --model dall-e-3 \
  --quality hd \
  --style vivid

Prompt 技巧: – ✅ 具体描述:ultra-detailed studio photo – ✅ 指定风格:cinematic lighting, 8k – ✅ 明确主体:lobster astronaut floating in space


案例 3:透明背景 PNG(适合设计)

场景: 需要透明背景的产品图

python3 ~/.openclaw/skills/openai-image-gen/scripts/gen.py \
  --prompt "minimalist icon of a rocket, flat design, white background" \
  --model gpt-image-1 \
  --background transparent \
  --output-format png \
  --count 8

设计用途: – 🎨 直接拖进 Figma/Sketch – 📱 做 App icon – 🌐 网站插图


案例 4:多种尺寸适配不同平台

场景: 同一主题,生成多种尺寸

# 横版(适合博客头图)python3 ~/.nvm/versions/node/v22.17.0/lib/node_modules/openclaw/skills/openai-image-gen/scripts/gen.py \
  --prompt "futuristic city skyline at sunset, neon lights" \
  --size 1536x1024 \
  --count 4 \
  --out-dir ./images/landscape

# 竖版(适合手机壁纸)python3 ~/.nvm/versions/node/v22.17.0/lib/node_modules/openclaw/skills/openai-image-gen/scripts/gen.py \
  --prompt "futuristic city skyline at sunset, neon lights" \
  --size 1024x1536 \
  --count 4 \
  --out-dir ./images/portrait

# 方形(适合社交媒体)python3 ~/.nvm/versions/node/v22.17.0/lib/node_modules/openclaw/skills/openai-image-gen/scripts/gen.py \
  --prompt "futuristic city skyline at sunset, neon lights" \
  --size 1024x1024 \
  --count 4 \
  --out-dir ./images/square

05 模型对比

DALL-E 3 专属参数

python3 ~/.nvm/versions/node/v22.17.0/lib/node_modules/openclaw/skills/openai-image-gen/scripts/gen.py \
  --model dall-e-3 \
  --style vivid \      # vivid = 超现实、戏剧性
  --quality hd \       # hd = 更高质量
  --size 1792x1024     # 超宽屏 

style 选项:vivid — 超现实、戏剧性、更吸睛 – natural — 更自然、写实


06 进阶技巧

技巧 1:自定义 Prompt 模板

编辑 ~/.openclaw/skills/openai-image-gen/scripts/gen.py,修改随机 Prompt 生成逻辑:

# 在脚本中找到 random_prompt() 函数
def random_prompt():
    subjects = ["cat", "dog", "robot", "astronaut", "dragon"]
    styles = ["pixel art", "oil painting", "3D render", "watercolor"]
    settings = ["in a forest", "on Mars", "underwater", "in a cyberpunk city"]

    return f"A {random.choice(subjects)} {random.choice(settings)}, {random.choice(styles)}, detailed, 8k"

技巧 2:批量生成后自动上传到图床

#!/bin/bash
# generate-and-upload.sh

# 1. 生成图片
python3 ~/.nvm/versions/node/v22.17.0/lib/node_modules/openclaw/skills/openai-image-gen/scripts/gen.py \
  --count 10 \
  --out-dir ./output

# 2. 上传到图床(如 Cloudinary)for img in ./output/*.png; do
  curl -X POST https://api.cloudinary.com/v1_1/your-cloud/image/upload \
    -F "file=@$img" \
    -F "upload_preset=your-preset"
done

技巧 3:结合飞书文档自动配图

# 生成图片
python3 ~/.nvm/versions/node/v22.17.0/lib/node_modules/openclaw/skills/openai-image-gen/scripts/gen.py \
  --prompt " 科技感数据图表,蓝色主题 " \
  --count 1 \
  --out-dir ./tmp

# 上传到飞书文档
feishu_doc action="upload_image" doc_token="your-doc-token" file_path="./tmp/image_001.png"

技巧 4:定时生成日报配图

# daily-image.sh
DATE=$(date +%Y%m%d)
python3 ~/.nvm/versions/node/v22.17.0/lib/node_modules/openclaw/skills/openai-image-gen/scripts/gen.py \
  --prompt "daily tech news illustration, $DATE" \
  --count 1 \
  --out-dir ~/daily-images/$DATE

配合 cron:

# 每天早上 8 点生成
0 8 * * * /path/to/daily-image.sh

07 成本优化

省钱技巧: 1. 先用 dall-e-2 批量生成测试 Prompt 2. 选出好的 Prompt 再用 dall-e-3/gpt-image-1 生成高质量版 3. 使用 --count 控制数量,避免浪费


08 常见问题

Q1: 生成失败,提示 API Key 无效

解决:

# 检查环境变量
echo $OPENAI_API_KEY

# 或检查 OpenClaw 配置
cat ~/.openclaw/openclaw.json | jq '.skills.entries["openai-image-gen"].apiKey'

Q2: 生成的图片不符合预期

优化 Prompt: – ❌‘a cat’– ✅‘a fluffy orange tabby cat sitting on a velvet cushion, soft natural lighting, shallow depth of field, professional pet photography’

Q3: 如何生成特定风格的图片?

在 Prompt 中加入风格关键词:pixel art — 像素风 – oil painting — 油画 – 3D render, blender — 3D 渲染 – anime style, studio ghibli — 动漫风 – minimalist, flat design — 极简扁平

Q4: 画廊页面打不开

解决:

# 直接用浏览器打开文件
chrome ./output/index.html

# 或启动本地服务器
cd ./output && python3 -m http.server 8000
# 然后访问 http://localhost:8000

09 总结

下一步: – 尝试不同的 Prompt 组合,建立你的 Prompt 库 – 结合其他技能(如飞书文档)实现自动化配图 – 探索更多 OpenAI Image API 的高级参数


本文是 OpenClaw 进阶技能系列第 3 篇,下一篇:《OpenClaw 语音工作流:听写、合成、通话一条龙》

#OpenClaw #AI 绘图 #DALL-E #批量生成 #内容创作

正文完