☰
ComfyUI本地部署完全指南:不求人,自己动手从零到精通
2026/10/14 14:40:03 网站建设 项目流程

自从 ComfyUI 火起来之后,网上铺天盖地都是教程,但大多数教程的终点都是同一个动作:去某位大佬网盘里下整合包。整合包确实很香,解压就能跑,可一旦你换了显卡、加了新插件、想要升级到新版,问题就来了。自己手动做一次 ComfyUI 本地部署,不是装X,而是把“能不能跑、为什么跑不动、坏了怎么修”这几个能力彻底交回自己手里。这篇不是让你背命令,而是把我自己从入门到折腾一路踩过的坑拆开给你看,照着做一遍,后面再遇到报错,你大概率能自己解决。

1. 为什么本地部署 ComfyUI 值得自己动手

1.1 本地部署解决什么痛点

先说个很现实的事:很多人一开始用的是在线绘图平台或云端 ComfyUI,这种模式的好处是零配置,打开网页就能出图。但用久了你会发现,免费额度很快就没了,传工作流时如果节点涉及自定义插件,平台不一定支持,而且你的图片、提示词、训练素材全都在别人服务器上,敏感项目根本不敢放上去。

本地部署就是把整个 ComfyUI 环境搬到你自己电脑里,模型文件、工作流、插件全部躺在本地硬盘上。没有额度限制,没有排队,断电断网也能继续折腾。更重要的是,你能随时改代码、调参数、装新插件,自由度比任何在线版本都高。

还有一个经常被忽略的点:本地部署是学习 AI 绘图底层逻辑的最好入口。当你亲手配置了 Python 环境、装好 PyTorch、启动服务、加载模型,你就会明白所谓“AI 绘画”并不是一个黑盒,而是一套有输入输出、有依赖关系的本地程序。这种理解,是花钱买在线会员买不到的。

1.2 整合包 vs 手动部署:我为什么不无脑推荐整合包

国内最流行的是秋叶整合包,这个确实做得很用心,自带空环境、常用插件、模型下载工具,小白拿到手解压就能跑。但整合包有三个天生短板:

对比维度整合包手动部署
上手门槛极低,解压即用需要一点命令行基础
更新灵活性依赖作者更新,升级容易冲突随时 git pull 更新
问题排查报错后很难定位原因自己搭的环境,心里有数
插件兼容内置版本可能过旧按需安装,版本可控
磁盘占用往往塞了很多你用不到的东西只装自己需要的
学习价值几乎为零一次学会,终身受用

我见过不少用整合包的人,遇到一个报错就去群里发截图“求大佬看看”,等的过程中什么都干不了。而手动部署的人,看到报错会先去看 log,查路径,activate 虚拟环境,用 pip list 对比缺什么包。这不是说整合包不好,而是整合包的“省事”只在第一次安装时有效,之后每一次折腾都是在替你承担不确定性。

所以我的建议是:如果你只是想随便玩玩,整合包可以。但如果你打算认真用 ComfyUI 做项目、批量出图、研究工作流,我强烈建议你至少手动部署一次。哪怕最后你还是用回整合包,这次手动部署也会让你知道整合包帮你在背后做了什么。

1.3 “不求人”的真正含义

这个教程标题叫“不求人”,不是因为我会把所有答案都写出来,而是想帮你建立一套自己解决问题的能力。ComfyUI 的变化非常快,几乎每个月都有新插件、新模型、新参数,没有任何一篇教程能永远包办未来所有问题。

当你掌握了手动部署这套流程,以后遇到任何新工具,比如本地部署其他大模型、部署 Whisper 服务、跑本地视频生成,你都能举一反三:先看官方文档,检查硬件是否达标,配置环境,拉代码,装依赖,找模型,跑通 hello world。这条路走通了,你就不再需要到处找人帮你“远程看一下”了。

2. 动手前的硬件评估与环境准备

2.1 显卡与显存才是核心

