用 Replicate 一键生成玲依四格:我的完整流程记录
从 YAML 场景到 Replicate 出图,我用的是一条「YAML → gen 脚本 → Replicate API」的流水线。这里记完整流程和踩坑点。
1. 流程概览
- 写 YAML:按 玲依 YAML 脚本约定 写好
comic_info和panels。 - 跑 gen 脚本:例如
node gen.js scene_01.yaml --ref reference.png --out ./output,脚本负责读 YAML、拼 prompt、按格顺序调 Replicate。 - Replicate 出图:每格调用一次 Replicate 上的图生图模型(如 nano-banana-2 / 其他 Flux 系),传入参考图、可选前一帧、以及本格 prompt。
- 收图与拼四格:脚本把每格保存为独立文件,再用手工或简单脚本拼成四格图。
2. gen 脚本做什么
- 解析 YAML:读
comic_info和panels,按 panel1~panel4 顺序遍历。 - 拼 prompt:把全局 style、color_scheme、background_style 和当前格的 scene、action、expression、details 拼成一条英文或中文 prompt(视模型而定)。
- 调 Replicate:用官方
replicateNode 包或 HTTP API,每格一次run(model, { prompt, image: 参考图, reference_image: 前一格 });第一格没有「前一格」,只传参考图。 - 写文件:把返回的图片 URL 下载下来,按约定命名(如
scene_01_panel1.png)写到--out目录。
本项目 devDependencies 里已有 replicate,gen 脚本可直接 require('replicate') 或 import 后调用。
3. nano-banana-2 与参考图、前一帧
- 模型:Replicate 上搜索
nano-banana或 Flux 相关 image-to-image 模型,选支持image+prompt的那种;有的模型参数叫reference_image或init_image,需看该模型页的 Input 说明。 - 参考图:即玲依的「定妆照」,每格都传,保证角色一致。
- 前一帧:从第二格开始,把上一格的成图作为
image/init_image传入,本格 prompt 里写「与上一格同一角色、动作/表情接续」,能明显提升连贯性。 - 参数:常见有
prompt、image、strength(对原图保留程度)、guidance_scale等;第一格若用参考图生成,可适当提高strength让角色更稳,后续格可略降以便多一点动作变化。
4. 踩坑记录
- 图片格式与大小:Replicate 多数模型对输入图有大小/比例限制,上传前可先 resize 到 768 或 1024,避免报错。
- 速率限制:连续多格会连续调 API,注意 Replicate 的 rate limit,必要时在 gen 脚本里加
setTimeout或排队。 - 参考图与前一帧谁是谁:有的模型区分「风格/角色参考」和「构图参考」两个输入,需对照文档把「定妆照」和「上一格」分别接到对应参数上。
- 输出路径:建议 gen 脚本里用「场景名 + panel 序号」命名,和 YAML 文件名、博客里的图片路径统一(如
lingyi-daily/xigua/scene_01_xxx.png),方便后续写文章引用。
5. 小结
| 步骤 | 做法 |
|---|---|
| 输入 | YAML 场景 + 一张玲依参考图 |
| 第一格 | 参考图 + 本格 prompt,无前一帧 |
| 第二~四格 | 参考图 + 前一格成图 + 接续 prompt |
| 出图 | Replicate(如 nano-banana-2)按格调用,结果落盘 |
| 发布 | 按命名规范放到博客图床,在文章里引用 |
这样从 YAML 到 Replicate 的一键生成流程就闭环了;配合 参考图与分镜实战 和 YAML 脚本约定,改剧情或风格只需改 YAML 再跑一遍 gen。
6. 附件下载
以下脚本已随本文提供,可直接下载使用。使用前请配置环境变量 REPLICATE_API_TOKEN,并按本地环境修改脚本内的 参考图路径(referenceImagePath)和 YAML 目录(yamlDir)。运行方式:node gen.js 处理全部场景,或 node gen.js 1 3 只生成第 1、3 个场景。
| 文件 | 说明 |
|---|---|
| gen.js | 按 YAML 目录顺序调用 Replicate(google/nano-banana-2),前一帧 + 参考图传入 image_input,输出到各 YAML 同级的 output 目录 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 MagicCat!
评论