4070 12GB 跑通 Qwen-Image-Edit 2511 NSFW:从 GGUF 安装到 mmproj 命名踩坑全纪录
一张 RTX 4070 12GB 显卡,从零跑通 Qwen-Image-Edit 2511 NSFW 模型的完整排障之路

4070 12GB 跑通 Qwen-Image-Edit 2511 NSFW:从 GGUF 安装到 mmproj 命名踩坑全纪录
前言
如果你有一张 RTX 4070(12GB 显存),想在 ComfyUI 里跑 Qwen-Image-Edit 2511 的 NSFW 二次训练模型,这篇文章记录了我从模型选择到最终跑通的所有坑点。整个过程涉及 GGUF 量化档位选择、ComfyUI-GGUF 节点安装、文本编码器维度不匹配、显存 offload 瓶颈优化,以及最后那个让人崩溃的 mmproj 文件命名问题。
每一步都有截图级别的细节和日志分析,确保你不用重复踩这些坑。

先说实测最终使用配置:
| 组件 | 文件 | 大小 |
|---|---|---|
| Unet(主模型) | Qwen-Rapid-NSFW-v23_Q4_K.gguf | 13.34GB |
| 文本编码器 | Qwen2.5-VL-7B-Instruct-UD-Q4_K_XL.gguf | 4.79GB |
| 视觉塔 | Qwen2.5-VL-7B-Instruct-mmproj-BF16.gguf | 1.35GB |
| 加速 LoRA | Qwen-Image-Edit-2511-Lightning-4steps-V1.0-bf16.safetensors | 849.6MB |
| VAE | qwen_image_vae.safetensors | 253.8MB |

