Diffusers documentation
OpenVINO
OpenVINO
🤗 Optimum, çeşitli Intel işlemcilerde çıkarım (inference) yapmak için OpenVINO ile uyumlu Stable Diffusion hatları (pipelines) sağlar (desteklenen cihazların tam listesine bakın).
🤗 Optimum Intel'i, optimum-intel'in en son sürümü kullandığından emin olmak için --upgrade-strategy eager seçeneğiyle yüklemeniz gerekir:
pip install --upgrade-strategy eager optimum["openvino"]Bu kılavuz, Stable Diffusion ve Stable Diffusion XL (SDXL) hatlarını OpenVINO ile nasıl kullanacağınızı gösterecektir.
Stable Diffusion
Yükleme ve çıkarım çalıştırmak için OVStableDiffusionPipeline kullanın. Bir PyTorch modelini yükleyip OpenVINO biçimine anında dönüştürmek istiyorsanız export=True olarak ayarlayın:
from optimum.intel import OVStableDiffusionPipeline
model_id = "stable-diffusion-v1-5/stable-diffusion-v1-5"
pipeline = OVStableDiffusionPipeline.from_pretrained(model_id, export=True)
prompt = "sailing ship in storm by Rembrandt"
image = pipeline(prompt).images[0]
# Don't forget to save the exported model
pipeline.save_pretrained("openvino-sd-v1-5")Çıkarımı (inference) daha da hızlandırmak için modeli statik olarak yeniden şekillendirin. Çıktı yüksekliği veya genişliği gibi parametrelerde değişiklik yaparsanız, modelinizi tekrar statik olarak yeniden şekillendirmeniz gerekir.
# Define the shapes related to the inputs and desired outputs
batch_size, num_images, height, width = 1, 1, 512, 512
# Statically reshape the model
pipeline.reshape(batch_size, height, width, num_images)
# Compile the model before inference
pipeline.compile()
image = pipeline(
prompt,
height=height,
width=width,
num_images_per_prompt=num_images,
).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 OVStableDiffusionXLPipeline kullanın:
from optimum.intel import OVStableDiffusionXLPipeline
model_id = "stabilityai/stable-diffusion-xl-base-1.0"
pipeline = OVStableDiffusionXLPipeline.from_pretrained(model_id)
prompt = "sailing ship in storm by Rembrandt"
image = pipeline(prompt).images[0]Çıkarımı daha da hızlandırmak için, Stable Diffusion bölümünde gösterildiği gibi modeli statik olarak yeniden şekillendirin.
Daha fazla örneği 🤗 Optimum belgelerinde bulabilirsiniz ve OpenVINO'da SDXL çalıştırma, metinden görüntüye ve görüntüden görüntüye işlemler için desteklenmektedir.
Update on GitHub