ComfyUI 的绘图计算主要在 GPU 上完成,CPU 也能跑,但速度会慢到怀疑人生。所以第一件事就是确认你的显卡型号和显存大小。

显存决定了你能跑多复杂的模型、多大的图片尺寸。常见的误区是拿电脑内存来替代显存,这两个是完全不同的东西。内存是 CPU 用的临时存储,显存是 GPU 专用的高速存储,AI 模型运行时权重、中间特征图都放在显存里,内存再大也没法直接弥补显存缺口,顶多靠 CPU offload 硬撑,速度会断崖式下降。

显存容量适合的场景
4GB跑 SD 1.5 小尺寸图,勉强跑 SDXL 低分辨率,需要开启低显存模式
6GBSD 1.5 基本流畅,SDXL 需要裁剪分辨率或开启优化
8GBSDXL 可以在 512x768 左右流畅跑,搭配放大节点可出高分辨图
12GBSDXL 主流分辨率基本无压力,可跑常见 ControlNet
16GB可以跑 SDXL 较高分辨率,尝试部分视频模型,训练 LoRA 轻松一些
24GB能跑更多大模型、微调、视频生成,几乎不用操心显存

我实际操作中的体会是:8GB 显存是一个舒适起点。如果你只有 4GB 也不是不能玩,但建议从 SD 1.5 模型起步,把图片设置成 512x512 或者 512x768,不要一上来就挑战 1024 以上的图。

2.2 系统、驱动与 CUDA 环境

ComfyUI 官方支持 Windows、Linux 和 macOS。大部分新手用 Windows,我教程也以 Windows 为例,但 Linux 思路完全一致,只是命令稍微不同。

显卡驱动是很多人忽略的关键点。你装完显卡后,如果从来没有更新过驱动,PyTorch 可能认不出你的 GPU。建议去显卡官网或设备管理器更新到较新的正式版驱动。NVIDIA 用户可以在驱动面板里看 CUDA 版本信息,驱动足够新的话,PyTorch 的 CUDA 运行库可以自动适配,不用单独全局安装 CUDA Toolkit。

一个实用的检测方法:在命令行里运行nvidia-smi,如果能看到显卡信息和右上角的 CUDA Version,说明驱动正常。然后再在你的 Python 虚拟环境里运行python -c "import torch; print(torch.cuda.is_available())",如果输出 True,说明 PyTorch 和 GPU 已经成功对接。

不要盲目去装最新 CUDA,PyTorch 对 CUDA 版本有要求,但通常只要驱动版本高于最小要求就行。反而是驱动过旧更容易出现问题。

2.3 必要的软件基础准备

手动部署 ComfyUI,最简配置需要这三样:

  • Python 3.10 或 3.11:ComfyUI 官方建议 3.10 以上,3.12 兼容性有波动。我建议无脑 Python 3.10.11,稳定、省心。
  • Git:用来拉取 ComfyUI 源码和安装自定义节点。
  • 现代浏览器:ComfyUI 是个 Web 界面服务,Chrome 或 Edge 都行。

另外建议准备一个顺手的终端工具,Windows 用户用 PowerShell 就够,不推荐用 CMD 因为复制粘贴编码容易出问题。如果你经常要下载国内源的大模型,可以额外准备一个支持断点续传的下载器,这个后面会专门讲。

这些都是基础软件,装的时候注意一点:Python 安装时一定要勾选Add Python to PATH,否则后面运行 python 命令会提示“不是内部或外部命令”。同理,Git 安装时有一步让你选择编辑器,保持默认的 Vim 就行,不需要换。

3. ComfyUI 完整手动部署流程

3.1 获取 ComfyUI 源码与目录结构

打开终端,进入你打算放项目的地方,然后执行:

git clone https://github.com/comfyanonymous/ComfyUI.git cd ComfyUI

