前言

本文主要介绍Midjourney提示词的底层逻辑,提示词的写法流派,以及实际运用的技巧。
顺便聊聊,“提示词”通用的叫法有“关键词”和“咒语”,英文是“prompt”。Midjourney出图也被叫为“魔法”,玩家叫“魔法师”。

权重

对于Midjourney来说,在不使用命令的前提,默认不同词汇之间权重值存在有差异,而且词汇的顺序,词汇出现的次数等也会影响权重值。

词汇权重

因为Midjourney对不同词汇的训练程度存在差异,导致不同词汇自身的权重值也不一样,特别是当内容有冲突时,高权重值的词汇,会吞并低权重值的词汇。我们来看下案例图。
提示词:beautiful valley, photography, Van Gogh --v 5 --seed 666
翻译为:美丽的山谷,摄影,梵高使用v5版本,种子编号指定为“666”。
为了方便大家对比效果,理解Midjourney提示词逻辑;本文前几章的案例图,均采用这个种子编号。
image.png
通过图片可以看出「摄影」这个词的效果,已经被「梵高」覆盖,特别是第3张和第4张图,整体偏向绘画作品,没有摄影作品的感觉。这是因为「梵高」这个词的权重大于「摄影」,导致画风会自带“绘画”风格。

顺序权重

我们保持上文的案例描述,如果把「摄影」这个词,放在第一位,会出现什么效果的图呢?
提示词:photography, beautiful valley, Van Gogh --v 5 --seed 666
翻译为:摄影,美丽的山谷,梵高
image.png
除了词汇的顺序做了调整,把「摄影」放在第一位,其他内容都没有变动。但通过对比图片我们可以看出,毫无“梵高”风格的感觉,这次「梵高」词汇的效果被「摄影」覆盖了,因为Midjourney的提示词逻辑,排在前面的词汇权重值更高些。
那么问题来了,如果要保持摄影的感觉,还要保持梵高的感觉,需要怎么调整提示词?

频率权重

还是先看案例图
提示词:photography, beautiful valley, Van Gogh, photo --v 5 --seed 666
翻译为:摄影,美丽的山谷,梵高,照片
image.png
在原来提示词的基础上,「梵高」词汇后面加上了「照片」词汇,通过案例图可以看出整体有点梵高的画风,又有点摄影写实的感觉。这是因为「摄影」「照片」属于同类词,在这个案例中,出现的频率为2次,也就是说,间接强化了“摄影”这种写实风格的感觉。

常见疑问
Q:为什么「照片」要放在「梵高」后面,而不是放在前面呢?
A:因为上一点讲到的“顺序权重”。如果把「照片」这个词汇放得太靠前,就会导致「梵高」的词汇效果被覆盖。

Q:如果不是新增「照片」,而是复制多一次「摄影」词汇,是否有效果呢?
A:先说结论,是“有效果”的;但具体需要结合案例,再调试词汇。
放个案例图对比感受下
image.png

Q:通过权重命令「摄影::2」是不是也可以解决该问题?
A:直接通过权重命令,无法解决词汇覆盖问题。因为权重命令提示词::N,除了设置权重的作用,还会对提示词上下文进行分割解译,新手不推荐使用该命令。
image.png

小结

影响Midjourney提示词权重的基础逻辑有3点:

  1. 词汇自身的权重值,取决Midjourney训练程度
  2. 词汇的顺序越靠前,权重越高
  3. 词汇出现的频率越多,权重越高

联想

不同词汇会有自身的联想性,特别是对于大场景的词汇来说。会把很多相关高频元素打包到这个“词汇”里面。
这感觉就有点像我们说“汽车”,自然而然就包含了对车身、车门、车窗、车轮等词汇的高度概括总结。我们先来看案例,也许就不会那么抽象了。
提示词:A cute little girl walks in the valley on a rainy day --v 5 --seed 666
翻译为:一个可爱的小女孩在雨天的山谷里散步
image.png
通过案例图可以发现,Midjourney对「雨天」的这个词汇的理解,天然的包含了「雨衣、雨伞、雨鞋」等雨天高频常见元素,导致出现小女孩穿着雨具的形象。这也是AI对词汇的联想性。
当我们需要渲染画面整体气氛时,可以借助词汇联想性,通过合适的大场景词汇,进行画面气氛渲染。

