Diffusers documentation

ONNX Runtime

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v0.42.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

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.

Update on GitHub