如果你在 GitHub 拉取速度很慢,可以用国内的加速镜像地址,把github.com换成镜像站域名,效果和官方仓库完全一致。整个 ComfyUI 项目不大,几 MB 而已,等几秒就能下载完。

拉取完之后,建议先看一眼目录结构,这对后面的排查至关重要:

  • main.py:启动入口,服务端主程序。
  • models/:模型统一存放目录,里面又细分 checkpoints、loras、vae、controlnet、upscale_models 等子目录。
  • custom_nodes/:自定义节点和插件放在这里,每个插件是一个子文件夹。
  • input/:默认的图片输入目录,工作流里加载图片会用到。
  • output/:生成的图片默认保存到这里。
  • web/:前端界面文件,正常情况下不用动。
  • requirements.txt:Python 依赖列表。

理解目录结构之后,你后面遇到“为什么找不到模型”这类问题,第一反应就是去检查models/checkpoints里有没有 .safetensors 文件,而不用等别人告诉你。

3.2 创建 Python 虚拟环境与安装依赖

直接在全局环境里pip install -r requirements.txt是新手最容易踩的坑。这样做很可能和你电脑上其他 Python 项目的依赖产生冲突,尤其是 torch 这种体积大、版本敏感的库。正确做法是创建独立虚拟环境。

Windows PowerShell 下执行:

python -m venv venv .\venv\Scripts\Activate.ps1

激活后命令行前面会出现(venv)标记,后面的安装都装在这个隔离环境里,不污染系统 Python。Linux / macOS 下激活命令是source venv/bin/activate。

然后安装依赖。ComfyUI 的 requirements.txt 包含常规依赖,但 torch 通常建议单独安装,因为默认源里的 torch 不一定带 CUDA 支持。我建议先装 torch:

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

然后安装剩余依赖:

pip install -r requirements.txt

如果网络状况不好,可以把 pip 源切换到清华镜像,但注意 torch 的 cu121 轮子文件比较大,清华镜像不一定全,所以 torch 那一步最好保留官方源。装完之后验证 GPU 可用:

python -c "import torch; print(torch.cuda.is_available()); print(torch.__version__)"

这一步我至少遇到三次“明明驱动装了但输出 False”的情况,最后排查下来都是 torch 装成了 CPU 版本。大家装完务必看一眼 torch.version,如果是 +cpu 结尾,说明没装上 CUDA 版,重新用 cu121 源装一遍。

3.3 下载基础模型与放置路径

ComfyUI 本身没有模型,它只是一个绘图引擎,真正出图靠的是模型文件。最常用的是 Stable Diffusion 系列模型,文件名通常是.safetensors,体积在 2GB 到 7GB 之间。

下载模型有几个来源:一是国外模型站(Hugging Face 上有官方仓库),二是国内各种模型社区,三是一些模型聚合站。如果你在国外模型站下载速度很慢,建议配置国内镜像环境变量,比如在终端里运行:

$env:HF_ENDPOINT = "https://hf-mirror.com"

之后再执行任意 huggingface 下载命令,都会自动走国内镜像。这是合规且普通的国内镜像加速方案,我实测下载速度能快很多,强烈建议用。

模型文件放哪里很关键。基础模型放在models/checkpoints目录下,一个文件对应一个模型。比如你下载了sd_xl_base_1.0.safetensors,就把它放到:

ComfyUI/models/checkpoints/sd_xl_base_1.0.safetensors

其他类别模型也都有固定位置:

  • LoRA 模型:models/loras
  • VAE 模型:models/vae
  • ControlNet 模型:models/controlnet
  • 放大模型:models/upscale_models
  • CLIP 模型:models/clip
  • T2I-Adapter 模型:models/adapters

如果你分不清某类文件放哪,可以启动 ComfyUI 后看界面的 Load 节点,它的下拉列表就是扫描这些目录得到的。我之前直接把 ControlNet 文件放到 checkpoints,结果加载节点里怎么都找不到,最后才发现路径错了。

