ComfyUI 提示 No module named:按缺失模塊名修復
按包名、Python 環境、自定義節點依賴以及 CUDA / PyTorch 匹配關係,系統排查 ComfyUI 的 ModuleNotFoundError。
如果 ComfyUI 日誌裡出現 ModuleNotFoundError: No module named ...,這篇更適合作為站內導航頁,而不是某一個具體模塊錯誤的搜索落地頁。
如果你已經知道缺的是哪個模塊,優先直接跳到下方對應的專門修復文檔。
缺失的 Python 包只是表面現象。 真正更關鍵的問題是:到底是哪個 Python 環境在啟動 ComfyUI。
對官方 Windows portable 包來說,很多修復命令都應該通過下面這個入口執行:
.\python_embeded\python.exe -s -m pip ...如果你是手動 Git + venv 安裝,則應該先激活 啟動 ComfyUI 的同一個虛擬環境,再執行:
python -m pip ...Related errors
快速判斷
| 日誌表現 | 最可能的原因 | 第一檢查項 |
|---|---|---|
ModuleNotFoundError 出現在 custom_nodes | 某個自定義節點依賴缺失 | 看插件目錄和它自己的 requirements.txt |
ModuleNotFoundError 出現在 ComfyUI\comfy\... | ComfyUI 核心依賴缺失或漂移 | 看本地 ComfyUI\requirements.txt |
pip install 成功但錯誤還在 | 包裝進了錯誤的 Python | 用 ComfyUI 自己的 Python 跑 pip show |
| 重啟後錯誤內容變了 | 你修掉了第一個阻塞,露出了下一個 | 繼續只修新的第一條 traceback |
| 出現 CUDA、DLL、wheel 報錯 | 缺包背後還有本地二進制或 GPU 依賴 | 先核對 Torch / CUDA 再繼續改包 |
我們最常見到的缺失模塊
下面這些缺失模組最容易在 ComfyUI 啟動、插件匯入和工作流執行時反覆出現。先按模組名分流到對應頁面,再確認它是核心相依性、插件相依性,還是可選加速後端。
| 缺失模塊 | 常見出現位置 | 最該看的下一頁 |
|---|---|---|
triton | FLUX、加速鏈路、混合插件/運行時環境 | 修 triton 問題 |
sageattention | 性能優化工作流、加速插件 | 修 sageattention 問題 |
onnx / onnxruntime | 人臉、姿態、放大、ONNX 節點鏈路 | 修 onnx / onnxruntime |
flash_attn | 可選加速鏈路,以及部分視頻/LLM 節點 | 先判斷它是可選 warning,還是工作流阻塞 |
llama_cpp | LLM、提示詞助手、自定義大模型節點 | 修 llama_cpp 問題 |
groundingdino | 檢測、分割、grounding 工作流 | 先確認是哪一個插件導入失敗,再裝進同一個 Python |
insightface | 換臉、人臉分析、身份類工作流 | 修 insightface 問題 |
cv2 | 依賴 OpenCV 的圖像/視頻節點 | 修 cv2 問題 |
nunchaku | 某些特定性能或節點包 | 修 nunchaku 問題 |
如果你已經知道準確缺哪個模塊,優先直接跳到對應窄文檔,不要先盲猜並亂裝一堆包。
No OpenGL_accelerate module loaded 多數不用修
啟動時有時會看到:
No OpenGL_accelerate module loaded: No module named 'OpenGL_accelerate'這不是 OpenGL dependencies not available。OpenGL_accelerate 來自 PyOpenGL-accelerate,它是 PyOpenGL 的可選 Cython 加速組件:能改善效能,但不是 PyOpenGL 正常運行的必需條件。
如果同一份日誌後面已經有 Starting server 和 To see the GUI go to: http://127.0.0.1:...,代表 ComfyUI 已經成功啟動。這種情況不要只為了消掉這一行,就去盲目安裝套件。
什麼情況才需要查
只有同時出現了明確的功能或節點失敗,例如 traceback、Cannot import,或某個 OpenGL 功能真的不能用,才需要繼續排查。先用真正啟動 ComfyUI 的 Python 確認:
.\python_embeded\python.exe -s -m pip show PyOpenGL PyOpenGL-accelerate只有那個功能自己的文件或 traceback 明確要求這個加速器時,才在相同 Python 裡安裝後重啟一次:
.\python_embeded\python.exe -s -m pip install PyOpenGL-accelerate不要把這個可選加速警告和 nodes_glsl.py 裡的 RuntimeError: OpenGL dependencies not available 混在一起。後者是內置 GLSL 節點缺依賴,請看 OpenGL 依賴修復指南。
第 1 步:先複製“準確缺的是誰”
不要先猜包名,先複製日誌原文:
ModuleNotFoundError: No module named 'sageattention'導入名和 pip 包名並不總是一樣。 例如:
cv2往往來自 OpenCV 包segment_anything往往來自segment-anything
第 2 步:找到真正啟動 ComfyUI 的 Python
Windows portable 在根目錄執行:
.\python_embeded\python.exe -s -m pip --version
.\python_embeded\python.exe -s -m pip show <package-name>手動 venv:
python -m pip --version
python -m pip show <package-name>輸出路徑必須指向 ComfyUI 實際使用的環境。如果指向系統 Python,那你就在錯誤地方修。
第 3 步:判斷這個缺包是不是致命
不是每個可選加速包都值得第一時間修。
| 缺失模塊 | 常常是致命的嗎 | 說明 |
|---|---|---|
transformers 且來自 ComfyUI 核心 | 是 | 核心 tokenizer / 模型棧可能直接阻塞啟動 |
torch | 是 | 沒有 PyTorch,ComfyUI 跑不起來 |
cv2 | 經常會導致插件失效 | 很多視覺節點依賴 OpenCV |
sageattention | 經常是可選項 | 只有工作流或啟動參數明確依賴時才修 |
onnxruntime | 看工作流 | 人臉、姿態、ONNX 路線常依賴它 |
diffusers | 看插件 | 通常是第三方節點依賴 |
核心導入失敗,還是插件導入失敗
這個區分會直接決定你該怎麼修:
| traceback 起點 | 通常意味著什麼 | 更穩妥的修法 |
|---|---|---|
ComfyUI\\comfy\\... 或啟動 bootstrap 文件 | 核心依賴漂移 | 先修核心環境 |
custom_nodes\\<plugin>\\... | 某個插件依賴缺失 | 只修這個插件或它自己的 requirements |
| Launcher 部署階段、還沒真正進 ComfyUI | 安裝/部署鏈路問題 | 先看 launcher 的部署失敗文檔 |
如果缺包來自核心啟動路徑,把這頁和 ComfyUI 啟動失敗 一起看。 如果缺包來自插件,把這頁和 ComfyUI Plugin Import Failed 怎麼修 結合起來看。
第 4 步:按具體模塊走窄修復
如果已經有明確的窄文檔,就不要一上來亂裝一串包:
- No module named 'sageattention'
- No module named 'cv2'
- No module named 'insightface'
- No module named 'onnx' 或 'onnxruntime'
- No module named 'transformers'
- No module named 'torch'
- No module named 'triton'
一次只修一個包,修完就重啟,再看新的第一條錯誤。
第 5 步:修完先驗證,再重啟
在 同一個 Python 環境 中直接驗證導入:
python -c "import <module_name>; print('import ok')"Windows portable:
.\python_embeded\python.exe -s -c "import <module_name>; print('import ok')"然後再重啟 ComfyUI。
如果原本的 ModuleNotFoundError 不見了,但新的缺包出現了,那就把它當作新的第一阻塞繼續處理。
哪些情況下,pip install 反而是錯方向
如果出現下面這些信號,先別急著繼續裝包:
- 每次重啟,缺失模塊名都在變
- 明明安裝成功了,但 ComfyUI 還是報同一個缺失名
- 你已經混用了系統 Python 和
python_embeded - 同時還出現了 Torch、CUDA、wheel 或 DLL 報錯
- 裝完一個插件後,多個插件一起開始報錯
這通常意味著問題已經從“單一缺包”升級成“環境漂移”,不是繼續補一個包就能收掉。
什麼時候該換成 Wonderful Launcher
手工修包適合“只有一個明確缺失導入”的情況。 一旦出現下面這些特徵,繼續純命令行修會越來越貴:
- 多個自定義節點同時啟動失敗
- 每裝一個包,
pip check就出現新衝突 - 修插件時把 Torch 或 CUDA 一起帶亂了
- 你已經搞不清到底是誰在啟動 ComfyUI
- 這個工作機上的模型、工作流、設置都很重要,不能輕易重裝
Still stuck after the manual fix?
Preserve the environment, collect the startup log, and use Wonderful Launcher diagnostics as the next step instead of trying random package installs.
Open diagnostics path相關文檔
- ComfyUI 依賴衝突
- ComfyUI Plugin Import Failed 怎麼修
- ComfyUI 的 Python Embedded 是什麼
- 安全安裝自定義節點
- ComfyUI 的 Safetensors 應該放哪裡
資料來源
先按上面的步驟定位根因。還卡住時,可以下載 Wonderful Launcher 檢查目前機器;啟動器原生修復、任務日誌和執行階段檢查會集中在一起。credits 只用於圖片生成和按量工具。
下載 Wonderful Launcher查看 credits 方案這篇文件解決了你的問題嗎?
你的回饋會幫助我們優先補強真實 ComfyUI 排障文件。