模型实际在做什么
你的提示词先被编码成一份表示语义的数值。模型从一整片随机噪声出发,一步步把噪声去掉一点,每一步都把画面往「符合这份语义」的方向推。几十步之后,噪声就收敛成了一张图。也有新一类系统改成按顺序预测图像 token 而不是去噪,但对使用者的含义完全一样:你是在从一个分布里采样,而不是在查一张现成的图。
这就是同样的文字能出完全不同画面的原因,也是「模型理解错了」这句话常常应该改成「模型给了你众多成立答案中的一个」的原因。重跑不是绕过问题的手段,本来就是这个工具的用法。
你真正能控的地方
- 提示词。 顺序有影响。靠前的 token 权重更高,所以把最不愿意丢的放最前。
- 随机种子。 唯一能让结果可复现的开关。以后可能还要回头改的图,记下它的种子。
- 画幅比例。 它不是裁剪。同一条提示词要 16:9 和要 2:3,出来的是不同构图,因为模型见过的训练图本身取景方式就不同。
- 参考图。 一旦加了参考图,你就离开这个任务、进入图生图了。
- 反向提示词。 用来压掉反复出现的瑕疵有效,用来替代模型本来不具备的控制力无效。
怎么比较文生图模型
六个维度,几乎没有模型在全部六项上领先:
| 维度 | 用什么测 |
|---|---|
| 提示词遵循度 | 故意写过头的一条提示词,数有几条生效 |
| 文字渲染 | 招牌或标签上一小段带引号的英文 |
| 人体结构 | 手在做事的画面,不是垂着的手 |
| 风格跨度 | 同一主体分别要照片、水墨、3D 渲染 |
| 比例与分辨率 | 你真正要交付的比例,不是方图 |
| 价格与耗时 | 一个想法你能付得起跑几次 |
价格必须进这张表,因为输出方差是这个任务的固有属性。一个便宜到能跑八次的模型,往往胜过一个只够跑两次的更强模型。
一条撑得住的提示词结构
[主体] [在做什么] in [环境], [光线], [镜头与取景], [媒介或风格]
尽量只写一个主体。两个主体一上来,属性绑定就开始失效:你要「红外套的女人和蓝外套的男人」,颜色被交换是常态,因为模型没有可靠机制把每个属性钉在每个人身上。真要两个特定主体,分开生成再用编辑那一步合起来。
三种最浪费 token 的习惯:堆质量形容词(超精细、8k、大师之作),现在的模型基本无视;给互相矛盾的取景(既是大全景又是特写);以及用正面句式写排除项(写「没有手」经常反而召唤出手,因为这几个词无论如何都在场)。
值得认识的几种翻车
英文乱码、三个以上就数不清、多主体之间属性串味、莫名的左右对称、以及风格向模型自带审美塌陷,这些都属于正常现象,而且没有一种是靠「写更多字」解决的。它们各有具体解法:文字事后合真字体、主体拆开生成、换个种子、或者换一个默认审美更接近你要的模型。