ByteDance AI Image Gen

Other

ByteDance AI Image Gen — 调用豆包/ByteDance Seedream 模型生成图片。 用户通过火山「协作奖励计划」免费使用顶级模型。 支持文生图、图生图(本地路径/URL/base64)、多图融合、组图生成。 智能调度 4.5→5.0Lite→4.0,每模型每日18次,超限拒绝。

Install

openclaw skills install bytedance-ai-image-gen

ByteDance AI Image Gen — 豆包/ByteDance Seedream 图片生成

调用火山方舟 Seedream API 文档 生成/编辑图片,自动选择模型并限制用量。


🚫 行为规则(最高优先级 — 必须遵守!)

以下行为严格禁止,违反任一即为 Bug:

1. 禁止确认配额消耗

  • 永远不要问"这将消耗 1 次配额,是否继续?""今天还剩 X 次,确定要用吗?"之类的问题
  • ✅ 用户调用 Skill 即表示知情并同意消耗配额,直接执行,一个字都别问

2. 禁止询问尺寸/比例/分辨率

  • ❌ 禁止问"用 2K 还是 4K?""什么比例?"等
  • ✅ 自动推断并直接执行:
    • 没提画质 → size="3K"(不传 ratio,API 自适应)
    • 说"4K/高清/超清" → size="4K"(不传 ratio)
    • 说"4K+16:9" → size="4K", ratio="16:9"
    • 说"16:9/宽屏" → size="3K", ratio="16:9"
    • 说"9:16/竖屏" → size="3K", ratio="9:16"
    • 说"21:9/电影" → size="4K", ratio="21:9"
    • 明确写了尺寸 → 按指定
  • 图生图 → 自动检测参考图分辨率

3. 禁止确认执行

  • 永远不要问"要现在执行吗?""确认生成吗?""准备好了,要开始吗?"
  • ✅ 触发即执行,不要等用户二次确认

总结:触发 → 推断参数 → 直接执行。中间不要有任何回合的确认。


触发词(精确匹配,不触发不调用)

触发词例子
/img /image /draw /gen /generate /pic/img 一只猫
生成图片 画一张图 创建图片 制作图片生成图片 海边落日 4K
图生图 img2img image to image edit this image图生图 换背景 url
极致生成: 快速草稿: 艺术风格:极致生成: 赛博朋克城市
generate image create image txt2imggenerate image a cat 2K
画图 帮我画 帮我生成 我想生成 搞个图 来张图帮我画一只柴犬
please generate please draw I want to generateplease draw a sunset
融合 合成 两张图片 多张图片 拼合 合图融合这两张图
blend fuse merge combine compositeblend these images

工作流程

调用 doubao_image_gen.py 脚本:

  1. 检测触发词 — 从用户输入提取 prompt、size、style、图生图标记
  2. 模型选择 — 按 4.5 → 5.0Lite → 4.0 降级,满 18 次跳过
  3. 尺寸自动推断 — 不再询问用户,直接按规则确定
  4. 图片规范化 — 本地路径自动 base64 编码,URL 原样通过
  5. 调用 APIPOST https://ark.cn-beijing.volces.com/api/v3/images/generations
  6. 保存图片 — 下载到 Image/,命名:内容分辨率-模型-时间.png
  7. 记录历史 — 写入 image_gen_history.json,7 天自动清理

调用示例

文生单图

场景Python 调用说明
默认画质g.generate_text_to_image("一只猫")3K,自动计算 4096×2304
指定画质g.generate_text_to_image("一只猫", size="4K")API 自适应宽高
指定画质+比例g.generate_text_to_image("一只猫", size="4K", ratio="16:9")计算最佳分辨率
指定比例g.generate_text_to_image("一只猫", size="3K", ratio="9:16")2304×4096
精准分辨率g.generate_text_to_image("一只猫", size="1920x1080")直接传

文生组图

场景Python 调用说明
默认画质g.generate_sequence("卡通动物系列", max_images=4)3K,自动计算
指定画质g.generate_sequence("科幻场景", max_images=4, size="4K")自适应
指定画质+比例g.generate_sequence("风景系列", max_images=3, size="4K", ratio="16:9")计算最佳

图生单图

场景Python 调用说明
原画质(自适应)g.generate_image_to_image("换背景", image_url=ref)自动检测参考图分辨率
指定画质g.generate_image_to_image("换背景", image_url=ref, size="4K")4K 输出
本地图片g.generate_image_to_image("换背景", image_url="C:/photo.jpg")自动 base64

多图融合

场景Python 调用说明
默认画质g.generate_sequence("融合为未来城市", max_images=1, image_urls=[ref1, ref2])多张参考图融合为 1 张
指定画质+比例g.generate_sequence("融合", max_images=1, image_urls=[ref1, ref2], size="4K", ratio="16:9")指定输出规格
多图融合组图g.generate_sequence("连环画", max_images=3, image_urls=[ref1, ref2])融合后输出多张

状态查询

g.get_status()     # 查看各模型今日用量
g.get_status(show_history=True)  # 含历史记录详情

支持画质: 2K 3K 4K · 比例: 16:9 9:16 1:1 4:3 3:4 21:9 · 最大像素 16,777,216

模型

模型优先级日限
Seedream-4.5118
Seedream-5.0-Lite218
Seedream-4.0318

超限返回 {"success":false,"error":"..."}

🎁 火山「协作奖励计划」

注册火山方舟即可免费使用 Seedream-4.5、5.0-Lite、4.0 等顶级生图模型,无需预充值。详情见 火山方舟文档

配置(.env 文件)

在 Skill 目录下创建 .env 文件:

# 必填
ARK_API_KEY=ark-your-key-here
DOUBAO_MODEL_45_ID=doubao-seedream-4-5-251128
DOUBAO_MODEL_50L_ID=ep-xxxxxxxxxxxx
DOUBAO_MODEL_40_ID=doubao-seedream-4-0-250828

# 可选(控制台用量同步)
VOLCENGINE_ACCESS_KEY=AKLTxxx
VOLCENGINE_SECRET_KEY=your-secret

脚本启动时自动加载 .env,无需手动 export。

获取密钥

文件

文件说明
doubao_image_gen.py核心脚本
.env环境变量配置
image_gen_history.json调用历史+计数 (7天清理)
Image/生成图片保存目录
temp/图生图本地缓存(自动创建/清理)

💬 支持与反馈

如果遇到错误或问题,请在 clawhub.ai 技能页面 下方留言反馈。包括但不限于:

  • 报错信息:完整的错误类型和消息
  • 操作步骤:触发词、提示词、使用的图片
  • 环境信息:操作系统、Python 版本

我会及时查看并修复!