Buckets:

mishig's picture
|
download
raw
3 kB

ONNX Runtime

🤗 Optimum, ONNX Runtime ile uyumlu bir Stable Diffusion hattı sağlar. ONNX Runtime desteği için 🤗 Optimum'u aşağıdaki komutla yüklemeniz gerekir:

pip install -q optimum["onnxruntime"]

Bu kılavuz, Stable Diffusion ve Stable Diffusion XL (SDXL) hatlarını ONNX Runtime ile nasıl kullanacağınızı gösterecektir.

Stable Diffusion

Yükleme ve çıkarım çalıştırmak için ORTStableDiffusionPipeline kullanın. Bir PyTorch modelini yükleyip onu anında ONNX biçimine dönüştürmek istiyorsanız export=True olarak ayarlayın:

from optimum.onnxruntime import ORTStableDiffusionPipeline

model_id = "stable-diffusion-v1-5/stable-diffusion-v1-5"
pipeline = ORTStableDiffusionPipeline.from_pretrained(model_id, export=True)
prompt = "sailing ship in storm by Leonardo da Vinci"
image = pipeline(prompt).images[0]
pipeline.save_pretrained("./onnx-stable-diffusion-v1-5")

Bir partide birden çok istek üretmek çok fazla bellek kullanıyor gibi görünüyor. Bu konuyu incelerken, partilemek yerine yineleme yapmanız gerekebilir.

ONNX biçiminde hattı çevrimdışı olarak dışa aktarmak ve daha sonra çıkarım için kullanmak için optimum-cli export komutunu kullanın:

optimum-cli export onnx --model stable-diffusion-v1-5/stable-diffusion-v1-5 sd_v15_onnx/

Sonra çıkarım yapmak için (tekrar export=True belirtmenize gerek yok):

from optimum.onnxruntime import ORTStableDiffusionPipeline

model_id = "sd_v15_onnx"
pipeline = ORTStableDiffusionPipeline.from_pretrained(model_id)
prompt = "sailing ship in storm by Leonardo da Vinci"
image = pipeline(prompt).images[0]

Daha fazla örneği 🤗 Optimum belgelerinde bulabilirsiniz ve Stable Diffusion, metinden görüntüye, görüntüden görüntüye ve inpainting işlemleri için desteklenmektedir.

Stable Diffusion XL

SDXL ile yüklemek ve çıkarım yapmak için ORTStableDiffusionXLPipeline kullanın:

from optimum.onnxruntime import ORTStableDiffusionXLPipeline

model_id = "stabilityai/stable-diffusion-xl-base-1.0"
pipeline = ORTStableDiffusionXLPipeline.from_pretrained(model_id)
prompt = "sailing ship in storm by Leonardo da Vinci"
image = pipeline(prompt).images[0]

ONNX biçiminde hattı dışa aktarmak ve daha sonra çıkarım için kullanmak için optimum-cli export komutunu kullanın:

optimum-cli export onnx --model stabilityai/stable-diffusion-xl-base-1.0 --task stable-diffusion-xl sd_xl_onnx/

ONNX biçimindeki SDXL, metinden görüntüye ve görüntüden görüntüye işlemler için desteklenmektedir.

Xet Storage Details

Size:
3 kB
·
Xet hash:
6867ff4586b822b6a6c69b65d8c15f15f6576e18b5ff0dac74d979925bd15858

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.