Stable diffusion 3.5本地运行环境配置记录

1.环境配置

  • 创建虚环境

    bash 复制代码
    conda create -n sd3.5 python=3.10
  • Pytorch(>2.0)

    bash 复制代码
    conda install pytorch==2.2.2 torchvision==0.17.2 torchaudio==2.2.2 pytorch-cuda=12.1 -c pytorch -c nvidia
  • Jupyter能使用Anaconda虚环境

    bash 复制代码
    conda install ipykernel
    python -m ipykernel install --user --name sd3.5 --display-name "SD3.5"
  • 安装transformer和tokenizer

    bash 复制代码
    pip install transformers==4.38.2 
    pip install tokenizers==0.15.2
  • 安装最新版本的diffuser

    复制代码
    pip install -U diffusers
  • 安装量化库节约VRAM GPUs

    bash 复制代码
    pip install bitsandbytes
  • 安装sentencepiece

    bash 复制代码
    pip install sentencepiece
  • 根据项目需要安装其他库

    bash 复制代码
    pip install matplotlib
    pip install numpy==1.26.4    # 降级,否则有些时候会报错
    pip install accelerate
    pip install protobuf==3.19.0

    2.报错解决

如果报错:Exception: data did not match any variant of untagged enum PyPreTokenizerTypeWrapper at line 960 column 3

降级解决

复制代码
pip install transformers==4.38.2
pip install tokenizers==0.15.2

如果报错ValueError: Cannot instantiate this tokenizer from a slow version. If it's based on sentencepiece, make sure you have sentencepiece installed.

安装sentencepiece:

bash 复制代码
pip install sentencepiece

如果报错:ValueError: The current PyTorch version does not support the scaled_dot_product_attention function.

解决:安装高于Pytorch>2.0

如果报错:T5Converter requires the protobuf library but it was not found in your environment. Checkout the instructions on the

解决:

bash 复制代码
pip install protobuf==3.19.0

3.实测

  • 官网例子:
python 复制代码
local_path = "/home/aic/diffusion_models/stable-diffusion-3.5-large/"
pipe = StableDiffusion3Pipeline.from_pretrained(local_path, torch_dtype=torch.bfloat16)
pipe = pipe.to("cuda")

image = pipe(
    "A capybara holding a sign that reads Hello World",
    num_inference_steps=28,
    guidance_scale=3.5,
).images[0]
image.save("capybara.png")
  • 自定义例子

    "一名古代风格的中国女学生坐在现代的计算机教室里面学习编程"

    prompts:"An ancient-style Chinese female student sitting in a modern computer classroom learning programming, focused eyes, traditional Hanfu attire, modern technology, code editor, keyboard, mouse, fusion of digital age and traditional aesthetics, rich in detail, high-definition quality."

python 复制代码
prompts="An ancient-style Chinese female student sitting in a modern computer classroom learning programming, focused eyes, traditional Hanfu attire, modern technology, code editor, keyboard, mouse, fusion of digital age and traditional aesthetics, rich in detail, high-definition quality."
image = pipe(
    prompt=prompt,
    num_inference_steps=28,
    guidance_scale=4.5,
    max_sequence_length=512,
).images[0]

image.save("girls.png")
plt.imshow(plt.imread("girls.png"))
plt.axis('off')  # 不显示坐标轴
display(plt.gcf())
相关推荐
空白诗2 天前
CANN ops-nn 算子解读:Stable Diffusion 图像生成中的 Conv2D 卷积实现
深度学习·计算机视觉·stable diffusion
学易3 天前
第十五节.别人的工作流,如何使用和调试(上)?(2类必现报错/缺失节点/缺失模型/思路/实操/通用调试步骤)
人工智能·ai作画·stable diffusion·报错·comfyui·缺失节点
心疼你的一切3 天前
基于CANN仓库算力手把手实现Stable Diffusion图像生成(附完整代码+流程图)
数据仓库·深度学习·stable diffusion·aigc·流程图·cann
Niuguangshuo4 天前
DALL-E 3:如何通过重构“文本描述“革新图像生成
人工智能·深度学习·计算机视觉·stable diffusion·重构·transformer
Niuguangshuo4 天前
深入解析 Stable Diffusion XL(SDXL):改进潜在扩散模型,高分辨率合成突破
stable diffusion
Niuguangshuo4 天前
深入解析Stable Diffusion基石——潜在扩散模型(LDMs)
人工智能·计算机视觉·stable diffusion
迈火4 天前
SD - Latent - Interposer:解锁Stable Diffusion潜在空间的创意工具
人工智能·gpt·计算机视觉·stable diffusion·aigc·语音识别·midjourney
迈火12 天前
Facerestore CF (Code Former):ComfyUI人脸修复的卓越解决方案
人工智能·gpt·计算机视觉·stable diffusion·aigc·语音识别·midjourney
重启编程之路12 天前
Stable Diffusion 参数记录
stable diffusion
孤狼warrior16 天前
图像生成 Stable Diffusion模型架构介绍及使用代码 附数据集批量获取
人工智能·python·深度学习·stable diffusion·cnn·transformer·stablediffusion