我想请问,我在魔搭网站训练的模型在魔搭网站能正常运行,为什么本地SD却检索不到这个模型

阿里云服务器

这是一个非常经典的问题。简单来说,魔搭(ModelScope)是一个“模型仓库/下载站”,而本地 SD(Stable Diffusion WebUI)是一个“运行环境”

你在魔搭上看到的“能运行”,是因为魔搭网站后台自带了运行环境和加载器;而你的本地 SD 并不会自动去魔搭网站上“搜索”或“同步”你刚训练的模型。它只能读取你本地硬盘特定文件夹里的文件。

要让本地 SD 识别到模型,你需要完成 “下载 -> 存放 -> 刷新” 这三个步骤。请按照以下流程排查:

1. 核心原因:文件不在本地文件夹

本地 SD 只会扫描它安装目录下的特定文件夹。如果你只是在魔搭网页上点了“训练”或“查看”,文件依然保存在阿里云的服务器上,没有下载到你的电脑里。

✅ 解决方案:下载并放入正确目录

第一步:下载模型文件

  1. 打开你的魔搭模型页面。

  2. 找到 “文件” 标签页。

  3. 你需要下载具体的模型权重文件。根据你训练的模型类型,文件名通常如下:

    • 大模型 (Checkpoint): 文件名通常是 xxxx.safetensorsxxxx.ckpt (文件大小通常在 2GB - 7GB)。

    • LoRA 模型: 文件名通常是 xxxx.safetensors (文件大小通常在 10MB - 300MB)。

    • ControlNet: 文件名包含 control_...safetensors

    • 注意:不要下载整个代码库,只需要下载那个最大的 .safetensors.ckpt 文件。

第二步:放入 SD 对应的文件夹

将下载好的文件,移动到本地 SD 安装目录下的对应文件夹中。放错文件夹是检索不到的最常见原因!

模型类型本地 SD 存放路径 (以 Automatic1111 为例)备注
大模型 (底模)stable-diffusion-webui/models/Stable-diffusion切换主模型时使用
LoRA 模型stable-diffusion-webui/models/Lora提示词用 <lora:文件名:1> 调用
VAEstable-diffusion-webui/models/VAE用于修复画面灰暗
ControlNetstable-diffusion-webui/extensions/sd-webui-controlnet/models如果没有 extensions 文件夹,可能在根目录 models/ControlNet
Embeddingstable-diffusion-webui/embeddings也叫 Textual Inversion

💡 重要提示:如果你使用的是 ComfyUI,路径会有所不同(通常在 ComfyUI/models/checkpointsComfyUI/models/loras)。

第三步:刷新列表

  1. 回到 SD 网页界面。

  2. 点击模型选择下拉框旁边的 🔄 (刷新按钮)

  3. 现在你应该能在列表中看到你的模型了。


2. 常见排查清单 (如果放了还是找不到)

如果你确认文件已经放进了文件夹,但还是看不到,请检查以下几点:

A. 文件格式不支持

  • 检查:SD 主要支持 .safetensors.ckpt 格式。

  • 问题:如果你下载的是一个 .zip 压缩包,或者是一堆代码文件 (py, json, txt),SD 是读不出来的。

  • 解决:确保你下载的是最终的权重文件。如果是 zip,请先解压,取出里面的 .safetensors 文件。

B. 文件名问题

  • 检查:文件名是否包含特殊字符、中文或过长的路径?

  • 解决:尝试将文件名改为纯英文(例如 my_model_v1.safetensors),有时候特殊字符会导致扫描失败。

C. 启动参数限制

  • 检查:你是否在启动脚本 (webui-user.bat.sh) 中添加了限制加载的参数?

  • 解决:检查是否有 --skip-load-model-at-start 或其他奇怪的参数,尝试去掉后重启 SD。

D. 显存/内存不足导致扫描跳过

  • 现象:极少数情况下,如果模型文件损坏或极大,SD 在预扫描时可能出错跳过。

  • 解决:查看 SD 启动时的黑色命令行窗口(控制台),看是否有红色的报错信息提示 "Error loading model..."。


3. 进阶技巧:如何快速从魔搭下载?

如果模型很大(比如 6GB),浏览器下载很慢或容易中断,建议使用 GitSDK 下载。

方法 A:使用 Git 克隆 (推荐)

在模型页面点击 “克隆” 或 “复制 Git 地址”,然后在本地终端运行:

# 进入你的 SD 模型目录
cd D:\stable-diffusion-webui\models\Stable-diffusion

# 克隆整个仓库 (包含所有版本和历史,文件会很大)
git clone https://www.modelscope.cn/<用户名>/<模型名>.git

# 或者只拉取大文件 (需要安装 git-lfs)
git lfs install
git clone https://www.modelscope.cn/<用户名>/<模型名>.git

注意:克隆后,文件会在一个子文件夹里,你可能需要把 .safetensors 文件剪切出来,放到当前目录下,SD 才能直接识别。

方法 B:使用 ModelScope SDK (最快)

如果你安装了 python 环境:

pip install modelscope

然后在 Python 中运行:

from modelscope import snapshot_download

# 下载到指定目录 (直接下载到 SD 的模型文件夹)
model_dir = snapshot_download('<模型ID>', cache_dir='D:/stable-diffusion-webui/models/Stable-diffusion')

总结

  1. 魔搭能跑 = 云端有环境。

  2. 本地不显示 = 文件没下载,或者放错了文件夹。

  3. 行动:下载 .safetensors 文件 -> 放入 models/Stable-diffusion (或 Lora) -> 点击刷新。

按照这个步骤操作,你的模型立刻就会出现在本地 SD 中!