污染

前面讲到了提示词的“权重”和“联想”,现在讲讲“污染”这个概念。提示词的污染,其实是因为不同词汇权重叠加,以及部分词汇联想性带来的问题。
先看案例图
提示词:A Porsche 911 drives on a mountain road, trees on both sides of the road --v 5 --seed 666
翻译为:一辆保时捷911行驶在山路上,道路两边都是树
image.png
看示意图目前的效果还挺正常的,现在对提示词加点料,给保时捷911指定个“粉色”。
提示词:A pink Porsche 911 drives on a mountain road, trees on both sides of the road --v 5 --seed 666
翻译为:一辆粉色的保时捷911行驶在山路上,道路两边都是树
image.png
除了对汽车指定了粉色,提示词其他内容都没有变动。通过案例图效果可以看出,「粉色」这个词对画面内容产生了污染,特别是第1、2张图,不止汽车变粉了,连远处的树木也变粉色了。
对于简单场景,通过多刷图,批量跑多张图,最后再选择符合意向的示意图是目前解决词汇“污染”最便捷的方式。
对于复杂场景,需要调整用近义词,调整提示词描述结构,顺序和频率等方式,来解决词汇“污染”的问题。

开放与收拢

了解完前面介绍的Midjourney提示词基础逻辑后,现在来介绍一个提示词的抒写概念“开放”与“收拢”。在写提示词时,并不是词汇堆积得越多,出图效果越好。但是没有具体的描述词汇,AI就会按自由发挥了,往往跟我们脑海里想要的画面会不一致。
“开放”是指只描述核心词汇,不做具体的内容定义,让AI自由发挥。
“收拢”是指具体定义内容,让AI在命题词汇下有限发挥。

先看案例图
提示词:commercial photography, a cake, food photography, studio lighting --v 5 --seed 666
翻译为:商业摄影,一个蛋糕,美食摄影,工作室灯光
image.png
平平无奇的提示语,因为定义简单,导致主体「a cake(一个蛋糕)」和「studio lighting(工作室灯光)」这两个词汇AI不知道怎么处理好,画面就同时出现了蛋糕和灯的元素。

我们来改进下,给蛋糕加一个抽象的感受,用“漂亮的蛋糕”,其他词汇保持不变。
提示词:commercial photography, a beautiful cake, food photography, studio lighting --v 5 --seed 666
翻译为:商业摄影,一个漂亮的蛋糕,美食摄影,工作室灯光
image.png
这时候会发现,蛋糕开始好看一点了,词汇「工作室灯光」也回归光照效果的功能,不会污染画面内容。这是比较常用的“开放”型提示词写法,定义核心词汇,以及抽象的感受描述词即可。

如果我们用“收拢”提示词写法,会是什么效果呢?
提示词:Commercial photography, a cake made of strawberries, oranges, blueberries, pineapple, mango, food photography, studio lighting --v 5 --seed 666
翻译为:商业摄影,一个由草莓,橙子,蓝莓,菠萝,芒果组成的蛋糕,美食摄影,工作室灯光
image.png
通过对比可以看出,我们定义了蛋糕的组成元素,而AI也按我们的命题来进行有限的创作。相比开放性写法的案例,画面中少了花瓣、蜡烛、刀叉等元素,聚焦在提示词定义的水果内容。

“开放”与“收拢”两种写法各有优缺点,当我们不知道要画啥时,可以尝试开放写法。当我们有明确的画面内容时,可以尝试收拢写法。

