快速结论:该报错通常出现在 ComfyUI ControlNet Aux 的 AIO_Preprocessor 节点(特别是 MediaPipe Face 相关预处理)执行阶段,说明当前安装的 mediapipe 版本里 solutions 子模块不可用,优先排查依赖包版本。
适用环境:Issue 中已确认的环境包括 Windows 版 ComfyUI Portable(Easy-Install / windows_portable)与 Python 3.12.10;另有用户报告 Ubuntu 24.x、Python 3.13.11、PyTorch 2.8.0+cu128、ComfyUI 0.8.3 出现同样报错。其余工具、CUDA、显卡信息未在 Issue 中给出。
最快修复方案:暂无确认的一步修复方案。Issue 讨论给出的方向是确认 mediapipe 版本:solutions API 在 0.10.10–0.10.20 被移除,在 0.10.21+ 恢复,但 0.10.31+ 又再次被移除。
注意事项:不要盲目安装最新版或过旧版 mediapipe;Issue 中给出的版本区间存在反复变化,具体可用范围需要在你的 Python 版本与 ComfyUI 环境中实测验证。
问题场景
用户在 ComfyUI 中运行 ControlNet Aux 插件的 AIO_Preprocessor 节点时触发异常。从堆栈看,节点调用链进入 comfyui_controlnet_aux/node_wrappers/mediapipe_face.py,随后加载 src/custom_controlnet_aux/mediapipe_face/mediapipe_face_common.py,在其中访问 mp.solutions.drawing_utils 时失败。Windows Portable 与 Ubuntu + Python 3.13 的用户均复现了同类报错。
报错原文
!!! Exception during processing !!! module 'mediapipe' has no attribute 'solutions'
Traceback (most recent call last):
File "...\ComfyUI\execution.py", line 516, in execute
...
File "...\ComfyUI\custom_nodes\comfyui_controlnet_aux\node_wrappers\mediapipe_face.py", line 30, in detect
from custom_controlnet_aux.mediapipe_face import MediapipeFaceDetector
File "...\comfyui_controlnet_aux\src\custom_controlnet_aux\mediapipe_face\__init__.py", line 9, in
from .mediapipe_face_common import generate_annotation
File "...\comfyui_controlnet_aux\src\custom_controlnet_aux\mediapipe_face\mediapipe_face_common.py", line 8, in
mp_drawing = mp.solutions.drawing_utils
^^^^^^^^^^^^
AttributeError: module 'mediapipe' has no attribute 'solutions'
原因分析
问题根源指向 mediapipe 的版本不匹配。Issue 讨论明确指出:mediapipe 0.10.10–0.10.20 移除了 solutions API,之后在 0.10.21+ 恢复,但在 0.10.31+ 又被移除。因此当环境中装到的 mediapipe 版本恰好处于“无 solutions”区间时,ControlNet Aux 的 MediaPipe Face 代码在导入阶段就会抛出该 AttributeError。
环境排查
- 确认 ComfyUI 版本与安装方式(Windows Portable / Easy-Install / 源码安装)。
- 确认 Python 版本:Issue 中已出现 Python 3.12.10 与 Python 3.13.11。
- 确认 PyTorch 与 CUDA 版本:Issue 中提到 PyTorch 2.8.0+cu128、ComfyUI 0.8.3。
- 确认
comfyui_controlnet_aux插件版本是否与当前 ComfyUI 兼容。 - 重点确认当前环境中
mediapipe的实际安装版本,判断是否落在 0.10.10–0.10.20 或 0.10.31+ 的无solutions区间。
解决步骤
- 先检查当前
mediapipe版本,确认它处于哪个 API 区间。 - 如果版本落在 0.10.10–0.10.20,可优先尝试将
mediapipe调整到 0.10.21+(但需同时避开 0.10.31+,因为该区间再次移除solutions)。 - 对于 Python 3.12,Issue 讨论中提到至少需要
mediapipe0.10.21;Python 3.13 环境下的可用版本需自行实测。 - 调整依赖后重启 ComfyUI,再重新运行 AIO_Preprocessor 节点。
- 若问题仍然存在,请补充
mediapipe版本、Python 版本与完整堆栈到原 Issue。
验证方法
重新运行包含 AIO_Preprocessor(MediaPipe Face 预处理)的工作流,确认不再出现 AttributeError: module 'mediapipe' has no attribute 'solutions',且节点能正常输出预处理结果。
参考来源
Fannovel16/comfyui_controlnet_aux #604
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
这个方案解决了吗?
可以继续搜索完整报错,或查看同一工具的其他排查指南。
![[Help] "No data found" error when training model – train_data_dir issue](https://www.chat-gpts.plus/wp-content/uploads/2026/09/3374-c5ab074b-768x403.jpg)