enable_turbo_mode关闭,20步实跑数据:
[INFO] gguf qtypes: F32 (291), BF16 (226), F16 (2) 17:42 [20/146]
[INFO] CLIP/text encoder model load device: cuda:0, offload device: cpu, current: cpu, dtype: torch.float16
[INFO] Model WanVAE prepared for dynamic VRAM loading. 241MB Staged. 0 patches attached. Force pre-loaded 60 weights: 61 KB.
[INFO] Requested to load QwenImageTEModel_
[INFO] loaded completely; 7220.68 MB usable, 6222.63 MB loaded, full load: True
[INFO] Unloaded partially: 1343.96 MB freed, 4878.66 MB remains loaded, 58.49 MB buffer reserved, lowvram patches: 0
[INFO] Model WanVAE prepared for dynamic VRAM loading. 241MB Staged. 0 patches attached. Force pre-loaded 60 weights: 61 KB.
[INFO] loaded completely; 7257.49 MB usable, 6222.63 MB loaded, full load: True
[INFO] gguf qtypes: F16 (1093), F32 (1), Q8_0 (30), Q4_K (578), Q6_K (232)
[INFO] model weight dtype torch.bfloat16, manual cast: None
[INFO] model_type FLUX
[INFO] Requested to load QwenImage
[INFO] loaded partially; 7068.46 MB usable, 6979.79 MB loaded, 5852.39 MB offloaded, 88.61 MB buffer reserved, lowvram patches: 0
100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 20/20 [03:23<00:00, 10.17s/it]
[INFO] Requested to load WanVAE
[INFO] Unloaded partially: 3444.87 MB freed, 3534.91 MB remains loaded, 91.23 MB buffer reserved, lowvram patches: 0
[INFO] Model WanVAE prepared for dynamic VRAM loading. 241MB Staged. 0 patches attached. Force pre-loaded 60 weights: 61 KB.
[INFO] Prompt executed in 226.46 seconds
[INFO] got prompt
[INFO] loaded partially; 6831.03 MB usable, 6742.36 MB loaded, 6089.82 MB offloaded, 88.61 MB buffer reserved, lowvram patches: 0
100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 20/20 [03:41<00:00, 11.05s/it]
[INFO] Requested to load WanVAE
[INFO] Unloaded partially: 2448.94 MB freed, 4293.42 MB remains loaded, 88.61 MB buffer reserved, lowvram patches: 0
[INFO] Model WanVAE prepared for dynamic VRAM loading. 241MB Staged. 0 patches attached. Force pre-loaded 60 weights: 61 KB.
[INFO] Prompt executed in 223.05 seconds
[INFO] got prompt
[INFO] loaded partially; 7730.71 MB usable, 7659.90 MB loaded, 5172.28 MB offloaded, 70.82 MB buffer reserved, lowvram patches: 0
100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 20/20 [03:30<00:00, 10.55s/it]
[INFO] Requested to load WanVAE
[INFO] Unloaded partially: 3729.65 MB freed, 3930.25 MB remains loaded, 91.23 MB buffer reserved, lowvram patches: 0
[INFO] Model WanVAE prepared for dynamic VRAM loading. 241MB Staged. 0 patches attached. Force pre-loaded 60 weights: 61 KB.
[INFO] Prompt executed in 213.91 secondsenable_turbo_mode开启,4步实跑数据:速度是快了,但一致性和整体质量不好
[INFO] got prompt
[INFO] Model WanVAE prepared for dynamic VRAM loading. 241MB Staged. 0 patches attached. Force pre-loaded 60 weights: 61 KB.
[INFO] Requested to load QwenImageTEModel_
[INFO] loaded completely; 7142.80 MB usable, 6222.63 MB loaded, full load: True
[INFO] Requested to load QwenImage
[INFO] loaded partially; 7569.71 MB usable, 7477.88 MB loaded, 5354.30 MB offloaded, 91.23 MB buffer reserved, lowvram patches: 0
100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 4/4 [00:25<00:00, 6.28s/it]
[INFO] Requested to load WanVAE
[INFO] Unloaded partially: 3639.12 MB freed, 3838.76 MB remains loaded, 175.59 MB buffer reserved, lowvram patches: 120
[INFO] Model WanVAE prepared for dynamic VRAM loading. 241MB Staged. 0 patches attached. Force pre-loaded 60 weights: 61 KB.
[INFO] Prompt executed in 32.88 seconds
[INFO] got prompt
[INFO] Model WanVAE prepared for dynamic VRAM loading. 241MB Staged. 0 patches attached. Force pre-loaded 60 weights: 61 KB.
[INFO] Requested to load QwenImageTEModel_
[INFO] Unloaded partially: 3405.49 MB freed, 433.27 MB remains loaded, 175.59 MB buffer reserved, lowvram patches: 235
[INFO] loaded completely; 6876.47 MB usable, 6222.63 MB loaded, full load: True
[INFO] loaded partially; 7513.40 MB usable, 7422.12 MB loaded, 5410.05 MB offloaded, 91.23 MB buffer reserved, lowvram patches: 0
100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 4/4 [00:42<00:00, 10.75s/it]
[INFO] Requested to load WanVAE
[INFO] Unloaded partially: 3937.81 MB freed, 3484.31 MB remains loaded, 175.59 MB buffer reserved, lowvram patches: 368
[INFO] Model WanVAE prepared for dynamic VRAM loading. 241MB Staged. 0 patches attached. Force pre-loaded 60 weights: 61 KB.
[INFO] Prompt executed in 50.78 seconds第一步:模型选择与显存规划
显存是硬约束
Qwen-Image-Edit 2511 的 NSFW 二次训练版本主要有这些:
| 模型名称 | 类型 | 特点 |
|---|---|---|
| Qwen-Rapid-AIO-NSFW(v23) | Checkpoint 聚合模型 | 社区持续迭代,目前最成熟的 NSFW 版本 |
| WuJi_Qwen2511-AIO-NSFW | Checkpoint | 以 v23 为基础加强一致性 |
| Qwen-Image-Edit NSFW 细节控 | Checkpoint | 蔡子东制作,专门修正身体细节 |
| Qwen_ImageEdit_2511_NSFW_v1.0 | 完整整合包 | 含 GGUF/FP8 多版本,需 12GB+ |
但关键问题是:你的显存能装下哪个?
对于 RTX 4070 12GB:
| 量化档位 | 文件大小 | 4070 12GB 理论上是否适合 |
|---|---|---|
| Q2_K | 7.44GB | 可以,但质量损失明显 |
| Q3_K | 10.05GB | 推荐,留约 2GB 给编码器和 VAE |
| Q4_K | 13.34GB | 不推荐,已超过显存总量 |
| Q5_K 以上 | 15GB+ | 完全不适合 |
下载地址:
https://www.modelscope.cn/models/hf/Arunk25-Qwen-Image-Edit-Rapid-AIO-GGUF/tree/master/v23先测试选择:Qwen-Rapid-NSFW-v23_Q3_K.gguf(10.05GB)。Q4_K 虽然质量更好,但 13.34GB 已经超过 12GB 显存总量,会强制 offload 到内存导致速度骤降。
经验教训:文件体积必须明显小于显卡总显存,要给文本编码器(2-4GB)和 VAE 留出空间。通常需要文件体积之外再预留 30%-50% 的显存空间给运行时开销。

