2023-03-09|閱讀時間 ‧ 約 11 分鐘

AI繪圖-用Lora打造你的夢幻模特兒吧!三集之一:Kohya's GUI安裝

前言:為什麼你應該學習Lora的使用?

stable diffusion webui可以玩的很簡單,也可以玩的很複雜,相關的主題可以無盡擴散,其實一定是講不完的,所以我只挑重要的講。
這一篇的前提是假設你已經安裝好stable diffusion webui,如果沒有,就先從安裝stable diffusion webui這一步開始吧。
這次來講一下如何自己訓練Lora模型。Lora模型的訓練算是有點複雜,我一樣試著儘量講的淺顯易懂,它不難,只是步驟多而已。一般來說,我自己也是討厭麻煩事物的,但我認為Lora的實用性值得我麻煩一下,想玩stable diffusion webui的人我認為都有必要來學好這套工具,它值得花心思認識。
Lora模型為何重要呢?因為它可以直接針對特定的人物圖片做訓練,藉由Lora讓AI認識你想畫出的人物,這解除了一個常見的繪圖情境:你心中有個想畫的明確人物,但卻要自己在那邊拚拚湊湊最後還畫出個四不像。有了Lora之後你可以儘情的畫出你的偶像,你的夢中情人,你珍藏的動漫人物,還有你所有想畫但畫不出來的人。(但前提當然是你要有目標人物的圖片才行。)
以下展示一個簡單的例子,例如我如果想畫福音戰士的明日香的話,我選用Anything V4.5這個二次元繪圖模組,並且在prompt打上evangelion asuka(=福音戰士+明日香),並且用同一組prompt與同一組種子,分別畫兩張圖,一個是直接繪圖,另一個則是有呼叫福音戰士明日香的Lora模型。
先來看第一張直接繪製的圖:雖然它疑似還是有點認識這個動漫人物,紅髮與科幻風格的戰鬥服都算是福音戰士中明日香的特色,畫的也很漂亮,但問題是這根本就不像明日香啊,重點特徵好像有抓到但完全不是我想畫的人。
接著看看同一組設定下再多呼叫Lora的成果:這張圖就沒問題了,很明顯就是福音戰士的明日香這個角色了。
簡單的兩張圖就可以對比出Lora的效果與實用性了。
但Lora的用途是更廣泛的,並不是用動漫Lora就只能畫動漫圖,我再用同一組設定,但把繪圖模組改為寫實畫風的Chilloutmix,這樣就可畫出網路上流行的那些半真半假的cosplay人物圖了(這張圖是同設定下直出,我沒再特別挑好看的):
正因為它是這麼的實用也這麼的重要,所以我覺得它有寫一篇教學的價值。
Lora也是眾多自訓練的繪圖元件中相對易學易用的了,訓練過程也還算簡單快速,你如果怕麻煩,選擇其它的路只會更麻煩,其它模型訓練的操作步驟與訓練過程都相對複雜,我比較過後還是傾向於直接使用Lora就好了,使用AI繪圖工具我覺得有趣跟簡單是很重要的兩件事,這是一種娛樂我不想搞的像在弄專題研究一樣。
雖然我想儘量講的簡單一點,但訓練Lora過程確實有點複雜,我儘量整理出一個簡易而明確的安裝步驟。
我分三篇講,每篇只專注在簡單快速完成一件事就好,照著教學做好三件事時,Lora模型也訓練好了。

正題:開始安裝

以下進入正題,這篇我們先從Kohya's GUI的安裝開始講起:
首先,既然你現在想了解的是stable diffusion webui的進階應用,那我當然可以假設你的stable diffusion webui以及git都已經安裝完成了,那目前就只缺下列兩個軟體:

前置作業:安裝VS元件
Visual Studio 2015, 2017, 2019, and 2022 redistributable,這個沒難度直接從這邊下載安裝就行了,廢話我就不說了:下載點

準備安裝Kohya's GUI
Kohya's GUI,安裝這套軟體預留10GB的空間會比較保險。
安裝過程看似複雜,但匯整一下可以簡化成兩大步,第一步就是開啟特殊權限,第二步就是跑一堆指令,沒了。
會讓人覺得複雜的地方就是第二步一堆指令,但說穿了也是複製貼上的過程而已。

