ac平台部署Stable Diffusion官方版本(无webui)
# ac 平台部署 Stable Diffusion 记录
# 官方版本(无 webui)
sd 官方仓库 https://github.com/Stability-AI/StableDiffusion
# 环境配置
进入 Eshell,加载 pytorch dtk23.04 环境
1 | module rm compiler/rocm/2.9 |
在登陆节点下载依赖
1 | pip install transformers==4.19.2 diffusers invisible-watermark |
下载官方仓库
1 | # 超算服务器无法正常访问github,该链接为官方仓库同步镜像 |
安装依赖
首先修改 requirements.txt,否则会由于找不到合适版本的包无限循环
1 | #gradio==3.11 |
然后执行安装
1 | cd StableDiffusion. |
不出意外的话会成功安装,失败的话可能是网络原因,多尝试几次即可
+++
# Xformers 加速注意力模块(可选)
(暂未实现)
+++
下载模型文件
1 | mkdir ckpt && cd ckpt |
包含的模型
1 | model: |
官方 ckpt 模型不包含 vit 和 clip 权重,正常情况下 pretrain 模型权重会自动从 huggingface 中进行缓存,但是超算计算节点是无法访问外部资源的,因此需要自己从 huggingface 下载,我选择的方式为在本地缓存之后上传。
在本机中 clone 仓库装完依赖,然后执行测试脚本,
1 | python scripts/txt2img.py --prompt "a professional photograph of an astronaut riding a horse" --ckpt ckpt/v2-1_512-ema-pruned.ckpt --config configs/stable-diffusion/v2-inference.yaml --H 256 --W 256 |
等待 huggingface 的模型缓存完毕,然后将本机 ~/.cache/huggingface/hub
的 models--laion--CLIP-ViT-H-14-laion2B-s32B-b79K
目录上传到超算的 ~/.cache/huggingface/hub
目录中去。
# 运行 sd
在用户目录新建一个作业脚本 sd.sh
1 |
|
执行该脚本
1 | sbatch sd.sh |
在 Stable Diffusion 目录下查看输出日志
输出的结果位于 Stable Diffusion/outpus/txt2img-samples
# 已知问题
・模型版本不能为 v 版,只能使用 base 版本的模型配置
・待补充
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 阿伟又在打电动!
评论