你盯着界面发呆,明明训练好的权重文件就在那儿,可死活不加载?这篇文直接给你把底裤扒干净,看完立马能解决加载失败、列表消失、显存报错这三个最头疼的问题。
我干大模型这一行快15年了,从早期的SD 1.5时代到现在SDXL、Flux,见过太多新手因为一个配置问题抓狂。很多人问我:“老师,我的lora模型为什么不显示在模型列表里?” 或者 “为什么加载了没反应?” 其实90%的情况不是模型坏了,而是你根本没搞懂底层逻辑。别急着卸载重装,先看看下面这几个要命的细节。
第一个坑,路径含中文或特殊符号。这听起来像废话,但真有人信誓旦旦说“我用了英文路径啊”,结果一看文件夹名字是“我的模型_v2”。WebUI底层很多是基于Python写的,对中文支持极差,一旦路径里有非ASCII字符,读取直接静默失败。你以为是bug,其实是系统直接无视了。解决办法简单粗暴:把模型放到纯英文路径下,比如 D:\AI\Models\Lora,别整那些花里胡哨的命名。
第二个坑,格式不对。现在市面上lora模型主要有safetensors和pt两种格式。老版本的WebUI可能只认pt,新版默认推荐safetensors。如果你用新工具去加载老格式的pt,或者反过来,有时候就会显示为空。更坑的是,有些站上的模型虽然后缀是.safetensors,但内部结构可能还是旧的LoRA格式,而不是通用的Diffusers格式。这时候你需要检查模型元数据。如果你发现lora模型为什么不显示在预览里,大概率是元数据缺失。去HuggingFace或者Civitai下载时,尽量选带“Diffusers”标签的,或者用专门的转换工具转一下格式。
第三个坑,版本兼容性。这点最容易被忽视。你用的SDXL训练的lora,非要往SD 1.5的模型里塞,肯定不显示。反之亦然。还有,有些lora是针对特定VAE或ControlNet优化的,如果环境没配齐,它也会“隐身”。我之前帮一个学员排查,折腾了两天,最后发现是他把SDXL的lora放进了SD1.5的文件夹,虽然文件名没冲突,但加载器根本识别不了。所以,分类管理很重要。别把所有模型都扔在一个文件夹里,按版本、按用途分好类。
还有一个隐蔽的坑,就是显存和并发。如果你同时加载了太多大模型,或者开了太多插件,显存爆了,lora加载就会失败,但界面不一定报错,只是不显示。这时候打开控制台看日志,通常会有OOM(Out of Memory)的警告。建议每次只加载一个lora,或者使用--medvae参数优化显存占用。
我见过太多人因为lora模型为什么不显示而怀疑人生,其实静下心来查日志、看路径、对版本,大部分问题都能迎刃而解。别盲目信网上那些“一键修复”的脚本,很多都是坑。自己动手查一遍,不仅能解决问题,还能让你对底层逻辑更有把握。
最后说句实在话,技术这东西,越急越乱。你越是盯着那个空白列表焦虑,越看不出问题所在。泡杯茶,打开控制台,一行一行看日志。你会发现,真相往往就藏在那些不起眼的报错信息里。希望这篇能帮你省下熬夜排查的时间,早点休息,毕竟头发比模型重要多了。