【ComfyUI學習筆記01】下載安裝 | 運行第一個工作流 | 學習思路

【ComfyUI學習筆記01】下載安裝 | 運行第一個工作流 | 學習思路

  • 前言
  • 下載安裝
    • ComfyUI的下載和安裝
    • ComfyUI Manager 的下載和安裝
  • 運行第一個工作流
    • 初識節點 (Nodes) 工作流
    • 案例1 Image Generation
      • 繪制流程圖,確定關鍵節點
      • 放置關鍵節點,確定連接順序
      • 補充中間過程,完成流程搭建
    • 學習思路
      • 明確應用方向
      • 拋棄細節,塊狀記憶

前言

你好!這是博主學習ComfyUI時的心得筆記,從零開始。博主是工業設計專業的學生,學ComfyUI是為了批量和易控地渲染手繪圖以及生成特定人物,主要面向應用,不會在底層原理上有過多深入。每期的推薦資料會放在文章末尾。
本系列一般不涉及節點參數的解讀,推薦需要時,在Github上檢索學習。
初來乍到,請多指教!

下載安裝

本章節將介紹ComfyUI的下載和安裝以及后續重要插件 ComfyUI Manager 的下載和安裝。

ComfyUI的下載和安裝

  1. 國內網盤下載 ,在bilibili等平臺搜索“ComfyUI”下載,往往會有不錯的結果,非常多博主1友好地免費提供網盤下載;
  2. 【推薦】Github下載,直接訪問ComfyUI官方團隊的庫2,進行下載(需要翻墻 / 訪問國內鏡像網站);
    • 下載“ComfyUI_windows_portable_nvidia.7z”即可
    • 解壓完畢后,請首先閱讀README_VERY_IMPORTANT文件,以下是對其的中文翻譯:
如何運行:如果你有NGPU,運行 nvidia gpu.bat (推薦使用)如果你想使用低速的CPU,運行 cpu.bat如果你在進入頁面時遇到了一個紅色的報錯,大概是由于你沒有在ComfyUI\models\checkpoints中保存任何模型,你可以在 https://huggingface.co/Comfy-Org/stable-diffusion-v1-5-archive/blob/main/v1-5-pruned-emaonly-fp16.safetensors 中下載Stable Diffusion 1.5,放入checkpoints文件夾更新ComfyUI的推薦辦法:訪問update文件夾,運行update_comfyui.bat想要與Python依賴一同更新的話,訪問update文件夾,運行update_comfyui_and_python_dependencies.bat如果你在電腦上已經在WebUI中下載了不少模型,并且想通過ComfyUI調用:
訪問ComfyUI文件夾,找到extra_model_paths.yaml.example,將其重命名為extra_model_paths.yaml,使用記事本打開,將WebUI中的模型文件夾地址復制進去,保存即可
  1. Git下載,git clone是后續更新、下載ComfyUI及其節點包重要的途徑,推薦盡早安裝下載3,安裝過程中,只需要修改安裝地址即可(建議 D:/ 等軟件盤符Program Files文件夾),其他內容保持默認。

ComfyUI Manager 的下載和安裝

ComfyUI Manager是使用ComfyUI必要的插件,它可以快速幫助我們下載、補全某些非常便利的節點,后續我們會逐漸探索ComfyUI Manager的強大功能。

Github作者4提供了4種ComfyUI Manager的安裝方案,這里重點推薦2種:

  1. 【推薦】Git Clone安裝,訪問ComfyUI/custom_nodes文件夾,在地址欄鍵入“cmd”打開命令提示欄,輸入以下內容后回車:

git clone https://github.com/ltdrdata/ComfyUI-Manager comfyui-manager

cmd訪問custom_nodes文件夾

  1. .bat 安裝,在下載好git后,把install-manager-for-portable-version.bat保存到 ComfyUI_windows_portable 文件夾中,雙擊安裝
    • 請右鍵該鏈接,“鏈接另存為”

啟動ComfyUI,在瀏覽器界面角落出現以下圖標,即說明安裝成功在這里插入圖片描述

運行第一個工作流

