LoRA(即低秩自適應)正在改變擴散模型產生特定風格和主體的方式。透過修改擴散模型中交叉注意力層的權重,LoRA 讓創作者能夠針對獨特的藝術或技術需求微調輸出。本文將探討 LoRA 的工作原理、實際應用,以及如何使用 ComfyUI 等工具將它們逐步整合到工作流程中。
目錄
什麼是 LoRA?
LoRA(低秩自適應)是小型模型,旨在引導擴散模型實現特定的結果,例如重現獨特的風格或主體。它們透過將大型資料矩陣分解為更小的低秩矩陣來實現這一點,從而減少所需的儲存和算力。這使得 LoRA 成為微調擴散模型的高效且可擴展的方案,無需重新訓練整個模型。
LoRA 的主要特點:
- 資料效率:LoRA 儲存的資料遠少於完整的擴散模型,只關注自適應所需的參數。
- 交叉注意力層修改:LoRA 調整擴散模型內的特定層,以實現預期結果。
- 靈活性:LoRA 可應用於藝術、影像產生和技術建模等多個領域。
實際範例:在 ComfyUI 中使用 LoRA
為了展示 LoRA 的強大功能,讓我們來看一個使用 Aether Cloud LoRa 的實際範例,該模型專為 SDXL 模型而設計。

步驟 1:搭建工作流程
在 ComfyUI 中,首先建立一個基本的文生圖工作流程,使用 Juggernaut XL 模型。該模型能產生高品質的雲朵,但加入 LoRA 後,輸出效果可以進一步優化。
- 載入 LoRA:
- 使用 LoraLoaderModelOnly 節點載入 LoRA 模型。
- 將此節點連接到 載入檢查點節點 和 KSampler 節點。

- 調整模型強度:
- 這個模型強度參數 控制 LoRA 對輸出的影響程度。
- 先從預設強度 1 開始,並根據需要進行調整。
步驟 2:比較輸出結果
載入 LoRA 後,將工作流程排入佇列並比較結果:
- 不使用 LoRA:Juggernaut XL 產生的雲朵很逼真,但缺乏藝術感。
- 使用 LoRA(強度 1):輸出變得更加抽象,反映了 Aether Cloud LoRA 的獨特特徵。
為了在真實感和抽象感之間找到平衡,請將強度降低到 0.5 並重新執行工作流程。這一調整將 Juggernaut XL 的內在特性與 LoRA 的藝術風格融合在一起。
步驟 3:增加細節
如需更多細節,請增加推論步數:KSampler 節點:
- 20 步:能產生不錯的結果,但缺少精細的細節。
- 30 步:增加了令人信服的細節,並提升了整體品質。
進階技巧:使用 LoRA 進行局部重繪
LoRA 還可用於局部重繪,讓你在保留整體構圖的同時修改影像的特定區域。
範例:建立一朵心形雲
- 搭建局部重繪工作流程:
- 使用 CropAndStitch 節點 並在要修改的區域上繪製遮罩。
- 調整參數,例如 denoise strength(如 0.8),以確保底層影像為新產生的內容提供大致的形狀。
- 修改提示詞:
- 使用一個具體的提示詞,例如「two birds kiss each other in the sky.」
- 執行工作流程:
- 將工作流程排入佇列,並將局部重繪的結果與原始影像進行比較。

這項技術可以精確控制輸出,將 LoRA 的特徵與基礎模型融合,從而實現驚豔的效果。
使用 LoRA 的最佳做法
- 嘗試不同的強度參數:調整模型強度,以平衡原始模型的特性與 LoRA 的影響。
- 優化推論步數:步數越多通常細節越好,但可能會增加處理時間。
- 與 CLIP 文字編碼器結合:某些 LoRA 需要連接到 CLIP 文字編碼器才能獲得最佳效能。
1 thought on “C31: Fine-Tuning Diffusion Models with LoRAs: A Step-by-Step Guide”