本文主要介紹 Stable Diffusion WebUI 的實(shí)際操作方法,涵蓋prompt推導(dǎo)、lora模型、vae模型和controlNet應(yīng)用等內(nèi)容,并給出了可操作的文生圖、圖生圖實(shí)戰(zhàn)示例。適合對Stable Diffusion感興趣,但又對Stable Diffusion WebUI使用感到困惑的同學(xué)。
前面分享了兩篇文章:十分鐘讀懂 Stable Diffusion 運(yùn)行原理 和 一文教會你學(xué)會 AI 繪畫利器 Stable Diffusion,喜歡的可以閱讀一下
本文希望能夠降低大家對 Stable Diffusion WebUI 的學(xué)習(xí)成本,更快速的體驗(yàn)到AIGC圖像生成的魅力。喜歡記得收藏、關(guān)注、點(diǎn)贊。
用通俗易懂的方式講解系列
- 用通俗易懂的方式講解:不用再找了,這是大模型最全的面試題庫
- 用通俗易懂的方式講解:這是我見過的最適合大模型小白的 PyTorch 中文課程
- 用通俗易懂的方式講解:一文講透最熱的大模型開發(fā)框架 LangChain
- 用通俗易懂的方式講解:基于 LangChain + ChatGLM搭建知識本地庫
- 用通俗易懂的方式講解:基于大模型的知識問答系統(tǒng)全面總結(jié)
- 用通俗易懂的方式講解:ChatGLM3 基礎(chǔ)模型多輪對話微調(diào))
- 用通俗易懂的方式講解:最火的大模型訓(xùn)練框架 DeepSpeed 詳解來了
- 用通俗易懂的方式講解:這應(yīng)該是最全的大模型訓(xùn)練與微調(diào)關(guān)鍵技術(shù)梳理
- 用通俗易懂的方式講解:Stable Diffusion 微調(diào)及推理優(yōu)化實(shí)踐指南
- 用通俗易懂的方式講解:大模型訓(xùn)練過程概述
- 用通俗易懂的方式講解:專補(bǔ)大模型短板的RAG
- 用通俗易懂的方式講解:大模型LLM Agent在 Text2SQL 應(yīng)用上的實(shí)踐
- 用通俗易懂的方式講解:大模型 LLM RAG在 Text2SQL 上的應(yīng)用實(shí)踐
- 用通俗易懂的方式講解:大模型微調(diào)方法總結(jié)
- 用通俗易懂的方式講解:漲知識了,這篇大模型 LangChain 框架與使用示例太棒了
引言
Stable Diffusion (簡稱sd)是一個(gè)深度學(xué)習(xí)的文本到圖像生成模型, Stable Diffusion WebUI是對Stable Diffusion模型進(jìn)行封裝,提供可操作界面的工具軟件。Stable Diffusion WebUI上加載的模型,是在Stable Diffusion 基座模型基礎(chǔ)上,為了獲得在某種風(fēng)格上的更高質(zhì)量的生成效果,而進(jìn)行再次訓(xùn)練后產(chǎn)生的模型。目前 Stable Diffusion 1.5版本是社區(qū)內(nèi)最盛行的基座模型。
安裝
sd web-ui的安裝請參考:https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Install-and-Run-on-NVidia-GPUs
sd web-ui使用了gradio組件包,gradio在配置share=True時(shí),會創(chuàng)建frpc隧道并鏈接到aws,詳情可參考(https://www.gradio.app/guides/sharing-your-app),因此在sd web-ui應(yīng)用啟動時(shí),請根據(jù)自身安全生產(chǎn)或隱私保護(hù)要求,考慮是否禁止開啟share=True配置,或刪除frpc客戶端。
模型
https://civitai.com/是一個(gè)開源的sd模型社區(qū),提供了豐富的模型免費(fèi)下載和使用。在此簡述一下模型的分類,有助于提高對sd web-ui的使用。sd模型訓(xùn)練方法主要分為四類:Dreambooth, LoRA,Textual Inversion,Hypernetwork。
-
Dreambooth:在sd基座模型的基礎(chǔ)上,通過 Dreambooth 訓(xùn)練方式得到的大模型, 是一個(gè)完整的新模型,訓(xùn)練速度較慢,生成模型文件較大,一般幾個(gè)G,模型文件格式為 safetensors 或 ckpt。特點(diǎn)是出圖效果好,在某些藝術(shù)風(fēng)格上有明顯的提升。如下圖所示,sd web-ui中該類模型可以在這里進(jìn)行選擇。
-
LoRA: 一種輕量化的模型微調(diào)訓(xùn)練方法,在原有大模型的基礎(chǔ)上對該模型進(jìn)行微調(diào),用于輸出固定特征的人或事物。特點(diǎn)是對于特定風(fēng)格的圖產(chǎn)出效果好,訓(xùn)練速度快,模型文件小,一般幾十到一百多 MB,不能獨(dú)立使用,需要搭配原有大模型一起使用。sd web-ui提供了lora模型插件,以及使用lora模型的方式,具體操作可見本文的 “操作流程->lora模型” 。
-
Textual Inversion:一種使用文本提示和對應(yīng)的風(fēng)格圖片來微調(diào)訓(xùn)練模型的方法,文本提示一般為特殊的單詞,模型訓(xùn)練完成后,可以在text prompts中使用這些單詞,來實(shí)現(xiàn)對模型生成圖片風(fēng)格和細(xì)節(jié)的控制,需要搭配原有的大模型一起使用。
-
Hypernetwork:與LoRA類似的微調(diào)訓(xùn)練大模型的方法,需要搭配原有的大模型一起使用。
操作流程
prompt推導(dǎo)
-
在sd中上傳一張圖片
-
反向推導(dǎo)關(guān)鍵詞,有兩個(gè)模型CLIP和DeepBooru,以圖1為例:
圖1: iphone 14 pro max 原相機(jī)拍攝的高清照片
使用CLIP進(jìn)行prompt反推的結(jié)果:
a baby is laying on a blanket surrounded by balloons and balls in the air and a cake with a name on it, Bian Jingzhao, phuoc quan, a colorized photo, dada
使用DeepBooru進(jìn)行prompt反推的結(jié)果:
1boy, ball, balloon, bubble_blowing, chewing_gum, hat, holding_balloon, male_focus, military, military_uniform, open_mouth, orb, solo, uniform, yin_yang
CLIP反推結(jié)果是一個(gè)句子,DeepBooru的反推結(jié)果是關(guān)鍵詞。
可以修改正向prompt,也可以添加反向prompt,反向prompt用于限制模型在生產(chǎn)圖片時(shí)不添加反向prompt中出現(xiàn)的元素。反向prompt不是必須的,可以不填。
lora模型
lora模型對大模型生成圖的風(fēng)格和質(zhì)量有很強(qiáng)的干預(yù)或增強(qiáng)作用,但是lora模型需要與配套的大模型一起使用,不能單獨(dú)使用。在sd-webui中使用lora模型的方式主要有兩種:
- 方法一
安裝additional-network插件,插件的github地址:https://github.com/kohya-ss/sd-webui-additional-networks,在sd-webui上可以在擴(kuò)展中直接下載安裝。該插件僅支持使用sd-script腳本訓(xùn)練的lora模型,目前https://civitai.com/上絕大多數(shù)的開源lora模型都是基于此腳本訓(xùn)練的,因此該插件支持絕大多數(shù)的lora模型。下載的lora模型需要放到
*/stable-diffusion-webui/extensions/sd-webui-additional-networks/models/lora
路徑下, 新增模型需要重啟sd-webui,插件和模型正確加載后,會在webui操作界面的左下角中出現(xiàn)“可選附加網(wǎng)絡(luò)(LoRA插件)” 。在生成圖片時(shí)觸發(fā)lora,需要在插件中選中l(wèi)ora模型,并在正向提示詞中加入Trigger Words。下圖中選中的lora模型為blinndbox_v1_mix, trigger words為full body,chibi, 每個(gè)lora模型有自己獨(dú)有的Trigger Words,在模型的簡介中會注明。
如果插件在點(diǎn)擊安裝后沒有反應(yīng),或者提示因?yàn)镕lag引起的錯(cuò)誤,是因?yàn)閣ebui啟動時(shí)允許擴(kuò)展插件的設(shè)置配置為禁止,需要在webui啟動時(shí)添加啟動參數(shù):–enable-insecure-extension-access
./webui.sh --xformers --enable-insecure-extension-access
- 方法二
不使用additional-network插件,使用sd-webui默認(rèn)支持的lora模型使用方式,需要將lora模型放到
*/stable-diffusion-webui/models/Lora
目錄下,重新啟動sd-webui即可自動載入模型。
在正向提示詞中加入lora模型啟用語句,生產(chǎn)圖片時(shí)即可觸發(fā)lora模型:
web-ui提供了自動填充lora提示語句的功能,點(diǎn)擊如圖所示的圖標(biāo),可以打開lora模型列表,然后點(diǎn)擊模型區(qū)域,語句會自動填充到正向提示詞區(qū)域:
以上兩種方式,選用其中任意一種均能使lora模型在內(nèi)容生產(chǎn)中生效,兩種方式同時(shí)使用也不會引起問題。
ControlNet
controlNet通過支持額外的輸入條件,試圖控制預(yù)訓(xùn)練的大模型,如Stable Diffusion。單純的文本控制方式令內(nèi)容的生產(chǎn)就像碰運(yùn)氣抽卡,結(jié)果無法控制且不容易達(dá)到預(yù)期效果,controlNet的出現(xiàn)使stable diffusion大模型的內(nèi)容生成進(jìn)入可控時(shí)期,讓創(chuàng)作變得可控使得AIGC在工業(yè)應(yīng)用上更進(jìn)一步。
- 安裝controlNet
在sd-webui上,點(diǎn)擊擴(kuò)展,進(jìn)入插件安裝頁面,找到controlNet插件,點(diǎn)擊install即可完成插件安裝。
下載開源的controlnet模型
下載地址:https://huggingface.co/lllyasviel/ControlNet-v1-1/tree/main
一個(gè)模型由兩個(gè)文件組成: .pth 和 .yaml,需要同時(shí)下載。文件名中"V11"后面的字母,p:表示可以使用,e:表示還在試驗(yàn)中,u:表示未完成。下載好的模型放在如下目錄,重啟sd-webui 即可完成controlnet模型加載。
*\stable-diffusion-webui\extensions\sd-webui-controlnet\models
圖生圖示例
- 模型選擇
1、stable diffusion大模型選用:revAnimated_v11 (https://civitai.com/models/7371?modelVersionId=46846)
2、lora模型選用blind_box_v1_mix (https://civitai.com/models/25995?modelVersionId=32988)
3、采樣方法Euler a
4、源圖片使用 圖1,使用DeepBooru模型進(jìn)行正向prompts生成, 添加revAnimated_v11的特定prompts, 刪除一些正向prompts,添加反向prompts,最后使用的prompt如下所示。
正向:
(masterpiece),(best quality), (full body:1.2), (beautiful detailed eyes), 1boy, hat, male, open_mouth, smile, cloud, solo, full body, chibi, military_uniform, lora:blindbox\_v1\_mix:1
反向:
(low quality:1.3), (worst quality:1.3)
生成的圖片為:
圖1:原圖片
圖2:sd生成圖片
5、保持生成圖片的條件不變,添加ControlNet模型,選擇Openpose,control mode選擇 balance ,生成的圖片如下所示,生成的人物動作因?yàn)镺penpose的作用被約束了,與原圖像保持的更為相似。
圖3:sd生成圖片(添加openpose)
圖4: openpose生成的圖片
文生圖示例
- 模型選擇
-
stable diffusion大模型選用:revAnimated_v11 (https://civitai.com/models/7371?modelVersionId=46846)
-
lora模型選用blind_box_v1_mix (https://civitai.com/models/25995?modelVersionId=32988)
-
采樣方法Euler a
示例1
提示詞
正向:
(masterpiece),(best quality),(ultra-detailed), (full body:1.2), 1girl, youth, dynamic, smile, palace,tang dynasty, shirt, long hair, blurry, black hair, blush stickers, black hair, (beautiful detailed face), (beautiful detailed eyes), lora:blindbox\_v1\_mix:1, full body, chibi
反向:
(low quality:1.3), (worst quality:1.3)
生成的圖片為:
圖5: 文生圖實(shí)例1
示例2
提示詞
正向:
(masterpiece),(best quality),(ultra-detailed), (full body:1.2), 1girl,chibi,sex, smile, open mouth, flower, outdoors, beret, jk, blush, tree, :3, shirt, short hair, cherry blossoms, blurry, brown hair, blush stickers, long sleeves, bangs, black hair, pink flower, (beautiful detailed face), (beautiful detailed eyes), lora:blindbox\_v1\_mix:1,
反向:
(low quality:1.3), (worst quality:1.3)
生成圖片為:
圖6: 文生圖實(shí)例2
提示詞解析
-
(masterpiece),(best quality),(ultra-detailed), (full body:1.2), (beautiful detailed face), (beautiful detailed eyes) 這些帶()的詞為revAnimated_v11 模型配套prompts,用于提高圖片的生成質(zhì)量。
-
lora:blindbox\_v1\_mix:1 是觸發(fā) blind_box_v1_mix 模型的 prompt。
-
full body, chibi 為 blind_box_v1_mix 模型的 trigger words。
-
剩下的prompts為圖片內(nèi)容的描述。
-
revAnimated_v11 模型對prompt的順序是敏感的,排在前面的提示詞比排在后面的prompt對結(jié)果的影響更大。
VAE
在sd的實(shí)際使用中,vae模型起到濾鏡和微調(diào)的作用,有些sd模型是自帶vae的,并不需要單獨(dú)掛載vae。與模型配套的vae的模型,通常會在模型的發(fā)布頁面會附帶vae的下載鏈接。
-
模型的安裝
下載vae模型到sd web-ui的如下目錄,重啟sd web-ui,即可自動完成vae模型加載。
/stable-diffusion-webui/models/VAE
如下圖所示,在sd web-ui上可以切換vae模型。
如果we-ui上看不到此選擇框,則到設(shè)置-> 用戶界面-> 快捷設(shè)置列表 添加配置 “sd_vae”,如下所示:
-
效果
在保持圖6生成條件不變的基礎(chǔ)上,附加Blessed2(https://huggingface.co/NoCrypt/blessed_vae/blob/main/blessed2.vae.pt)模型,圖片的顏色和對比度有了明顯的變化。
圖7: 添加vae模型前
圖8:添加vae模型后圖片的飽和度和對比度都有提升
結(jié)束語
-
sd web-ui的學(xué)習(xí)曲線比較陡峭,具有一定的圖像處理領(lǐng)域知識能夠幫助用戶更好的選擇和組合模型。
-
零基礎(chǔ)小白用戶容易出現(xiàn)隨便選擇模型,胡亂組合,對著sd web-ui界面進(jìn)行一系列操作后,出圖效果和預(yù)期完全不符的情況,建議先了解每個(gè)模型的特點(diǎn)后再根據(jù)實(shí)際目標(biāo)進(jìn)行選擇。文章來源:http://www.zghlxwxcb.cn/news/detail-796906.html
-
sd是開源的,sd web-ui是一個(gè)工具箱,不是一個(gè)商業(yè)產(chǎn)品,社區(qū)中有很多效果很棒的模型,出圖的上限很高,但下限也很低,開源不代表沒有成本,因?yàn)閟d we-ui部署要求較高的硬件配置。要節(jié)省學(xué)習(xí)成本,較為穩(wěn)定的出圖效果,簡單便捷的用戶體驗(yàn),沒有硬件配置要求,midjourney 是當(dāng)前的首選,但需要支付訂閱費(fèi)。文章來源地址http://www.zghlxwxcb.cn/news/detail-796906.html
到了這里,關(guān)于用通俗易懂的方式講解:Stable Diffusion WebUI 從零基礎(chǔ)到入門的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!