這里,我們將著手搭建我們的第一個ComfyUI工作流,它是一個基礎的文本轉圖像 (Text2Img) 工作流,如下圖所示,通過它,我們可以對ComfyUI基本的運行過程有所了解
Text2Img工作流

初識節點 (Nodes) 工作流

從底層講,節點工作流中,每個節點都是一段封裝好的代碼,搭建節點工作流的過程,就是不斷調用代碼的編程過程。它具備過程透明,高自由度的優點,但同時因其存在大量節點,且逐級運行,也存在強調邏輯,學習,記憶成本高的“缺點”。
在搭建節點工作流的過程中,知道我有什么(文本/待處理圖片)和我要什么(生成圖片/放大圖片/局部重繪)很重要,它是我們的重要切入口,可以幫助我們梳理過程環節,這同樣是編程思維的再次體現。

既然是一種編程任務,那么對初學者來說,流程圖無疑是非常重要的工具

本案例流程圖

案例1 Image Generation

案例文件"Image Generation"由官方 Browse Templates 提供。
在這里插入圖片描述
在流程圖中,已經梳理好了生成一張圖片需要的關鍵過程,接下來,我們將進一步了解具體的實現步驟

繪制流程圖,確定關鍵節點

(繪制過程略)我們只有得知圖片大小內容后,才能生成我們的圖片,而內容是根據文本(圖片)描述圖片風格確定的,因此,我們需要:

  • 圖片大小控制節點: Empty Latent Image
    Empty Latent Image
  • 文本(圖片)描述節點(本案例輸入內容為文本):CLIP Text Encode(Prompt) CLIP Text Encode(Prompt)
  • 圖片風格節點(即.checkpoint大模型節點)導入:Load CheckpointLoad Checkpoint
  • 圖片輸出節點(保存圖片):Save Image
    在這里插入圖片描述

放置關鍵節點,確定連接順序

在本章節開頭已經展示了完整的連接順序,它并非一氣呵成,逐級推進,而是以先放關鍵節點,再補充中間過程的思路確定的:

  • 找到并放置關鍵節點
    快速調用節點

除了通過快速檢索欄調用,ComfyUI同樣支持右鍵呼出菜單欄調用,通過菜單欄中的命名,可以猜到節點屬于哪里,這對不知道節點叫什么,但知道它要起什么功能時很有幫助
右鍵菜單欄
關鍵節點及其順序

補充中間過程,完成流程搭建

實現數據的處理和流通,是本環節的關鍵。在ComfyUI中,兩個節點塊有相同顏色的小圓點,表示可以直接流通該數據,如上圖中Load Checkpoint右邊的黃色CLIP和CLIP Text Encode(Prompt)左邊的黃色clip。那如果沒有顏色對應的小圓點呢?那就說明需要一些中間過程來對數據進行處理(Encode 編碼/Decode 解碼),在本案例中,有以下中間節點:

  • 采樣處理節點:KSampler,它類似于WebUI中的參數設置面板,包括生成圖片過程中的隨機種子、步數、采樣器等參數都由此節點控制
    KSampler
  • 潛變量圖像解碼節點:VAE Decode,KSampler采樣完成后,生成的是Latent Image相當于“底片”,但我們需要的是一張可視圖片,因此需要通過變自分解碼器 VAE Decode 對其進行“顯影”轉換
    VAE Decode
    節點添加完畢后,將所有對應顏色的小圓點相連,即可完成我們案例1的工作流搭建。

學習思路

明確應用方向

ComfyUI作為一個復雜平臺,可以實現非常多功能,滿足不同生產需要。但復雜意味著決策,在打開、學習ComfyUI之前,先問問自己,想用它來干什么,然后直接去查看相關的應用即可,小白千萬不要在一開始陷入對原理、技術的探求,就跟學英語時,不要一來就拿著牛津詞典干啃一樣。

以博主自身為例,博主是工業設計專業的學生,需要大量用到草圖上色,快速渲染這樣的圖生圖功能,偶爾用到人物姿態生成、幀圖片等其他功能,不會把精力花費在實現以上功能外的地方。

拋棄細節,塊狀記憶

