快轉到主要內容

ComfyUI學習使用提示詞 (prompt)

· 民國114年乙巳年
· ·
分類   開源AI應用 AI繪圖教學
標籤   ComfyUI
目錄
ComfyUI使用教學 - 點選展開系列文
10: 現在位置

教學ComfyUI生圖的提示詞寫法。

我們來看提示詞要怎麼寫,以文生圖的提示詞為主。

不論用哪個模式生圖,生圖模型都是吃提示詞(prompt)來決定生成內容的。prompt,通俗的講法叫關鍵字、咒語、指令。

通常,你會在ComfyUI工作流看到CLIP Text Encode (Prompt)的節點,接到KSampler節點的positive槽位,那個就是填寫提示詞的地方,告訴AI要生成哪些東西。

如果有第二個CLIP Text Encode (Prompt)節點,接到KSampler節點的negative槽位,那就是負向提示詞 (Negative prompt),告訴AI不要生成哪些東西。

目前生圖模型幾乎都是用英文資料訓練,所以提示詞要用英文輸入。 若你真的英文不好,可以安裝翻譯用的自訂節點,降低語言隔閡。

要注意的是,AI生圖目前還沒有涵蓋全宇宙所有圖片的模型,所以除了提示詞外,使用的生圖模型亦會大大的影響生成結果。譬如,用寫實風格的Stable Diffusion模型畫動漫人物,效果絕對會比使用PonyDiffusion差的許多,因此在學會下提示詞以前,要先按照用途挑選適合的模型。

本文的範例,都是使用ComfyUI的「文生圖」工作流作為示範。請選擇你看得習慣的生圖模型就好。

1. 提示詞 Prompt
#

  1. 下提示詞時,利用人事時地物的概念,寫個英文句子描述圖內場景,盡量將想看到的提示詞排在前面。例如在提示詞的欄位填入「一個亞洲女孩在沙灘上」,負向提示詞留空
an asian girl on the beach
  1. 不過英文不好的人其實不用寫整個句子,用單字加逗號將想看的特徵點出來通常就有不錯效果。且實務上我們會希望測試更多參數,例如加入畫風、要模仿的藝術家風格、身體特徵等,因此用逗號更方便調整。將圖片特徵拆成單字就會變成下面這樣:
; (繪圖時請刪除此行) 參考翻譯:一個女孩,亞洲人,沙灘,海洋
1girl, asian, beach, ocean

再算一次,但是結果變了?沒錯,即使提示詞相近,AI繪圖每次生圖結果都是隨機的。要維持上一次的結果並微調,你得保留每次算圖的種子碼(seed)。

  1. 接著可以多指定一點細節:這個女孩眼睛是什麼顏色的?髮型是什麼?有戴帽子嗎?是站著還是坐著呢?身上穿的是什麼衣服?天空是什麼顏色的?
; 參考翻譯:一個女孩,亞洲人,藍眼睛,短髮,草帽,站著,藍色比基尼,沙灘,海洋,橘色天空
1girl, asian, blue eyes, short hair, straw hat, standing, blue bikini, beach, ocean, orange sky

呼,好像一口氣加太多細節了呢,詳述細節的好處是避免AI亂生成,但也限制了其作畫創意。所以下面的例子會縮短,有時候讓AI隨機抽獎也不壞呀~

  1. 要改變風格,可以在提示詞加入「風格」的提示詞。這方面的提示詞有:相片(photoshop)、3D建模(3d model)、裝飾藝術(art deco)、石像(stone sculpture)等風格。
; 參考翻譯:一個女孩的石像,亞洲人,藍眼睛,沙灘,海洋
a stone sculpture of 1girl, asian, blue eyes, beach, ocean

但我使用的模型已是專攻動漫風格的模型,所以不用特別指定要畫出哪種風格,它一律都會是動漫風的圖片,很難畫出真人照片,所以說挑對模型很重要啊。

  1. 風格是很難界定的東西呢,一般來說我們會圖片像哪個藝術家的風格對吧?那麼不如直接「召喚」他們吧!提示詞可以包含某位畫家的名字,AI會嘗試模仿其風格。例如加上「慕夏的作品」,並加入「大師級作品」的風格提示詞:
; 參考翻譯:慕夏的作品,大師級作品,一個女孩,亞洲人,藍眼睛,沙灘,海洋
artwork by Alfons Maria Mucha, masterpiece, 1girl, asian, blue eyes, beach, ocean

生圖的結果就會變得像是慕夏的作品。順帶一提masterpiece這個提示詞還蠻萬用的,可以讓作品維持一定水準。

  1. 當然還可以畫特定動漫人物的「二創」,只要將名字和作品名稱打上去就可以了。有名的動漫角色只要出現名字,不用特別指定身體特徵就會生成原作風格了,例如指定《新世紀福音戰士》的惣流·明日香·蘭格雷:
; 參考翻譯:新世紀福音戰士的明日香,大師級作品,一個女孩,沙灘,海洋
asuka_langley_souryuu from neon_genesis_evangelion, masterpiece, 1girl, beach, ocean

再次提醒,在下提示詞的時候,生成圖片使用的模型也需納入考量。譬如想要生成特定動漫人物,去Danbooru找到了英文姓名,加上提示詞,但你卻用畫真人的Stable Diffusion去算,則AI可能根本就不會認得你說的角色是誰,反之亦然。Danbooru的標籤風格跟一般圖片的描述還是有差距的。

除非日後有蒐羅全部網路圖片的超大模型出現,否則下提示詞須配合模型種類來決定。

如果AI怎樣都生成不出你要的風格或人物,請考慮換個模型,或是自行訓練模型。

2. 負向提示詞 Negative Prompts
#

上面的例子,我們只有寫提示詞,但下面的負向提示詞的欄位都是空白。但生圖時常常還需要加入一些負向提示詞,避免掉不好的結果。AI繪圖有時不會一次就算出好結果,所以還需要加上負向提示詞來控制,尤其是大批算圖的時候更為重要。

註:有些模型不需要負向提示詞也能生圖。

  1. 負向提示詞會加入一些常見的「不好」的圖片特徵,例如低畫質、最糟品質、畫家簽名、模糊、浮水印
deformed, lowres, bad anatomy, text, error, extra digit, fewer digits, cropped, worst quality, low quality, normal quality, jpeg artifacts, signature, watermark, username, blurry, artist name
  1. 不想看到的東西也可以加進去。例如不想看到裸露、兵器、血、獵奇的元素出現,就加入nsfwweaponbloodguro至負向提示詞
nsfw, weapon, blood, guro, lowres, bad anatomy, text, error, extra digit, fewer digits, cropped, worst quality, low quality, normal quality, jpeg artifacts,signature, watermark, username, blurry, artist name

提示詞並非越多越好,正向提示詞以不超過150個詞元(token)為原則;不過負向提示詞可以盡量把不想看到的都塞進去。

3. ComfyUI提示詞的特殊語法
#

此節列出的語法為ComfyUI獨有。

如果你需要新增更多提示詞語法,通常能夠用自訂節點的方式達成。

關注度括號
#

控制關注度的符號,增加算圖時對該提示詞的關注度。簡單來說,括號就是你想強調的重點元素,括號越多,生成的結果越可能符合括號裡的提示詞。

ComfyUI使用小括號控制關注度: ( ) 小括號層次越多權重越高。不加小括號為1倍,每加一層小括號乘以1.1倍。例如,強調「藍眼睛」,生成的結果就更高機率是藍眼睛人物

asian, woman, ((blue eyes)), beach, ocean

亦可以直接寫明要增強幾倍關注度,但其實一般情況下不用設太強,用一二層的小括號就夠了。

asian, woman, (blue eyes:2.5), beach, ocean

ComfyUI還支援[ ]中括號,越多權重越弱,一個中括號乘以1.1倍。通常用在負向提示詞欄位。

隨機切換提示詞
#

用大括號{ }將提示詞包起來,再使用隔開,代表在每個步數隨機選取提示詞。例如我要在生圖時於「藍眼睛」或「紅眼睛」或「黑眼睛」之間切換:

asian, woman, {blue eyes|red eyes|black eyes}, beach, ocean

加上註解
#

ComfyUI的提示詞裡面允許加入註解。註解裡面的文本不會被當成提示詞處理。

//加入單行註解。

// 參考翻譯一個女孩亞洲人沙灘海洋
1girl, asian, beach, ocean

/* ... */符號圈起來,可製作多行註解。

/*
參考翻譯
一個女孩
亞洲人
沙灘
海洋
*/
1girl, asian, beach, ocean

4. 值得參考的提示詞網站
#

Prompt GeneratorNovelAI魔导书可以協助你組合提示詞。

Civitai除了下載模型外,還有很多現成的提示詞搭配模型的範例可以照抄。

ComfyUI使用教學 - 點選展開系列文
10: 現在位置

相關文章

使用Docker部署ComfyUI,建立多個不同用途的AI生圖容器
分類   開源AI應用 AI繪圖教學
標籤   ComfyUI Docker
Linux系統安裝ComfyUI,架設Stable Diffusion AI生圖服務
分類   開源AI應用 AI繪圖教學
標籤   ComfyUI Linux
ComfyUI Desktop桌面版安裝教學,免打指令 (Linux / Windows / macOS)
分類   開源AI應用 AI繪圖教學
標籤   ComfyUI Linux Windows MacOS

留言板

此處提供二種留言板。點選按鈕,選擇您覺得方便的留言板。要討論程式碼請用Giscus,匿名討論請用Disqus。

這是Disqus留言板,您可能會看到Disqus強制投放的廣告。為防止垃圾內容,有時留言可能會被系統判定需審核,導致延遲顯示,請見諒。若要上傳圖片請善用圖床網站。