3.4 首次启动 ComfyUI 与界面初识

模型放好之后,启动就很简单了:

python main.py

首次启动会加载一堆模块,看到类似To see the GUI go to: http://127.0.0.1:8188的提示,就说明服务跑起来了。浏览器打开这个地址,就是 ComfyUI 的图形界面。

如果想省去每次敲命令的麻烦,可以在 ComfyUI 根目录建一个启动.bat,内容写:

@echo off call venv\Scripts\activate.bat python main.py pause

以后双击就能启动。注意确定.bat文件编码是 ANSI,否则中文注释可能变乱码。

第一次进界面,你会看到一张由各种方块和连线组成的默认工作流。这个界面看起来复杂,理解起来其实很简单:左边是控制区,中间是节点画布,每个节点负责一个任务,连线表示数据流向,从“加载模型”开始,经过“正向提示词”、“KL采样器”、“VAE解码”,最后到“保存图片”。鼠标右键可以呼出节点菜单,双击空白处会出现节点搜索框。

我的建议是第一次先别急着修改节点,直接点击默认工作流中的Queue Prompt按钮生成一张测试图。如果能看到第一张图顺利跑出来,说明你的部署已经成功了一大半。

3.5 安装常用自定义节点与插件

ComfyUI 的原生节点能完成基础文生图、图生图,但很多高级功能需要自定义节点支持,比如 ControlNet 控制、视频生成、放大细化、翻译提示词等等。安装自定义节点最优雅的方式是使用 ComfyUI Manager。

在custom_nodes目录下执行:

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

重启 ComfyUI 后,界面右侧会出现一个“Manager”菜单。点进去可以浏览所有插件,点击 Install 就能在线安装。以后启动时如果有插件更新,Manager 也会提示。

常用插件我列几个,按需装,别一次装太多:

  • ComfyUI Manager:插件管理器,必装。
  • ComfyUI ControlNet Aux:ControlNet 相关预处理器。
  • Ultimate SD Upscale:图片放大插件。
  • ComfyUI Impact Pack:局部重绘和检测类节点。
  • AIGODLIKE-ComfyUI-Translation:中文翻译插件,适合英文不好的朋友。

注意一个原则:插件装得越多,出问题的概率越大。每安装一个新插件,都要重启一次 ComfyUI,确认能正常加载,再继续装下一个。否则一上来装十来个插件,报错你都不知道是哪一个引起的。

4. 排错手册与性能优化实战

4.1 启动报错最常踩的坑

手动部署后第一个报错十有八九是:ModuleNotFoundError: No module named 'torch'。这个报错说明你当前运行 Python 的虚拟环境没有装 torch。原因通常是终端里没激活 venv,或者激活失败。眼尖的朋友可以在命令行前面看有没有(venv)标记,没有就重新执行激活命令。

第二个高发报错是:Could not find model或者低阶列表空白。这种情况几乎都是模型文件路径不对,去对应的 models 子目录检查一下文件名和后缀,ComfyUI 不认中文名和空格,建议统一改成字母和下划线命名。

第三个常见问题是端口被占用,启动时提示Address already in use。要么把其他占 8188 端口的程序关掉,要么启动时换一个端口:

python main.py --port 8189

如果你是从整合包转手动部署,还有一个容易忽略的问题:旧的整合包 python 环境和手动部署的环境可能共用显卡驱动缓存,出现奇怪的情形。我遇到过一次启动就崩溃,最后重启电脑、清空__pycache__目录才正常。

4.2 显存不足与 OOM 处理

生成图片时最常见的是爆显存,报错一串CUDA out of memory。这个报错不要慌,它只是告诉你显存不够,不一定是配置有问题。处理方法按优先级排序:

第一,降低图片分辨率。SD 1.5 默认 512x512,你如果强行拉到 1024x1024,8GB 显存直接爆。先把分辨率降到显存能承受的范围,跑通之后再想办法放大。

