首页
/ Stable Diffusion WebUI DirectML 模型加载失败问题分析与解决

Stable Diffusion WebUI DirectML 模型加载失败问题分析与解决

2025-07-04 12:49:15作者:郜逊炳

问题现象

在使用 Stable Diffusion WebUI DirectML 项目时,部分用户遇到了模型无法加载的问题。主要症状表现为:

  1. 启动 WebUI 后无法显示任何模型
  2. 控制台报错显示 "No checkpoints found"
  3. 设置无法保存,所有设置项显示错误
  4. 刷新模型列表功能失效

错误分析

从错误日志中可以观察到几个关键信息:

  1. 系统在以下路径查找模型文件失败:

    • 项目根目录下的 model.ckpt 文件
    • models/Stable-diffusion 目录
  2. 核心错误信息为:

    FileNotFoundError: No checkpoints found. When searching for checkpoints, looked at:
    - file C:\stabledf\stable-diffusion-webui-directml\model.ckpt
    - directory C:\stabledf\stable-diffusion-webui-directml\models\Stable-diffusion
    
  3. 后续还出现了 AttributeError,表明在模型加载失败后,程序尝试访问不存在的模型属性

问题原因

经过分析,该问题主要由以下几个因素导致:

  1. 模型文件缺失:系统无法在指定路径找到任何 .ckpt 或 .safetensors 格式的模型文件

  2. 路径配置问题:部分情况下,模型搜索路径可能被错误配置

  3. 初始化顺序问题:在最新修复前,程序可能在模型下载完成前就尝试加载模型

解决方案

基本解决方法

  1. 确保模型文件存在

    • 将模型文件(.ckpt 或 .safetensors)放置在正确目录:
      • 项目根目录
      • 或 models/Stable-diffusion 子目录
  2. 使用最新版本

    • 更新到最新版本的 Stable Diffusion WebUI DirectML
    • 最新版本已修复了模型下载和初始化的顺序问题
  3. 重新初始化

    • 删除 venv 文件夹后重新初始化环境
    • 最新版本会在首次运行时自动下载 v1-5-pruned-emaonly.safetensors 模型

高级排查步骤

如果问题仍然存在,可以尝试:

  1. 检查目录权限,确保程序有权限访问模型目录

  2. 验证模型文件完整性,损坏的模型文件可能导致加载失败

  3. 检查环境变量,确保没有冲突的路径设置

技术背景

Stable Diffusion WebUI DirectML 是专为 AMD 显卡优化的 Stable Diffusion 实现版本。它使用 DirectML 作为计算后端,而不是传统的 CUDA。在模型加载机制上:

  1. 程序会按照预设路径搜索模型文件
  2. 如果找不到模型,会尝试从默认源下载
  3. 模型加载失败会导致后续所有依赖模型的功能无法工作

最佳实践建议

  1. 始终使用最新版本的项目代码

  2. 将模型文件统一存放在 models/Stable-diffusion 目录下

  3. 首次运行时耐心等待自动下载完成

  4. 定期清理不再使用的模型以节省空间

总结

模型加载失败问题在最新版本的 Stable Diffusion WebUI DirectML 中已得到修复。用户只需确保使用最新代码,并按照标准方式存放模型文件即可避免此类问题。对于 AMD 显卡用户,DirectML 版本提供了良好的性能支持,是运行 Stable Diffusion 的优秀选择。

登录后查看全文
热门项目推荐

项目优选

收起
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
164
256
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
122
175
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
828
493
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
181
260
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
325
1.07 K
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
389
367
IssueSolutionDemosIssueSolutionDemos
用于管理和运行HarmonyOS Issue解决方案Demo集锦。
ArkTS
13
12
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.05 K
0
note-gennote-gen
一款跨平台的 Markdown AI 笔记软件,致力于使用 AI 建立记录和写作的桥梁。
TSX
79
2
WxJavaWxJava
微信开发 Java SDK,支持微信支付、开放平台、公众号、视频号、企业微信、小程序等的后端开发,记得关注公众号及时接受版本更新信息,以及加入微信群进行深入讨论
Java
820
22