转载自: Stable Diffusion 出图必备脚本神器

细心的同学看完前面的课程

肯定会发现案例中经常会有一些参数对比图、混合模式的对比这种效果

这个就是 SD 提供的脚本功能,

这一节我们就来讲讲 SD 最常使用的三个脚本工具: 提示词矩阵、批量提示词和X/Y/Z图表

一 Prompt Matrix 提示词矩阵

如果我们希望比较几个提示词的融合关系,

那我们可以使用 提示词矩阵来实现我们的需求。

比如:我们想要比较 复古风格和Q版风格 对现有 prompt 的影响,那么我们就可以根据以下步骤操作

  1. 打开 提示矩阵脚本功能

2. 给出提示词 (|chibi|retro artstyle)

best quality, ultra-detailed, masterpiece, hires, 8k,

pov,stand up,
1girl,big eye,wear long hoodie,casual pants
|chibi|retro artstyle

最终就可以得到四张效果图:

二 X/Y/Z 图表

1.字符类参数

如果我们希望对比不同的参数对原有的 prompt 的影响。

比如迭代步数、模型或者是prompt中的提示词,那么就可以使用 这个脚本来实现。

**举个例子:**我们希望比较不同的采样方法(Euler a, DPM++ 2M Karras)来渲染不同的发型(ahoge, blunt bangs, drill , bun, wavy),他们的效果是什么样的

best quality, ultra-detailed, masterpiece, hires, 8k,

pov,stand up,
1girl,big eye,wear long hoodie,casual pants,
ahoge hair

先看效果:

这个例子中:

  • X轴-提示词搜索/替换:SD 会拿着 X轴值中的第一个词在 prompt 中找,然后进行挨个替换成 X轴中的每一个提示词进行出题
  • Y轴-采样方法:这个就直接将 Y轴值中的每一个采样方法进行挨个使用

2.数值类参数

还有一种是数值类的参数比较,比如迭代步数

举个例子: 我们想要在同一模型下,比较不同迭代步数(10-90)对出图的影响,跨度步数为10,每10步出一张图,那我们就可以这样填

如果我们不想按10步为跨度进行出图。希望整个范围就出5张,让 SD 自己平均划分。

举个例子: 设置的迭代步数为 10-90,希望出十张图,那么我们可以直接填写 10-90[10] 即可

三 批量提示词出图

如果我们希望根据多个不同的 prompt 提示词进行出图,每个prompt的反向词,参数也不同,那么我们就可以使用这种方式来进行批量出图。

首先 :我们先打开 批量提示词出图 脚本

目前支持两种方式: 直接输入文本、上传文件

不管是直接文本输入还是上传文件,其格式是一样的,每一行只写一条记录

格式:

--prompt "1dog" --negative_prompt "nsfw" --width 512 --height 512 --sample_name "Euler a" --step 20 --batch_size 1 --cfg_scale 7 --seed -1

  • --prompt 正向提示词
  • --negative_prompt 反向提示词
  • --sample_name 采样方法
  • --cfg_scale 相关性
“sd_model”:模型名称

“outpath_samples”:样本输出路径

“outpath_grids”:网格输出路径

“prompt_for_display”:用于展示的提示词

“prompt”:正向提示词

“negative_prompt”:负面提示词

“styles”:提示词模板(你自己设置的提示词模板)

“seed”:随机种子

“subseed_strength”:次级种子强度

“subseed”:次级种子

“seed_resize_from_h”:次级种子高度

“seed_resize_from_w”:次级种子宽度

“sampler_index”:采样器索引

“sampler_name”:采样器名称

“batch_size”:生成批次

“n_iter”:每批数量

“steps”:采样迭代步数

“cfg_scale”:提词相关性

“width”:宽度

“height”:高度

“restore_faces”:面部修复

“tiling”:平铺

“do_not_save_samples”:不保存样本

“do_not_save_grid”:不保存网格

举个例子: 给出两个完整的 prompt,一个是画一只猫,一个是狗,那么我们就可以在文本输入框内填

--prompt "1dog" --negative\_prompt "nsfw" --width 512 --height 512 --sample\_name "Euler a" --step 20 --batch\_size 1 --cfg\_scale 7 --seed -1 
--prompt "1cat" --negative\_prompt "nsfw" --width 512 --height 768 --sample\_name "Euler a" --step 20 --batch\_size 1 --cfg\_scale 7 --seed -1 

【持续更新】Stable Diffusion 集合系列文章:点点关注不迷路😋

  1. 5 分钟快速上手体验 AI 绘画[1]
  2. Stable Diffusion 文生图全网最细详解[2]
  3. 如何写出更优雅的 Prompt[3]
  4. Stable Diffusion Prompt 进阶,更好的控制 Prompt 出图细节

参考资料

[1]

5 分钟快速上手体验 AI 绘画: mp.weixin.qq.com/s?__biz=MzA…

[2]

Stable Diffusion 文生图全网最细详解: mp.weixin.qq.com/s?__biz=MzA…

[3]

如何写出更优雅的 Prompt: mp.weixin.qq.com/s?__biz=MzA…

本文使用 mdnice 排版