欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 养生 > Stable diffusion 3.5本地运行环境配置记录

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

2025/2/4 23:18:34 来源:https://blog.csdn.net/cskywit/article/details/143476320  浏览:    关键词:Stable diffusion 3.5本地运行环境配置记录

1.环境配置

  • 创建虚环境

    conda create -n sd3.5 python=3.10
    
  • Pytorch(>2.0)

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

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

    pip install transformers==4.38.2 
    pip install tokenizers==0.15.2
    
  • 安装最新版本的diffuser

    pip install -U diffusers
    
  • 安装量化库节约VRAM GPUs

    pip install bitsandbytes
    
  • 安装sentencepiece

    pip install sentencepiece
    
  • 根据项目需要安装其他库

    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:

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

解决:

pip install protobuf==3.19.0

3.实测

  • 官网例子:
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")

image-20241104092549523

  • 自定义例子

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

    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.”

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())

image-20241104092905125

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com