遇到「同一条提示词,换个模型或者重跑一次,logo 造型就变了」,先不要急着调提示词。判断顺序通常是:先把模型、尺寸、参考图、提示词全部锁死,只动 seed,看造型到底稳不稳;如果三张图的造型已经各走各的,那么换模型后看到的「风格变化」很可能只是 seed 抽到了不同形状,跟模型没有直接关系。反过来,如果同一 seed 下造型基本一致,只是线条、质感在变,那提示词措辞才是下一轮该动的变量。换模型这一步放在最后做,而且要带上前面两步的记录一起复跑,否则没法区分漂移来自模型还是来自输入。
建议的固定优先级:模型、尺寸、参考图、提示词先固定,只变 seed 跑三张,看造型波动幅度;波动小,说明造型主要由措辞决定,换模型时优先锁 seed 再改提示词;波动大,说明 seed 主导造型,跨模型比较前必须锁同一 seed 数值。边界要清楚:不同模型的 seed 语义不对齐,只能各自和自己模型的基线比,不能把两家模型的同 seed 输出直接画等号。
列出会影响输出的变量,每轮只保留一个变化
做变量控制实验之前,先把会改变输出的项写下来。常见的五项是:提示词、seed、模型、尺寸、参考图。每一轮实验只允许一项变化,其余项从上一轮原样复制,这样两张图的差异才有归因意义。
- 提示词:不要临时在聊天框里手敲,存成文本文件并在文件名里带版本号,例如
prompt_v3.txt。记录时保留原文,包括标点和换行。 - seed:写死成具体数字,不要留空或写 -1。留随机值时这一轮就同时多了一个变量。
- 模型:记录调用时用的模型标识和你能取到的版本信息,同名模型不同版本也可能有差异。
- 尺寸:写成
1024x1024这种明确的宽高,比例变化会直接改变构图。 - 参考图:记文件名加文件哈希,同名替换图片是常见的隐性变量。
一个通用的记录骨架可以这样写,放在每次生成前的配置里,跑完顺手补上产物名和判断:
{
"prompt_file": "prompt_v3.txt",
"seed": 12345,
"model": "model-a",
"size": "1024x1024",
"ref_image": "ref_01.png",
"output": "out_a_s12345.png"
}固定提示词与尺寸,只改 seed 生成三张
这一轮的目的不是选最好看的一张,而是量出 seed 对造型的影响幅度。提示词、模型、尺寸、参考图全部不动,只把 seed 换成三个不同数值,生成三张,并排记录。判断口径先约定好:外轮廓、构图重心、字形骨架这些属于「造型」;边缘圆角、噪点、渐变过渡、局部配色微差属于「细节」。
| seed | 产物文件名 | 造型(轮廓/重心/骨架) | 细节差异 | 判定 |
|---|---|---|---|---|
| 12345 | out_a_s12345.png | 圆形徽章轮廓,重心居中 | 线条略粗 | 基线 |
| 67890 | out_a_s67890.png | 圆形徽章轮廓,重心居中 | 线条偏细,局部留白多 | 同一造型,细节浮动 |
| 24680 | out_a_s24680.png | 外轮廓变尖角,重心上移 | —— | 造型已漂移 |
如果三张的造型一栏基本一致,只有细节在动,那么造型主要不是 seed 决定的,后面比较提示词和模型才有意义。如果像上表第三行那样轮廓和重心都变了,说明 seed 对造型的影响已经很大,此时跨模型的比较必须锁同一个 seed,否则你比较的是两个随机结果。
固定 seed 与尺寸,只改提示词措辞
这一轮把 seed、模型、尺寸、参考图锁死,只改提示词的措辞。改法要克制,一次只改一类词,不要整段重写,否则又变成多变量。可以在文件里保留两版,方便对照:
# prompt_v3.txt
ip mascot, flat vector, thick outline, two colors
# prompt_v4.txt(只把风格词换掉)
ip mascot, 3d clay, soft shadow, two colors改动前后的对照建议按词类分栏记录,这样能看出哪类词改动后变化最明显:
| 词类 | 改前 | 改后 | 变化程度 |
|---|---|---|---|
| 风格/媒介词 | flat vector | 3d clay | 最明显,整体画法改变 |
| 线条/材质词 | thick outline | soft shadow | 中等,轮廓与体积感变化 |
| 颜色词 | two colors | gradient palette | 可见,但不改造型 |
| 修饰性形容词 | minimal | clean | 通常很弱,常被忽略 |
经验上,风格和媒介类词对输出的影响最大,材质词次之,纯修饰形容词最小。如果这一轮只改了修饰词却发现风格大变,先回头确认 seed 和模型是不是被换了,而不是认为措辞有奇效。
换模型时把前两步记录带过去复跑
换模型这一步,必须带着前两轮的记录一起做:同一份提示词原文、同一个 seed 数值、同一个尺寸、同一张参考图,只把模型字段换掉,重新跑一遍,产物文件名里带上模型标识,例如 out_b_s12345.png。这样你手上至少有两套内部一致的样本:模型 A 的基线,和模型 B 在相同输入下的输出。
要注意一个边界:不同模型的 seed 语义通常并不对齐,同一个数字在两家模型里不代表同一个随机状态。所以不要把 A 和 B 的同 seed 图直接当作「同一条件下的对比」,更合理的比较方式是看各自相对自身基线的偏移方向——A 在换措辞后往哪个方向变,B 是不是也往同方向变。如果 B 连同一 seed 下重跑都不稳定,那它带来的差异里有多少是模型特性、有多少是随机性,先用第一步的三张图办法在自己模型内部确认一遍。这一步不做,跨模型结论基本站不住。
把结论写成参数记录模板,供后续复现
实验做完,把结论落成模板,让下一个人能按同样的记录重跑出接近的结果。字段不用多,四块够用:输入、参数、产物文件名、结论。
输入:
prompt_file: prompt_v3.txt
ref_image: ref_01.png
参数:
model: model-a
size: 1024x1024
seed: 12345
changed_var: seed
产物文件名:
out_a_s12345.png
out_a_s67890.png
out_a_s24680.png
结论:
model-a + prompt_v3 下,seed 变化会改变外轮廓形状,
同一 seed 重跑造型稳定,细节有浮动。
因此跨模型比较必须先锁 seed,再改提示词。填写时只写你能从产物里直接看出来的判断,不要写「效果更好」这类没有验证口径的结论。下次换模型或换提示词时,直接复制这份模板,把 changed_var 一栏改成当轮唯一变化的那个变量,其余字段保持原值,就能继续沿用同一套对照逻辑。如果中途发现某个字段取不到确切值,比如模型版本拿不到,就在该字段写「未知」并说明来源,不要留空,也不要用猜测值补上。