第二,减小 Batch size。Batch size 是同时处理的图片数量,默认 1 就行,有的人为了“效率”调成 4,显存立刻翻四倍,不爆才怪。

第三,启用 ComfyUI 的低显存模式。启动时加上参数:

python main.py --lowvram

这个模式会把部分模型层暂时放到内存,换取显存空间,但速度会变慢。还有--novram是禁用显存卸载,不推荐。

第四,拆解流程。不要在一个工作流里同时加载多个大模型或大量 ControlNet 模型,比如先用大模型出图,再单独交给放大工作流处理。写工作流的时候尽量精简节点,减少中间张量占用的显存。

4.3 模型下载失败或加载后效果异常

模型下载失败在网络不稳定的地区很常见。解决办法其实很简单:不要用浏览器直接下载,大文件推荐带断点续传的下载器,或者先用网盘离线下载再转到本地。下载完成后检查文件大小是否和源站一致,很多“加载失败”其实是文件不完整。

另外有一种情况:模型加载成功,但生成出来的图全是黑图或噪点。这种八成是 VAE 出了问题。很多基础模型自带的 VAE 不一定好,你需要额外下载一个修复过的 VAE 文件放到models/vae,然后工作流里在“VAE 解码”节点前强制加载。如果你用的是 SDXL 模型,还可能是正负提示词格式不对,SDXL 一般推荐使用prompt加negative_prompt的写法,具体要看工作流模板。

还要注意模型版本匹配。比如你下载一个 ControlNet 模型,必须和基础模型版本一致,SDXL 的 ControlNet 不能用于 SD 1.5,否则不报错,但结果完全没有控制效果,让人误以为插件坏了。

4.4 性能调优:实测有效的几个方向

很多人觉得出图慢就跑不动了,其实 ComfyUI 的可调参数很多,我实测下来这几个方向最有效:

优先更新显卡驱动。一次驱动升级能让性能提升 10% 到 20%,这是最容易忽略的免费优化,别整天折腾代码。

然后是模型加载方式。ComfyUI 默认把模型完整加载到显存,如果你同时开了浏览器、录屏软件,显存被抢占会导致性能下降。关闭不必要的程序,给 ComfyUI 留出干净的显存空间。

还有采样器选择。不同的采样器速度和画质差异很大,同等步数下,DPM++ 系列速度适中,Euler 系列更快,适合初步测试。实际项目出图时不要盲目追求高步数,20 到 30 步通常是甜点区间,30 步以上画质提升递减,时间却线性增加。

最后,升级 PyTorch 版本。每次 PyTorch 大版本更新,对运算图的优化都很明显。定期在虚拟环境里更新一下:

pip install --upgrade torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

4.5 备份与升级习惯

手动部署之后,更新 ComfyUI 只需要在根目录执行:

git pull

然后重启服务。但这一步有个前提:你要先备份自己的东西。models目录里的模型文件少则几 GB,多则几十 GB,不需要备份到网盘,但至少要做好清单,记录文件名和用途。custom_nodes目录里可能有你手动改过的代码,更新主程序前先确认插件兼容性。

我个人的习惯是每次升级前先复制一份custom_nodes和input目录,保存到另一个文件夹,再把models/checkpoints的目录结构截图存下来。升级后如果出问题,我直接恢复旧目录,两分钟就回去了。别嫌麻烦,我在升级后遇到过插件和核心不兼容,整个环境废掉的情况,没有备份就得重新配半天。

5. 工作流与进阶玩法:部署完只是开始

5.1 导入别人的工作流

本地部署成功之后,最爽的事就是可以到处导入别人分享的工作流文件。工作流通常是.json文件,在 ComfyUI 界面中直接把 JSON 文件拖入浏览器空白处,就能自动生成节点结构。

但导入之后大概率会遇到两种情况:一是提示缺失某个自定义节点,二是提示缺少某个模型。缺失自定义节点时,打开 Manager 搜索对应插件安装;缺失模型时,看提示的模型文件名,去相应目录补上。

