技能教程 · TUTORIAL
AI 生图 · 详细教程
通过开放 API 做文生图、图生图、参考图控风格。需要你自己的 API Key,提交任务后轮询取回图片。
这是什么
image-gen 是一个调用开放 API 做图片生成的 skill:文生图、图生图、拿参考图锁定风格再改写,都走它。本 skill 只覆盖图片;要出视频用 video-gen,要配音用 audio-gen。
需要你自己的 API Key:它不内置额度,跑之前要配置好 Key,按平台计费。
适合谁 / 不适合谁
- ✅ 给一段提示词生成图片;拿一张参考图锁定风格再改写。
- ✅ 图生图、局部重绘这类常见出图流程。
- ❌ 不处理视频、音频。
怎么部署
- 下载解压:点页面顶部的「下载 …」拿到 zip,解压得到一个
image-gen/文件夹(里面是SKILL.md和scripts/)。 - 装进 AI 助手:把整个
image-gen/文件夹放进你所用助手的 skills 目录,助手就能自动发现它 ——
- WorkBuddy / CodeBuddy(用户级):
~/.workbuddy/skills/image-gen/,Windows 上是C://Users//<你的用户名>//.workbuddy//skills//image-gen//; - 只想在某个项目里用:
<项目目录>/.workbuddy/skills/image-gen/。
- 配好 Key:这个 skill 要调用平台 API,需要你自己的
sk-Key —— 见下一节「准备:配置 API Key」。 - 用起来:直接跟助手说要做什么(例:「用 Nano Banana 生成一张 …」),它会调用。
准备:配置 API Key
程序按这个顺序找 Key:
- 本 skill 目录下的
api_key.txt; - 环境变量
IMAGEGEN_API_KEY; - 文件
~/.image-gen/api_key.txt; - 都没有 → 到平台官网「开放API」页面创建
sk-开头的 Key(平台 API 域名https://api.lk888.ai),拿到后写入api_key.txt保存。
它已内置接口地址与鉴权方式,你不用关心底层 URL。
用法
# 查图片模型列表 / 某模型参数
python scripts/generate.py --list-models
python scripts/generate.py --show-model <模型name>
# 文生图
python scripts/generate.py --model <模型name> --prompt-file prompt.txt \
--params '{"size":"2048x2048"}' --out ./output
# 图生图:本地文件(自动转 base64)
python scripts/generate.py --model <模型name> --prompt-file prompt.txt \
--image "C:/path/ref.png" --image-param <upload参数name> --out ./output
# 图生图:公网 URL
python scripts/generate.py --model <模型name> --prompt-file prompt.txt \
--image "https://cdn.example.com/ref.jpg" --image-param <upload参数name> --out ./output
中文 prompt 不要直接放命令行参数(Windows GBK 会乱码),先写进 UTF-8 文件用 --prompt-file 传。
以返回的 is_final 为唯一终点,每 5 秒轮询一次,不要按墙钟时间一刀切超时;失败任务余额自动退回。
选型
- 用户点名品牌 → 在
type=image模型列表里按名称/简介匹配。 - 用户没点名 → 优先用列表里排前面的模型(平台已按推荐度排序)。
- 需要图生图/参考图 → 选参数里带
type=upload的模型(该参数即参考图输入位)。 - ⚠️ Midjourney 系模型的结果是一张 2×2 四宫格图(一张图里含 4 个候选画面),不是单张成品。交付时要说明这一点;只要其中一格时,用本地图像工具把该象限裁出来(左上=1、右上=2、左下=3、右下=4)再交付。
参考图的传法
填进模型 type=upload 的参数里(单图为字符串,多图为字符串数组),两种形式可混填:
- 公网 URL(首选):用户给的图床/CDN/COS 链接直接填入。
- base64 data URI(本地文件用这个):
data:image/png;base64,<数据>。仅支持图片(jpeg/png/webp/gif);只能放在 upload 类参数里;大文件优先转成 URL 方式。
已知边界(如实说,不吹)
- 失败任务余额自动退回;按
error.type分类处置(参数错误就改参数、Key 无效就检查 Key、余额不足就充值、频率限制就退避),不要对错误文案做文本匹配。 - 接口行为以平台实时返回为准,模型上下架、参数变化以
--show-model查到的为准。
想要加功能
包里目前是 SKILL.md + scripts/generate.py。想加批量出图、固定风格工作流、或接进你们自己的系统 → 用页面底部的联系方式找我,说清场景,我帮你做。