承接上文,抓住“應用方向”這個關鍵,就可以快速查找到想實現目標需要的關鍵環節。ComfyUI的節點成百上千,挨個記憶是不現實的,低收益的,但不難發現,ComfyUI的搭建實際上就是將不同環節的數據處理,傳遞,再處理,如果我們將這些過程切塊,記住每一塊需要什么,產出什么,將極大地降低我們的記憶成本。至于每一塊的實現細節(具體節點),那就去扒網上的案例庫好了。

目錄、索引式記憶比起內容、字典式記憶來得有效率得多。這不是學生時期的考試,利用工具,節約時間是首要的


  1. bilibili Nenly同學 ??

  2. ComfyUI Github網址 ??

  3. Git下載地址 ??

  4. ComfyUI Manager Github網址 ??

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/915505.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/915505.shtml
英文地址,請注明出處:http://en.pswp.cn/news/915505.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

numpy庫的基礎知識

一.numpy是什么 ?Numpy 是 Python 中專門用于高性能數值計算的庫,其核心是一個功能強大的 n 維數組對象(ndarray),可以用來存儲和操作大規模的數字矩陣或張量數據。numpy庫的作用:核心功能:實現…

在UniApp中防止頁面上下拖動的方法

1、pages.json中在某個頁面設置禁用彈性滾動的頁面 {"path": "pages/yourPage/yourPage","style": {"app-plus": {"bounce": "none"}} } 2、 pages.json中在所有頁面設置禁用彈性滾動的頁面 {"globalStyl…

LinkedList的模擬實現(雙向鏈表Java)

一:結構LinkedList的底層是雙向鏈表結構(鏈表后面介紹),由于鏈表沒有將元素存儲在連續的空間中,元素存儲在單獨的節點中,然后通過引用將節點連接起來了,因此在在任意位置插入或者刪除元素時,不需要搬移元素…

Shopify 知識點

📜 一、Liquid模板語言(核心基礎)語法結構 ? 輸出變量:{{ product.title }} 動態顯示商品標題。 ? 邏輯控制:{% if product.available %}…{% endif %} 條件渲染。 ? 循環遍歷:{% for item in collectio…

Web LLM 安全剖析:以間接提示注入為核心的攻擊案例與防御體系

文章目錄1 間接提示注入2 訓練數據中毒為什么會出現這種漏洞?3 泄露敏感訓練數據攻擊者如何通過提示注入獲取敏感數據?為什么會出現這種泄露?4 漏洞案例間接提示注入利用 LLM 中的不安全輸出處理5 防御 LLM 攻擊把LLM能訪問的API當成“公開接…

ElasticSearch:不停機更新索引類型(未驗證)

文章目錄**一、前期準備****1. 集群健康檢查****2. 備份數據****3. 監控系統準備****二、創建新索引并配置****1. 設計新索引映射****2. 創建讀寫別名****三、全量數據遷移****1. 執行初始 Reindex****2. 監控 Reindex 進度****四、增量數據同步****1. 方案選擇****五、雙寫切換…

python學智能算法(二十七)|SVM-拉格朗日函數求解上

【1】引言 前序學習進程中,我們已經掌握了支持向量機算法中,為尋找最佳分割超平面,如何用向量表達超平面方程,如何為超平面方程建立拉格朗日函數。 本篇文章的學習目標是:求解SVM拉格朗日函數。 【2】求解方法 【2.…

mac安裝node的步驟

適用于macOS 10.15及以上版本。 前提條件 macOS版本:確保系統為macOS 10.15(Catalina)或更高版本。可在“蘋果菜單 > 關于本機”查看。管理員權限:部分安裝可能需要管理員權限。網絡連接:需要聯網下載安裝包或工具…

【LeetCode數據結構】棧的應用——有效的括號問題詳解

🔥個人主頁:艾莉絲努力練劍 ?專欄傳送門:《C語言》、《數據結構與算法》、C語言刷題12天IO強訓、LeetCode代碼強化刷題 🍉學習方向:C/C方向 ??人生格言:為天地立心,為生民立命,為…

多尺度卷積模型:Inception塊

在GoogLeNet中,基本的卷積塊被稱為Inception塊(Inception block)。 使用窗口大小為11,33,551\times1,3\times3,5\times511,33,55的卷積層,從不同空間大小中提…

Android 默認圖庫播放視頻沒有自動循環功能,如何添加

Android 默認圖庫播放視頻沒有自動循環功能, 如何添加 按如下方式添加 開發云 - 一站式云服務平臺 .../apps/Gallery2/res/values-zh-rCN/strings.xml | 3 ++ packages/apps/Gallery2/res/values/strings.xml | 3 ++ .../com/android/gallery3d/app/MovieActivity…

7月21日總結

命令執行 RCE RCE(remote code execute):遠程命令執行或者代碼執行,我們平時說的rce,比如thinkPHP的 rce漏洞,即算代碼注入漏洞,也算rce漏洞,因為滲透的最終情況可以實現執行命令或…

Linux——自制shell命令行解釋器

文章目錄1.打印命令提示符2.獲取用戶輸入指令3.重定向分析4.命令行參數表,環境變量表,初始化5.命令解析6.命令執行6.1.創建子進程6.2 處理內建命令6.3 文件重定向7.源碼前言 在實現shell的時候我們先創建自己myshell目錄,在目錄中創建myshell.cc文件,因…

Boost庫智能指針boost::shared_ptr詳解和常用場景使用錯誤示例以及解決方法

1、Boost智能指針 —— boost::shared_ptr 詳解一、什么是 boost::shared_ptr boost::shared_ptr 是 Boost 庫中實現的一個智能指針模板類,用于管理動態分配的對象生命周期,采用引用計數機制。多個 shared_ptr 實例可以共享同一個對象的所有權&#xff0…

科學分析指南,如何快速找到并清理磁盤的無用文件

隨著時間的推移,系統中會積累大量的臨時文件、緩存文件、不再需要的安裝包或其他大型文件。磁盤清理可以刪除這些不必要的文件,從而釋放寶貴的磁盤空間。它無需安裝,插上 U 盤就能直接使用。只需勾選需要掃描的磁盤,點擊“開始分析…

Laravel 系統版本查看及artisan管理員密碼找回方法針對各個版本通用方法及原理-優雅草卓伊凡

Laravel 系統版本查看及artisan管理員密碼找回方法針對各個版本通用方法及原理-優雅草卓伊凡一、查看 Laravel 版本的方法優雅草蜻蜓T會議系統專業版 最近又有客戶要了,但是發現 密碼不對 管理員賬戶密碼不對,卓伊凡必須處理下,這里順便講解密…

針對大規模語言模型的上下文工程技術調研與總結(翻譯并摘要)

針對大規模語言模型的上下文工程技術調研與總結聲明摘要部分翻譯介紹部分翻譯相關工作部分翻譯并摘要為什么使用上下文工程(翻譯并摘要)基礎組件(翻譯并摘要)RAG(翻譯并摘要簡單介紹一下個人認為比較好的技術&#xff…

QT配置Quazip外部庫

1.下載QuaZip源碼網址:https://sourceforge.net/projects/quazip/  注:下載->解壓->打開.pro文件2.編譯QuaZip源碼2.1配置zlib注:QuaZip需zlib的支持,我們需要引用zlib找到本地安裝Qt目錄下zlib目錄:注&#x…

從C++開始的編程生活(4)——類的定義、訪問限定符、類域、類的實例化和this指針

前言 本系列文章承接C語言的學習,需要有C語言的基礎才能學會哦~ 第3篇主要講的是有關于C的類的定義、訪問限定符、類域、類的實例化和this指針。 C才起步,都很簡單呢! 目錄 前言 類 基本語法 訪問限定符 基本語法 類域 類的實例化 內…

AD域控制器虛擬化的安全加固最佳實踐

以下是AD域控制器虛擬化安全加固的7項核心實踐,結合最新Windows Server 2022特性與虛擬化環境需求:基礎架構強化? 采用靜態IP分配并確保所有域控節點DNS指向主DC(如192.168.1.10)? 虛擬機模板需預配置林/域功能級別為Windows Se…