有个小技巧:导入工作流之前,先把 JSON 文件用文本编辑器打开,搜索ckpt_name、lora_name等字段,可以提前看到需要哪些模型文件,免得导入后一个一个查。用久了你就会发现,很多人分享工作流时并不附上所有模型链接,模型管理能力才是真正拉开差距的地方。

5.2 模型管理技巧

模型一多,管理就成了大问题。我现在的models/checkpoints里有二十多个模型,全靠命名规范硬记是不现实的。我总结了一套自己的方法:

  • 文件名统一格式:类别_风格_版本.safetensors,比如realistic_photography_v10.safetensors。
  • 在模型目录里放一个说明.md,记录每个模型的来源、用途、推荐参数。
  • 定时清理长期不用的模型,硬盘空间被几十个几 GB 的模型占满是很常见的悲剧。
  • 如果两个目录需要共用模型,可以用符号链接(Windows 下mklink),不用复制两份,省空间省时间。

LoRA 模型管理同理。很多 LoRA 文件的触发词写在文件名里,建议文件名保留原始触发词和版本信息,不要为了好看改成“头像风格1”这种名字,否则你会在关键时刻完全想不起来它该怎么用。

5.3 生成视频与动画的扩展玩法

当你把传统文生图、图生图流程跑顺之后,ComfyUI 更广阔的玩法是视频生成和动画。比如一些基于扩散模型的视频生成节点、AnimateDiff 系列插件,本质上也是在本地跑大模型,只是输入输出从单帧变成了多帧。

视频生成对显存的要求比单图又上了一个台阶。我的建议是先从低分辨率、短视频帧数开始,比如 512x512、8 到 16 帧,跑通流程后再逐步提升。视频模型的模型文件体积更大,加载更慢,建议单独给视频工作流配置一个低显存优化版本,别和文生图工作流混在一起。

5.4 把 ComfyUI 作为本地服务给团队用

如果你跑熟了,想让局域网内其他电脑访问你的 ComfyUI,可以在启动时加参数:

python main.py --listen 0.0.0.0 --port 8188

这样同一局域网下的其他设备,就能通过你的电脑 IP 访问这个服务。适合团队共用一台高性能机器做测试。不过要注意两点:一是别让写死的本地路径或模型路径暴露给不受信任的人,二是局域网多人同时出图会抢占显存,最好按人头分时间段错峰使用。

6. 我踩过坑之后总结的三条经验

这篇内容快写完了,最后分享几条我在实际使用中沉淀下来的经验,句句是换来的教训。

第一,不要追求一步到位。第一次手动部署时,我雄心勃勃地想一次性装好所有插件,结果整整两天都在处理节点冲突。你不需要一上来就装 ControlNet、视频生成、LoRA 训练一大堆,先用原生节点把基础流程跑熟,再按项目需求逐步加装。稳定跑通默认工作流,比什么都强。

第二,日志是你最好的老师。ComfyUI 终端里的日志不是摆设,每一个节点运行都会打印相关信息,报错时先看最后几行,找红色或 error 字样。我排查过的绝大多数问题,最后都能在日志里找到原因。不要一遇到报错就急着截图求人,先自己花两分钟看日志,你常常能自己解决。

第三,模型文件是你最贵重的资产。环境可以重新配,代码可以重新下,但几十 GB 的模型下载成本可能比安装运行环境还高。我每次动 models 目录前都会确认备份状态,转移文件夹时优先用支持校验的工具,防止文件损坏。

ComfyUI 本地部署这条路,不算平坦,但走通之后你会发现在这个 AI 工具疯狂迭代的时代,你终于有了一套可以不依赖别人的本地创作环境。以后不管换显卡、懂 Python、玩新模型,你都能自己搞。这才是真正的“不求人”。

祝你的第一次Queue Prompt顺利跑出一张好图。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询