Stable Diffusion -- 如何使用LoRA

2023/04/07閱讀時間約 5 分鐘

感想

在文章最前頭,先說感想:
奮戰整整三天,終於可以讓妳在任何模組上出現,這感覺真好。😊
奮戰了三天,終於可以好好睡一覺

 問題

當我們在用AI算圖的時候,無論是MidJourney,DALL-E,Stable Diffusion還是其他生成式AI算圖,最常遇到的兩個麻煩事是:
  1. 角色在同一個模組逐漸變形
  2. 角色跨模組直接變形
  3. 知名角色,模組不認識
第一個情形是,當你用提示詞好不容易算出一個你喜歡的角色時,想在同一個模型裡面使用不同姿勢、場景、表情、服裝與藝術家風格等調整角色時,AI算出來的圖不一定都跟原本你一開始算出來的角色一樣。這時候最常用的做法就是不停微調提示詞,然後大量產圖拼手氣。
第二個情形是,一模一樣的提示詞在模組A能產生你要的角色形象,但是在模組B不一定能產生非常相像的角色,例如下圖:
一樣的提示詞,算出來的角色其實互相都不太像
這時候你只能靠不斷調整提示詞來拼運氣,但有時候不管怎麼調整都沒用。
第三個情況在動漫模組非常常見,某個在動漫模組非常知名的角色,跑到寫實模組裡面就對應不到任何相像的角色,例如巴洛克大叔在他的文章中提到的問題

使用LoRA

為了解決這些問題,生成式AI有許多不同特性的解法,今天要介紹的LoRA就是一個才剛在Stable Diffusion上實作沒多久,但是因為效果非常顯著,所以很快就流行起來的手段。
LoRA在Automatic1111上的使用方法很簡單,無論是自己烘焙的LoRA或者從huggingface,Civitai等網站抓下來的LoRA,例如這個薩爾達公主的LoRA,抓下來之後放入/models/Lora/ 檔案夾之後,重新啟動Automatic1111之後就能用了!
至於確實的用法,請參考這篇巴洛克大叔的文章,有非常詳盡的步驟介紹。
這邊提一下最簡單的用法:
  1. 在Show/Hide Extra Network按鈕上按一下打開Extra Network區域
  2. 在新出現的區域上選擇Lora標籤,挑選自己要的LoRA
  3. LoRA會以 <lora:檔案名:權重>的型式出現在正面提示詞裡面(也只能用在正面提示詞)
  4. 把啟動提示詞填在正面提示詞裡面,每個LoRA的正面提示詞都不一樣,在下載的頁面中會提到,例如薩爾達公主的LoRA下載頁面,作者提到他的提示詞是princess zelda
使用LoRA的時候要注意的是,LoRA算是一種對整個模型都會產生影響的外掛,所以給他的權重過高,會造成整個畫面嚴重變形,而且不同的LoRA對不同模型的干擾程度都不一樣,需要自行測試。
以我自己烘焙出來的LoRA為例,在不同模型不同權重下的結果:
(extremely detailed CG unity 8k wallpaper), 
digital painting of Vallaria with black dress,
headband, hair ribbons, solo, fantasy,
best quality, masterpiece, hdr, ultra highres,
trending on artstation
<lora:Vallaria30Epochs:0.0>
不同權重對不同模組的影響
權重為0的時候其實毫無營響。當權重到達0.5以上,就會開始產生破圖。某些模組甚至在0.3的時候就連畫風與背景風格都會改變。所以在實際使用時,都會先從0.1開始慢慢往上加,測試這個模組能夠容忍不變形的極限。
順帶一提,LoRA其實可以共同使用,所以使用人物的LoRA同時使用風格類的LoRA理論上是可行的:
自製人物LoRA加上權重0.7的wlop畫風LoRA
上面的圖就是同時使用人物LoRA與wlop大大的畫風LoRA的成果。
但是,Automatic1111會在把LoRA提示詞在LoRA混合進模型之後拿掉,所以一些特殊的Automatic1111語法是無法使用的,例如混合提示詞:
[Vallaria:old man:0.2]
下一篇,讓我們來看看如何準備自己的訓練圖,然後烘焙自己的LoRA!

參考連結


LoRA目錄:
為什麼會看到廣告
7.1K會員
217內容數
寫奇幻小說,畫圖,心得,各式各樣作品的故鄉。
留言0
查看全部
發表第一個留言支持創作者!