应部分网友的提问要求,再普及一下关于提示词书写方面的概念及语义解析!
上篇文中,已经提到了,在撰写提示词(prompt)前,我们要先了解一件事:AI是没有概念的。
为什么这么说呢?下面举例说明(text-to-image):
现在给SD输入小红帽(Little Red Riding Hood girl),偶尔它会跑出很迷的图,比如下面这张
额。。。(红帽子哪里去了呢?!) O(∩_∩)O
因为对AI来说,它不理解什么是“小红帽”,只好给你画一个包括“红色、兜帽、年轻女生”元素的图。
所以如果你想要AI画出小红帽,你必须给它拆解小红帽包含哪些元素:
小红帽=红色裙子+白色围裙+头带红色兜帽+食物篮+蝴蝶结+可爱女孩(童)
输入这些提示词之后,我们终于可以得出基本正确的图像,如下图:
这就是为什么AI画手总是失败的原因。
对我们人类来讲,手就是手,包括手掌和手指,可以握可以抓,可以做各种动作,是身体的一部分。但对AI而言,这不过是“一个类似正方形的平面几何体,前端延伸出好几个长方形”。
既然AI没有没“手”这个概念,长方形(手指)的生长方向自然有N个可能性,于是残废手出现了。
打个比喻,我们人类假如被要求“在1个花盆内栽种植物”,我们只会种一株单一种类的植物(比如种一盆菊花),但AI会在同一花盆内种满玫瑰、菊花、百合、剑兰和酢酱草。
虽然本质上讲同样是“在1个花盆内栽种植物”,但AI没有“1个花盆最好只种1株植物”的概念,于是出现了混乱的结果。
如果把花盆换成手掌心,植物换成手指,这样是否更易理解了呢?
就目前AI发展来说,这个问题无解。
所以AI画男人,即使用sweetboys这种专画男人的模型,偶尔仍然会跑出女人或者外貌极度女性化的男人,这亦是出于同一道理──AI没有性别的概念。
所以要画出男性,你必须给它拆解后才可以训练它准确生图。
正太=5岁男童+裤子+活泼好动+可爱+小学生+不穿裙子+短发
男医生=成人+男性+英俊的+冷酷+宽阔的肩膀+肌肉+白大褂+听诊器
这才是撰写提示词(prompt)的正确方式,好的提示词不是堆砌多少细节,而是使AI明白你想要画的重点。
P.S. 反过来说,正因为AI没概念,有时反而可以用来强化构图,比如说我想画帅气的军装女生,,只要在提示词内加上1 boy,有机会抽出帅气的美少女~
上图,对比来看:
两者设置条件+模型是一样的,但假如在提示词中加上BOY,4张图中有一半是裤子,露出度也没这样高。
通过对比后,应该更清楚了吧。
好了,有了这个认知后,我们可以开始撰写提示词咯~