第二步:安装 GGUF 支持节点
ComfyUI 不识 GGUF
下载好 .gguf 文件后,你会发现 ComfyUI 的 UNETLoader 节点下拉框里根本看不到 .gguf 文件——因为 ComfyUI 核心不认识这个格式。
解决方案:安装 ComfyUI-GGUF 节点包(city96 制作,230万+ 下载量)。
安装步骤:
- 打开 ComfyUI Manager,搜索 “gguf”
- 找到 ComfyUI-GGUF,点击安装
- 重启 ComfyUI(必须重启,不会自动生效)
装完还要换节点
装好 GGUF 节点包后,还需要把工作流里的 UNETLoader 节点换成 UnetLoaderGGUF(GGUF 节点包自带的专用加载节点),这样才能在下拉框里看到并选中你的 .gguf 文件。

完整排查顺序:
- 装 ComfyUI-GGUF 节点包 → 重启 ComfyUI
- 删除/替换原生 unet 加载节点 → 改用 UnetLoaderGGUF
- 确认
.gguf文件放在ComfyUI/models/unet/或models/diffusion_models/目录 - clip_name 和 vae_name 不需要换 GGUF 格式,safetensors 即可
第三步:文本编码器维度不匹配
报错信息
装好 GGUF 节点、选中模型后,第一次运行就报了这个错:
RuntimeError: Given normalized_shape=[3584], expected input with shape [*3584],
but got input of size[1, 232, 4096]根因分析
日志里最关键的一行是:Requested to load Qwen3VLTEModel_
这说明当前 clip_name 选的是 Qwen3-VL 系列文本编码器,隐藏层维度是 4096。但 Qwen-Rapid-NSFW 是基于 Qwen-Image-Edit-2511 训练的,内部的 txt_norm 层硬编码为期望 3584 维输入(Qwen2.5-VL-7B 的维度)。
简单说:unet 和文本编码器"不是一对",版本对不上。
解决方法
把 clip_name 从 qwen3vl_8b_fp8_scaled.safetensors 换成 qwen_2.5_vl_7b_fp8_scaled.safetensors(约 8.74GB)。
下载地址:
- 官方:https://huggingface.co/Comfy-Org/Qwen-Image_ComfyUI/blob/main/split_files/text_encoders/qwen_2.5_vl_7b_fp8_scaled.safetensors
- 镜像:https://hf-mirror.com/Comfy-Org/Qwen-Image_ComfyUI/resolve/main/split_files/text_encoders/qwen_2.5_vl_7b_fp8_scaled.safetensors
放置位置:/data/models/text_encoders/
踩坑提醒:文件下载好后不等于切换好了。必须手动点开 clip_name 下拉框重新选中文件,刷新浏览器页面让新文件出现在列表里,然后保存工作流再执行。
第四步:速度瓶颈——显存 offload 之谜
维度修好了,但速度慢得离谱
维度问题解决后,40步生成跑了 6 分 55 秒(10.40s/it),降到 20 步后反而变成 7 分 09 秒(21.47s/it)——步数减半,总时间几乎没变。
日志里的真相
loaded partially; 6472.74 MB usable, 6425.36 MB loaded, 3266.88 MB offloaded模型总共约 9.7GB,但 12GB 显存只能装下 6.4GB,剩下 3.27GB 要在每一步都在 CPU 和 GPU 之间来回搬运。这就是 offload 造成的速度瓶颈。
真正的罪魁祸首:CLIP 编码器太大
对比社区两位用户的配置:
| 项目 | 我(慢) | 12400F+4060 用户(快) |
|---|---|---|
| Unet 量化 | Q3_K | Q6K |
| CLIP/文本编码器 | fp8(7910MB) | Q4KM(GGUF 量化,约 2-3GB) |
| 单步耗时 | 10-21 秒/it | 换算约 80-90 秒/张 |
fp8 版本的文本编码器占了近 8GB 显存,跟主模型抢显存空间,导致主模型被迫 offload 更多权重。而对方用的是 GGUF 量化版 CLIP,体积小得多,把大部分 VRAM 让给了主模型。

解决方案:换成 GGUF 量化版 CLIP

