Nobisuke
Dekisugi
RAG
Privacy policy
2024/08/10 00:19
こんにちは。AMDでもStable Diffusionを実行したい人がいるかもなので行なってみました。
CPUはRyzen9 5950X, GPUはRadeon 7900XTX (VRAM 24G)です。
VRAMの容量は十分なので、動作速度や使い勝手を見てみます。
Stable DiffusionのSDXLを利用しました。
PyTorchはROCmというAMDに対応したものをインストールする必要があります。
その後、通常通りpipでライブラリをインストールしました。
pip install diffusers invisible_watermark transformers accelerate safetensors
利用方法はNVIDIAとは変わりません。今回は通常のSDXLの状況で利用していますので、あまり特殊なライブラリもないため特に不具合は出ませんでした。
from diffusers import DiffusionPipeline
import torch
# GPUの指定
device = "cuda"
# シード固定
generator = torch.Generator(device).manual_seed(100)
# プロンプトの記述
prompt = "An astronaut riding a green horse"
# パイプラインを構築。fp16に設定。
pipe = DiffusionPipeline.from_pretrained("stabilityai/stable-diffusion-xl-base-1.0", torch_dtype=torch.float16, use_safetensors=True, variant="fp16")
pipe.to(device)
# 画像生成して取得
images = pipe(prompt=prompt, generator=generator).images[0]
images
特にCUDA版と変わりはありませんでした。
1024x1024の画像で、生成ステップは標準で50step。生成速度は16秒でした。
生成速度は少し遅いですが、十分に利用できました。
© 2024, blueqat Inc. All rights reserved