stable-diffusion-webui 加载模型文件

背景

stable-diffusion-webui 安装完毕后,默认的模型生成的效果图并不理想,可以根据具体需求加载指定的模型文件。国内 modelscope 下载速度较快,以该站为例进行介绍

操作步骤

  1. 找到指定的模型文件
    https://modelscope.cn/models 中查找文本生成图片标签的模型,根据自己喜好点进模型详情页,初次使用,我们可以挑选一些模型文件较小的文件用于测试
  2. 找到模型文件的下载地址
    找到模型文件列表中的.safetensors文件,例如:flux1-dev.safetensors,右键单击下载按钮,复制链接地址。
  3. 下载该模型文件
    进入服务器路径/stable-diffusion-webui-docker/data/models/Stable-diffusion下,wget https://modelscope.cn/models/black-forest-labs/FLUX.1-dev/resolve/master/flux1-dev.safetensors 即可
  4. 重启 stable-diffusion-webui
    在左上角的模型下拉列表框中选中切换即可

下载 Lora 模型

modelscope 上模型标签有 LoRA 的都是支持 Lora 的模型,进入模型详情页,通过上一节的方法找到 Lora 模型的下载链接,进入服务器路径/stable-diffusion-webui-docker/data/models/Lora下,wget 下载即可。webui页面上,单击 Lora 页签,单击刷新

使用时,单击模型即可

运行时报错

Expected all tensors to be on the same device, but found at least two devices