第一步:開啟權限
先從開始程式集中找到Windows PowerShell,按滑鼠右鍵以管理員身份執行。
在開啟的指令視窗中,執行下列指令:
Set-ExecutionPolicy Unrestricted
接著它會跳出警告並詢問是否確認,此時回答:A

第二步:執行一堆指令
再來就是看似麻煩,但其實就是一連串貼上指令執行的過程。
先另開一個PowerShell指令視窗(因為第一步開啟權限後要新開一個視窗才會使權限生效),先下指令切換到你想安裝這個軟體的位置。
接著執行下列指令將軟體下載回來:
git clone https://github.com/bmaltais/kohya_ss.git
以下為安裝過程示意圖,假設我想裝在D槽下就是先執行D:切到D槽,然後再執行git clone https://github.com/bmaltais/kohya_ss.git 即可:
接著就是要執行下方那堆指令,這邊就是心臟放給它大顆,直接一次全部複製然後全貼上PowerShell指令視窗中,直接一次全部讓他跑下去就行啦!
這樣子就完工啦,恁北才不想學那些湊字數的智障教學。
cd kohya_ss

python -m venv venv
.\venv\Scripts\activate

pip install torch==1.12.1+cu116 torchvision==0.13.1+cu116 --extra-index-url https://download.pytorch.org/whl/cu116
pip install --use-pep517 --upgrade -r requirements.txt
pip install -U -I --no-deps https://github.com/C43H66N12O12S2/stable-diffusion-webui/releases/download/f/xformers-0.0.14.dev0-cp310-cp310-win_amd64.whl

cp .\bitsandbytes_windows\*.dll .\venv\Lib\site-packages\bitsandbytes\
cp .\bitsandbytes_windows\cextension.py .\venv\Lib\site-packages\bitsandbytes\cextension.py
cp .\bitsandbytes_windows\main.py .\venv\Lib\site-packages\bitsandbytes\cuda_setup\main.py

accelerate config
在最後跑到accelerate config這條指令時,它應該會問你七個問題,如果你的環境也一樣是單機單顯卡,那你的答案就幾乎全照預設值就可以了,如果你的環境較特殊再依自己的情況作答。
一個單機單顯卡的凡人應該要回答的答案如下所示:
- -----------------------------------------------------------------------------------------------------------------------
In which compute environment are you running?
〈This machine〉  
(**第一題,預設值就是正確的,直接按Enter**)
------------------------------------------------------------------------------------------------------------------------
Which type of machine are you using?
〈No distributed training〉  
(**第二題,預設值就是正確的,直接按Enter**)
Do you want to run your training on CPU only 
(even if a GPU is available)? [yes/NO]:  
(**第三題,預設值就是正確的,直接按Enter**)
Do you wish to optimize your script with torch dynamo?[yes/NO]:  
(**第四題,預設值就是正確的,直接按Enter**)
Do you want to use DeepSpeed? [yes/NO]:  
(**第五題,預設值就是正確的,直接按Enter)
What GPU(s) (by id) should be used for training on 
this machine as a comma-seperated list? [all]:  
(**第六題,預設值就是正確的,直接按Enter**)
------------------------------------------------------------------------------------------------------------------------
Do you wish to use FP16 or BF16 (mixed precision)?
fp16 
(**第七題,住手!!這題不是預設值,這邊要用數字鍵做選擇,
先按數字鍵1選到fp16再按Enter**)
這樣就完成Kohya's GUI的安裝了,表面看來複雜,但真的只要做兩件事就行了,到這邊你也完成訓練Lora要做的三件事中的第一件了,而且這個安裝過程只有第一次需要執行,之後就再也不用煩惱了。
=====================================

額外補充:
補充一件事:如果你的顯卡型號比較新,是NVIDIA 30X0/40X0系列的顯卡的話,可以再多裝一個元件可以提昇訓練效能。
2.解壓縮後將元件資料夾cudnn_windows整個複製到Kohya's GUI軟體根目錄下
接著開啟命令提示字元(dos視窗)或是直接繼續用powershell視窗都可以,
先切換到Kohya's GUI軟體根目錄,然後執行下列指令即可完成元件安裝:
.\venv\Scripts\activate
python .\tools\cudann_1.8_install.py

分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.