stable diffusion for AMD

說明

這里是AMD卡的stable diffusion搭建方式,使用N卡的話搭建更簡單,可以省去很多步驟,但是N卡只配F**K U,所以我選擇A卡。
特別感謝這篇文章,我是基于這篇文章來搭的,最后成功運(yùn)行。

環(huán)境需求

  1. 顯存大于8G的A卡,理論上6G+的卡就行,但是我沒試過。顯卡越好煉丹越快。
  2. 安裝好了python和git。
  3. 注冊(cè)好了Hugging Face賬號(hào),用于下載模型。

安裝python環(huán)境

建議先切換到清華源,否則下載速度很慢。要求python 3.7+。

pip install diffusers
pip install transformers
pip install onnxruntime
pip install accelerate
pip install onnx
pip install scipy
pip install torch

使用虛擬環(huán)境的自便,我比較懶不折騰。
還需要去下載directml的運(yùn)行時(shí),地址在這里,找最新的ort_nightly_directml版本,然后下載python版本一致的版本就行。我是python3.10,下載ort_nightly_directml-1.14.0.dev20221205004-cp310-cp310-win_amd64.whl即可。
然后pip install ort_nightly_directml-1.14.0.dev20221205004-cp310-cp310-win_amd64.whl。

處理模型

由于模型默認(rèn)是cude的,所以A卡想用得進(jìn)行處理。處理程序是這個(gè):
https://raw.githubusercontent.com/huggingface/diffusers/main/scripts/convert_stable_diffusion_checkpoint_to_onnx.py
另存為本地,改名為conver_to_onnx.py,待用。
登錄https://huggingface.co/,在個(gè)人中心、設(shè)置頁面,找到Access Tokens頁面,添加一個(gè)Access Tokens。
執(zhí)行huggingface-cli.exe login,把生成的token輸入進(jìn)去,看到登錄成功就代表ok了。
執(zhí)行python.exe .\conver_to_onnx.py --model_path="CompVis/stable-diffusion-v1-4" --output_path="./stable_diffusion_onnx",模型就處理完成了。國內(nèi)網(wǎng)絡(luò)不穩(wěn)定,有時(shí)候會(huì)timeout,只能自己多試試了

開始煉丹

寫個(gè)執(zhí)行腳本:

from diffusers import OnnxStableDiffusionPipeline
from PIL import Image
prompt = "A beautiful girl, sketch"

def t2i():
    pipe = OnnxStableDiffusionPipeline.from_pretrained("./stable_diffusion_onnx", provider="DmlExecutionProvider",safety_checker=None)
    for x in range(3):
        result= pipe(prompt)
        image =result.images[0] 
        image.save("output%s.png"%x)
t2i()

修改里面的prompt,執(zhí)行,然后等就行了,速度還是挺快的。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容