问题描述
在使用PuLID插件进行换脸操作时,会有以下的报错:
NotImplementedError: No operator found for memory_efficient_attention_forward with inputs:
query : shape=(1, 577, 16, 64) (torch.bfloat16)
key : shape=(1, 577, 16, 64) (torch.bfloat16)
value : shape=(1, 577, 16, 64) (torch.bfloat16)
attn_bias : <class 'NoneType'>
p : 0.0
fa3F@0.0.0 is not supported because:
xFormers wasn't build with CUDA support
operator wasn't built - see python -m xformers.info for more info
fa2F@0.0.0 is not supported because:
xFormers wasn't build with CUDA support
operator wasn't built - see python -m xformers.info for more info
cutlassF-pt is not supported because:
xFormers wasn't build with CUDA support
Prompt executed in 58.81 seconds
问题解析
项目 | 是否正常 |
---|---|
xformers 安装 | ✅ 成功安装了基本包 |
是否编译 CUDA 扩展(fa3F) | ❌ 没有(导致报错) |
是否能在 GPU 上跑 Flux 等插件 | ❌ 无法运行,直接报错 |
问题原因就是当前的Xformes并没有编译CUDA相关的扩展,导致人像替换的时候出错。
正确安装方法
1.查看你当前Comfyui环境中的pytorch版本,并找到相匹配的xformers轮子,例如我的python版本是2.7.0,那么我就要去下面的链接查看哪个版本的Xformes支持这个版本的python:
https://github.com/facebookresearch/xformers/releases
通过以下信息得知,我当前的PyTorch需要安装的是Xformes0.0.30版本
2.通过下面的链接下载Xformes轮子:
download.pytorch.org/whl/xformers/
我需要下载的轮子是xformers-0.0.30-cp312-cp312-win_amd64.whl,其中cp312代表的是你Comfyui里的python版本。
然后通过以下代码安装这个轮子:(修改轮子路径为你自己的下载路径。环境的路径为你自己的Comfyui的环境路径)
python.exe -m pip install H:\Software\Xformers\xformers-0.0.30-cp312-cp312-win_amd64.whl
3.安装相匹配的torchvision,下载链接:
https://download.pytorch.org/whl/cu128/torchvision/
要选择相匹配的cuda版本。因为我的cuda版本是12.8,所以我下载的是:torchvision-0.22.1+cu128-cp312-cp312-win_amd64.whl
安装代码:(修改轮子路径为你自己的下载路径。环境的路径为你自己的Comfyui的环境路径)
python.exe -m pip install --no-deps H:\Software\Xformers\torchvision-0.22.1+cu128-cp312-cp312-win_amd64.whl
其他注意事项
1.如果你是cuda12.5,建议升级为cuda12.8,先去控制面板卸载所有带有cuda的程序,然后下载12..8版本进行下载:
CUDA Toolkit 12.8 Downloads | NVIDIA Developer
2.如果你的PyTorch是2.7.1版本,找不到相关的轮子,可以卸载当前的PyTorch:
python.exe -m pip uninstall torch torchvision torchaudio -y
然后到下面的链接下载2.7.0的PyTorch 轮子进行安装之后再执行上面的步骤
https://download.pytorch.org/whl/torch/
版本选择参考:torch-2.7.0+cu128-cp312-cp312-win_amd64.whl

暂无评论内容