复制代码
auto-1  |       File "/stable-diffusion-webui/modules/sd_hijack.py", line 348, in forward
auto-1  |         inputs_embeds = self.wrapped(input_ids)
auto-1  |       File "/opt/conda/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1532, in _wrapped_call_impl
auto-1  |         return self._call_impl(*args, **kwargs)
auto-1  |       File "/opt/conda/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1541, in _call_impl
auto-1  |         return forward_call(*args, **kwargs)
auto-1  |       File "/opt/conda/lib/python3.10/site-packages/torch/nn/modules/sparse.py", line 163, in forward
auto-1  |         return F.embedding(
auto-1  |       File "/opt/conda/lib/python3.10/site-packages/torch/nn/functional.py", line 2264, in embedding
auto-1  |         return torch.embedding(weight, input, padding_idx, scale_grad_by_freq, sparse)
auto-1  |     RuntimeError: Expected all tensors to be on the same device, but found at least two devices, cpu and cuda:0! (when checking argument for argument index in method wrapper_CUDA__index_select)

参考 https://github.com/AUTOMATIC1111/stable-diffusion-webui/issues/16263 解决,我的解决方案是修改 /stable-diffusion-webui-docker/docker-compose.yml,指定 --device-id=0,如下:

复制代码
services:
  download:
    build: ./services/download/
    profiles: ["download"]
    volumes:
      - *v1

  auto: &automatic
    <<: *base_service
    profiles: ["auto"]
    build: ./services/AUTOMATIC1111
    image: sd-auto:78
    environment:
      - CLI_ARGS=--allow-code --medvram --xformers --enable-insecure-extension-access --api --device-id 0

safetensors_rust.SafetensorError: Error while deserializing header: MetadataIncompleteBuffer

复制代码
auto-1  |   warnings.warn(
auto-1  | creating model quickly: SafetensorError
auto-1  | Traceback (most recent call last):
auto-1  |   File "/opt/conda/lib/python3.10/threading.py", line 973, in _bootstrap
auto-1  |     self._bootstrap_inner()
auto-1  |   File "/opt/conda/lib/python3.10/threading.py", line 1016, in _bootstrap_inner
auto-1  |     self.run()
auto-1  |   File "/opt/conda/lib/python3.10/threading.py", line 953, in run
auto-1  |     self._target(*self._args, **self._kwargs)
auto-1  |   File "/stable-diffusion-webui/modules/initialize.py", line 149, in load_model
auto-1  |     shared.sd_model  # noqa: B018
auto-1  |   File "/stable-diffusion-webui/modules/shared_items.py", line 175, in sd_model
auto-1  |     return modules.sd_models.model_data.get_sd_model()
auto-1  |   File "/stable-diffusion-webui/modules/sd_models.py", line 620, in get_sd_model
auto-1  |     load_model()
auto-1  |   File "/stable-diffusion-webui/modules/sd_models.py", line 723, in load_model
auto-1  |     sd_model = instantiate_from_config(sd_config.model)
auto-1  |   File "/stable-diffusion-webui/repositories/stable-diffusion-stability-ai/ldm/util.py", line 89, in instantiate_from_config
auto-1  |     return get_obj_from_str(config["target"])(**config.get("params", dict()))
auto-1  |   File "/stable-diffusion-webui/repositories/stable-diffusion-stability-ai/ldm/models/diffusion/ddpm.py", line 563, in __init__
auto-1  |     self.instantiate_cond_stage(cond_stage_config)
auto-1  |   File "/stable-diffusion-webui/repositories/stable-diffusion-stability-ai/ldm/models/diffusion/ddpm.py", line 630, in instantiate_cond_stage
auto-1  |     model = instantiate_from_config(config)
auto-1  |   File "/stable-diffusion-webui/repositories/stable-diffusion-stability-ai/ldm/util.py", line 89, in instantiate_from_config
auto-1  |     return get_obj_from_str(config["target"])(**config.get("params", dict()))
auto-1  |   File "/stable-diffusion-webui/repositories/stable-diffusion-stability-ai/ldm/modules/encoders/modules.py", line 104, in __init__
auto-1  |     self.transformer = CLIPTextModel.from_pretrained(version)
auto-1  |   File "/opt/conda/lib/python3.10/site-packages/transformers/modeling_utils.py", line 2604, in from_pretrained
auto-1  |     state_dict = load_state_dict(resolved_archive_file)
auto-1  |   File "/opt/conda/lib/python3.10/site-packages/transformers/modeling_utils.py", line 450, in load_state_dict
auto-1  |     with safe_open(checkpoint_file, framework="pt") as f:
auto-1  | safetensors_rust.SafetensorError: Error while deserializing header: MetadataIncompleteBuffer

参考
https://github.com/AUTOMATIC1111/stable-diffusion-webui/issues/14267
https://github.com/AUTOMATIC1111/stable-diffusion-webui/issues/15568

大概有两种原因,要么是 safetensors 模型文件损坏,要么是文件 SHA 值校验不正确,有个暴力优化的办法是,直接删除 /stable-diffusion-webui-docker/data/.cache 隐藏目录,然后重启

相关推荐
二院大蛙13 小时前
Stable Diffusion 3.5 FP8在农业无人机航拍模拟图中的地形还原精度
stable diffusion· fp8· 农业无人机
或困13 小时前
Stable Diffusion 3.5 FP8镜像支持灰度检测与异常报警
stable diffusion·灰度发布·fp8量化
沉默的大羚羊13 小时前
Stable Diffusion 3.5 FP8模型可用于旅游宣传海报制作
stable diffusion·文生图·fp8
BOBO爱吃菠萝13 小时前
Stable Diffusion 3.5 FP8镜像自动化部署脚本发布
stable diffusion·量化·fp8
九章云极AladdinEdu13 小时前
项目分享|SD-Trainer:Stable Diffusion 训练集成工具
stable diffusion·端到端学习·高斯泼溅·3d场景分割·物体级代码本·2d到3d提升
qq_4204432713 小时前
AMD显卡在windows中通过WSL安装使用stable diffusion(WebUI和ComfyUI)
linux·windows·ubuntu·stable diffusion·wsl
网安入门学习13 小时前
2025年AIGC人才需求报告:从招聘数据看行业趋势与技能要求
人工智能·windows·ai作画·stable diffusion·aigc
ai_xiaogui14 小时前
Stable Diffusion Web UI 整合包一键安装教程:Windows/Mac零基础部署AI绘画工具
人工智能·ai作画·stable diffusion·一键整合包·ai生图神器·ai生图和动作迁移
人工智能AI技术1 天前
【SD教程】提示词
人工智能·stable diffusion·aigc·ai绘画
一点晖光2 天前
stable diffusion搭建指南
stable diffusion