
AttributeError: ‘NoneType’ object has no attribute ‘patcher’
快速结论:此报错典型场景为 ComfyUI IPAdapter Plus 节点运行时缺失 CLIP Vision 模型输入。优先检查节点配置,确保 CLIP Vision 管线已正确连接并加载了模型(如 CLIP_VISION_H.safetensors)。
问题场景
用户在使用自定义节点 ComfyUI_IPAdapter_plus(即 IPAdapter-ComfyUI)中的 IPAdapter 节点时触发。该节点属于 ComfyUI 工作流程中的图像风格/内容适配模块,需要同时获取图像输入与 CLIP Vision 编码器的输出。
报错原文
ERROR:root:!!! Exception during processing !!!
ERROR:root:Traceback (most recent call last):
File "D:\a\ComfyUI\ComfyUI\execution.py", line 153, in recursive_execute
output_data, output_ui = get_output_data(obj, input_data_all)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\a\ComfyUI\ComfyUI\execution.py", line 83, in get_output_data
return_values = map_node_over_list(obj, input_data_all, obj.FUNCTION, allow_interrupt=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\a\ComfyUI\ComfyUI\execution.py", line 76, in map_node_over_list
results.append(getattr(obj, func)(**slice_dict(input_data_all, i)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\a\ComfyUI\ComfyUI\custom_nodes\IPAdapter-ComfyUI\ip_adapter.py", line 162, in adapter
cond, uncond, outputs = self.clip_vision_encode(clip_vision, image, self.plus)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\a\ComfyUI\ComfyUI\custom_nodes\IPAdapter-ComfyUI\ip_adapter.py", line 229, in clip_vision_encode
comfy.model_management.load_model_gpu(clip_vision.patcher)
^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'patcher'
原因分析
根据 Issue 内用户反馈以及报错堆栈信息,最可能的原因是在使用 IPAdapter 节点时,clip_vision 参数被传入了一个 None 值(而不是一个有效的 CLIP Vision 模型对象)。
这通常意味着节点的 CLIP Vision 输入端口没有被正确连接,或者连接的模型加载器没有成功输出模型(例如用户忘记从 CLIP Vision Loader 节点加载模型,或使用了一个不含 CLIP Vision 权重的模型文件)。
用户评论指出:“YOU NEED TO CHANGE THE NODE, FOR ONE THAT HAS THE CLIP VISION, AND ADD ‘CLIP_VISION_H.SAFETENSOR’”,即需要更换为包含 CLIP Vision 的节点,并明确加载 CLIP_VISION_H.safetensors 文件。
环境排查
- ComfyUI 版本(建议更新到最新版,例如 2023 年 11 月之后的版本)
- IPAdapter-ComfyUI 自定义节点版本(建议同步更新)
- 检查工作流中用于加载 CLIP Vision 的节点:是否使用了正确的 CLIP Vision Loader 节点(而非普通的 CLIP Loader)
- 确认加载的模型文件是否为 CLIP_VISION_H.safetensors 或其他官方 CLIP Vision 模型(如
CLIP_VISION_VIT_H) - 检查节点连接:确保 CLIP Vision Loader 的 输出 端口(通常标记为“CLIP VISION”)正确连接到 IPAdapter 节点的“clip_vision”输入端口
解决步骤
- 更新 ComfyUI 以及 IPAdapter-ComfyUI 自定义节点到最新版本(通过 ComfyUI Manager 的“Install Custom Nodes”或 Git pull)。
- 删除工作流中当前可能存在的 IPAdapter 节点,重新添加一个新实例(避免节点状态残留)。
- 添加 CLIP Vision Loader 节点(通常在 ComfyUI 节点列表的
loaders分类下)。 - 在 CLIP Vision Loader 中加载模型文件,例如
CLIP_VISION_H.safetensors(可从官方 Hugging Face 仓库获取)。 - 将 CLIP Vision Loader 的输出 CLIP_VISION 连接到 IPAdapter 节点的对应输入端口。
- 确保其他输入(如模型、图像)也已正确连接;重新运行工作流。
验证方法
工作流正常运行不再报错 AttributeError: 'NoneType' object has no attribute 'patcher',IPAdapter 节点正常输出处理后的图像。控制台不显示异常日志。



