技巧九:控制变量法渐进优化

很多人把 AI 生成图片比喻为炼丹,很多时候,也不知道为啥,在 prompt 里加一点神秘配方,图片就会很不一样。

虽然过程很像炼丹,但并不代表我们需要像古人那样,用撞大运的方式炼制丹药。个人认为目前使用 Midjourney 最好的方法是:控制变量渐进优化法。

拿上面那个装备集的图片为例,当我们希望它生成的是装备,并且是一件件地排布,而且光剑的效果也很奇怪,首先我们来逐条排查提示词:

提示词解释
类型是什么?blender 3d, game sheet这个好像有点问题,我们希望的炉石传说的风格,好像不是这种精致的 3D 效果,生成的风格更像是星际争霸的,而炉石传说是那种黏土风格(clay render)。
主体是什么?lightsabers, paladin armor这里可能也有问题,会不会是没有写 different types of lightsabers 导致只生成一种光剑。
背景是什么?不用写这个应该没啥问题
构图是怎样的?不用写这个应该没啥问题
用什么镜头?不用写这个应该没啥问题
是什么风格?style of Hearthstone感觉生成的图没有那种中世纪盔甲的油腻感,但如果前面改了黏土风格,会不会好一些?这里可能也需要优化下。
参数空参数这个应该没啥问题

从这个表里可以看到,我们发现了三个问题,其中第一个黏土风格问题,跟最后一个问题有关,此时个人建议是:

  1. 每次仅修改一个,其余变量不变。
  2. 修改完一条,效果符合预期后,再修改下一个。
  3. 优先修改主体内容,因为主体有的时候会影响其余的变量。
  4. 如果想确定这个修改是否具有一致性,或者说是否符合要求,而不是恰巧符合,可以用相同的提示词再生成一次。

OK,按照以上原则,我们修改一下我们的提示词,看看生成了什么,的确加了 different types of 后,光剑就多了,问题解决了:

Midjourney中文网

然后我们修改下 blender 3d,将其改为 clay render (黏土渲染),改完之后发现生成的结果(左边四张),好像质感还是差了一点,于是又试了下保留 3d blender 加 oily 的效果(中间四张),以及 clay render 加 oily 两个一起用(右边四张)。

Midjourney中文网

对比一下最开始的提示词生成的图片,是不是最终的图片效果更好?所以这个技巧主要想告诉大家,写提示词没有必要照抄答案,你也有能力自己写好提示词。