下载地址:
https://huggingface.co/unsloth/Qwen2.5-VL-7B-Instruct-GGUF/tree/main下载 unsloth/Qwen2.5-VL-7B-Instruct-GGUF 仓库中的文件:
- Qwen2.5-VL-7B-Instruct-Q4_K_M.gguf(约 4.36GB)——主文本编码器权重
- mmproj-BF16.gguf(约 1.35GB)——视觉塔配套文件(必须搭配下载,缺一不可)
注意:GGUF 格式的 CLIP 文件不能用原生 CLIPLoader 节点加载,需要用 ComfyUI-GGUF 节点包里的 CLIPLoaderGGUF 专用节点。

第五步:mmproj 文件命名——一个下划线引发的崩溃
新的报错
下载好两个 GGUF 文件放进去后,新的报错出现了:
Cant find mmproj file for Qwen2.5-VL-7B-Instruct-Q4KM.gguf
matching qwen2.5-vl-7b-instruct! Qwen-Image-Edit will be broken!根因:文件名被改动
ComfyUI-GGUF 的 CLIP 加载器会自动在同目录下按文件名规则匹配 mmproj 文件。但下载的文件可能被重命名过(比如少了下划线),导致自动匹配算法认不出对应关系。
正确的命名规则
mmproj 文件名必须以主文件名(去掉量化后缀)开头,中间包含 “mmproj” 关键词:
mmproj-BF16.gguf → Qwen2.5-VL-7B-Instruct-mmproj-BF16.gguf命名规则:主文件名前缀 + mmproj + 精度标识
操作步骤
- 把
mmproj-BF16.gguf重命名为Qwen2.5-VL-7B-Instruct-mmproj-BF16.gguf - 两个文件放在完全相同的目录下(不能一个在根目录一个在子文件夹)
- 重启 ComfyUI(不只是刷新页面)
- 在 CLIPLoaderGGUF 节点里只选择主文件,加载器会自动找匹配的 mmproj

验证方法
控制台日志里如果看到类似 loading mmproj for Qwen2.5-VL-7B-Instruct-Q4_K_M 的信息,就说明匹配成功了。
测试可用配置一览
经过以上所有坑点修复后,RTX 4070 12GB 的测试可用配置:
| 组件 | 文件 | 大小 |
|---|---|---|
| Unet(主模型) | Qwen-Rapid-NSFW-v23_Q3_K.gguf | 10.05GB |
| 文本编码器 | Qwen2.5-VL-7B-Instruct-Q4_K_M.gguf | 4.36GB |
| 视觉塔 | Qwen2.5-VL-7B-Instruct-mmproj-BF16.gguf | 1.26GB |
| 加速 LoRA | Qwen-Image-Edit-2511-Lightning-4steps | 可选 |
关键节点:
- Unet 加载:UnetLoaderGGUF
- CLIP 加载:CLIPLoaderGGUF
- 步数:20 步(配合 Lightning-4steps 可进一步加速)
总结
整个排障过程的核心教训:
- 显存规划要算总账:不只是 unet 体积,还要加上 CLIP 编码器、VAE 和运行时开销
- GGUF 节点包是必须的:ComfyUI 核心不支持 GGUF,必须装 ComfyUI-GGUF
- 文本编码器要和 unet 配对:Qwen-Image-Edit-2511 需要 Qwen2.5-VL(3584 维),不是 Qwen3-VL(4096 维)
- CLIP 也要量化:fp8 版本太大,换成 GGUF Q4KM 能大幅减少显存争抢
- mmproj 命名有规则:主文件名前缀 + mmproj + 精度标识,不能乱改名
希望这篇文章能帮你少踩几个坑。
关联阅读\n\n- [[Qwen-Image-Edit]]\n- [[模型下载改HF]]\n- [[Ideogram 4安全过滤]]\n\n—\n\n## 参考来源
- Qwen-Image-Edit 2511 官方 Hugging Face
- Comfy-Org Qwen-Image ComfyUI 官方模型包
- unsloth/Qwen2.5-VL-7B-Instruct-GGUF
- ComfyUI-GGUF GitHub(city96)
- Qwen-Rapid-AIO-NSFW RunningHub 模型页
- Qwen-Image-Edit NSFW 细节控(LiblibAI)
- ComfyUI-GGUF CLIP 加载问题 Issue #317
- Reddit: Qwen-Image-Edit 2511 NSFW 讨论
- 大凯辰光 AI 工作室整合包教程
- ComfyUI 大型模型 offload 优化讨论
–全文完–

梦行志
