解决2080Ti使用节点ComfyUI-PuLID-Flux-Enhanced中遇到的问题

使用蓝大的工作流《一键同时换头、换脸、发型、发色之双pulid技巧

刚开始遇到的是不支持bf16的错误

根据《bf16 is only supported on A100+ GPUs #33》中提到,修改pulidflux.py中的dtype 为

dtype = torch.float16 后,出现新的错误,这个新错误可能是由于加载模型的节点改变而造成的(见后面模型加载节点对模型dtype的转换可知):

KSampler

expected scalar type Float but found Half

问chatgpt结果如下:

然后发现flux类的模型dtype如下:

flux1-dev-fp8-e4m3fn.safetensors

dtype is ---->torch.float8_e4m3fn

flux1-fill-dev_fp8.safetensors

dtype is ---->torch.float8_e4m3fn

flux1-fill-dev.safetensors

dtype is ---->torch.bfloat16

flux1-dev.safetensors

dtype is ---->torch.float16

flux1-fill-dev-Q4_1.gguf

dtype is ---->torch.bfloat16

因为在加载模型时,进行了dtype转换:

Loading PuLID-Flux model.

model weight dtype torch.float8_e4m3fn, manual cast: torch.float32

model_type FLUX
Loading PuLID-Flux model.

model weight dtype torch.float16, manual cast: None

model_type FLUX

gguf qtypes: F32 (471), Q4_1 (304), F16 (5)

model weight dtype torch.bfloat16, manual cast: torch.float32

model_type FLUX

上面加载模型的节点输出信息,在comfyui核心代码 D:\AI\ComfyUI\comfy\model_base.py中的语句如下:

复制代码
   logging.info("model weight dtype {}, manual cast: {}".format(self.get_dtype(), self.manual_cast_dtype))

所以数据类型torch.float8_e4m3fn, torch.float8_e5m2, torch.bfloat16只能适配fp32,于是修改pulidflux.py中相关代码如下,问题解决,运行正常,结果正常:

复制代码
    def apply_pulid_flux(self, model,.....):
        .......
        # For 8bit use bfloat16 (because ufunc_add_CUDA is not implemented)
        # For 2080Ti use float16 or float32 (because 2080ti not support bf16)
        if dtype in [torch.float8_e4m3fn, torch.float8_e5m2, torch.bfloat16]:
            #dtype = torch.bfloat16
            dtype = torch.float32

当然,由bf16变为fp32后,显存占用肯定就大了。

注意,当第2次运行时(准确来说是没触发Apply PuLID Flux重新加载运行,也即在这条链路上没有发生变动,例如只改变了提示词),依然会出现错误:KSampler expected scalar type Float but found Half,需要卸载模型及释放节点缓存,重新运行,蓝大的工作流,使用了2次Apply PuLID Flux节点而且加载的模型不一样,如果只使用1个Apply PuLID Flux节点,估计没有这个问题。

相关推荐
ar01236 小时前
AR远程协助作用
人工智能·ar
北京青翼科技6 小时前
PCIe接口-高速模拟采集—高性能计算卡-青翼科技高品质军工级数据采集板-打造专业工业核心板
图像处理·人工智能·fpga开发·信号处理·智能硬件
软件聚导航6 小时前
马年、我用AI写了个“打工了马” 小程序
人工智能·ui·微信小程序
陈天伟教授7 小时前
人工智能应用-机器听觉:7. 统计合成法
人工智能·语音识别
笨蛋不要掉眼泪7 小时前
Spring Boot集成LangChain4j:与大模型对话的极速入门
java·人工智能·后端·spring·langchain
昨夜见军贴06168 小时前
IACheck AI审核技术赋能消费认证:为智能宠物喂食器TELEC报告构筑智能合规防线
人工智能·宠物
DisonTangor8 小时前
阿里开源语音识别模型——Qwen3-ASR
人工智能·开源·语音识别
万事ONES8 小时前
ONES 签约北京高级别自动驾驶示范区专设国有运营平台——北京车网
人工智能·机器学习·自动驾驶
qyr67898 小时前
深度解析:3D细胞培养透明化试剂供应链与主要制造商分布
大数据·人工智能·3d·市场分析·市场报告·3d细胞培养·细胞培养
软件开发技术深度爱好者8 小时前
浅谈人工智能(AI)对个人发展的影响
人工智能