基础逻辑小结

  • 词汇权重:自带权重差异,顺序靠前优先,频高出现优先
  • 词汇联想:以普通认知为基础,联想相关元素出镜
  • 词汇污染:高权重词指向性弱,容易污染画面
  • 开放与收拢:开放让AI自由发挥,收拢让AI定向输出

提示词流派

目前提示词有几种主流写法,我给它们归类成4种流派。这就像写文章一样,每一人的写法不同,并没有严格的优缺点,但不管什么流派,都离不开上面介绍的基础逻辑。
我们以一只柴犬为案例,看看不同流派会怎么写词。为了对比效果,案例图都统一用--seed 666的种子编号。

狂野堆词派

管他什么逻辑,想到什么画面词汇,堆上就行了,大力出奇迹!
image.png
提示词:epic portrait, greek shiba god, costumes of ancient greece, fine detail, depth of field effect, super detailed photography, milky way, solar system, cinematic moment, studio lighting, by william morris --ar 3:4 --seed 666
翻译:史诗般的肖像,希腊柴犬神,古希腊的服装,精致细节,景深效果,超详细摄影,银河系,太阳系,电影瞬间,工作室照明,by William Morris

有时候还是很容易出效果的,这个流派在AI早期特别火。是新手的最爱,也是AI的最爱,如果玩过AI逆向工程的,应该很熟悉,当我们把图片发给AI,让AI反推内容时,经常会拆解成N个词汇。
这种流派写法,画面内容很容易出现污染源,而且经常会跑题,效率不高。

理想描述派

这个流派讲究框架结构,有较为严谨的逻辑。
常用的结构为:主体+环境+风格+辅助词
image.png
提示词:Epic portrait of Shiba Inu god in ancient greek costume, standing in front of Milky Way and solar system background, by William Morris, super detailed photography, depth of field effect, movie moment, soft studio lighting, depth of field effect, movie moment, --ar 3:4 --seed 666
翻译:史诗般的穿着古希腊服装的柴犬神肖像,站在银河系与太阳系背景前,by William Morris,超详细的摄影,柔和的工作室照明,景深效果,电影瞬间

其实出来的效果也还行,简单场景描述没什么问题。但是复杂场景运用时,容易因为词汇权重的问题,造成部分效果被覆盖,变成无效词。

实用高能派

这个流派讲究精准描述,可以根据提示词基础逻辑,进行自由调整结构。
image.png
提示词:Detailed photography by William Morris, Epic portrait of a Shiba Inu god in ancient Greek attire, Milky Way and Solar system in the background, Depth of field effect, Cinematic moment, Soft studio lighting --ar 3:4 --seed 666
翻译:William Morris风格的详细摄影作品,史诗般的穿着古希腊服装的柴犬神肖像照,背景为银河系与太阳系,景深效果,电影瞬间,柔和的工作室照明

这种写法是通过学习大神案例,以及大量跑图实际测试后,目前复杂场景描述的最优写法。
根据文章一开始介绍的基础逻辑,也就是“词汇的顺序权重”内容。该流派把图像最核心的提示词描述放最开头,可以避免被覆盖。比如上面的“柴犬”案例图,先定义好“这是一幅William Morris风格的摄影作品”,再来描述内容主题,最后是构图环境,灯光等辅助词。
抽象的通用公式为:核心词汇+主体描述+其他辅助词汇
核心词汇可以是媒介、材质、构图、视角等,原则就是图像最核心的影响元素。

隐藏娱乐派

除了以上常见的流派之外,有一种娱乐派写法。还是先上图看看。
image.png
提示词image.png
这个流派纯属娱乐啊,主要想说,纯emoji表情也可以出图的……


至此,Midjourney提示词的基础逻辑和各流派写法就介绍完了。
不同版本对词汇的写法也有细微的差异,比如v5版本对提示词的逻辑语意理解,就不如v5.1和niji5版本。因此了解底层的基础逻辑,再结合自身需求情况,找到自己顺心顺意的写法更优。