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과 호환되는 Stable Diffusion 파이프라인을 제공합니다. ONNX Runtime 지원을 위해 다음 명령어로 🤗 Optimum을 설치해야 합니다:

pip install -q optimum["onnxruntime"]

이 가이드에서는 ONNX Runtime과 함께 Stable Diffusion 및 Stable Diffusion XL (SDXL) 파이프라인을 사용하는 방법을 보여줍니다.

Stable Diffusion

로드 및 추론 실행을 위해 ORTStableDiffusionPipeline을 사용합니다. PyTorch 모델을 로드하여 ONNX 형식으로 즉시 변환하려면 export=True를 설정하세요:

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")

batch로 여러 프롬프트를 생성하는 데 메모리가 과도하게 사용되는 것으로 보입니다. 해당 문제를 조사하는 동안, batch 처리 대신 반복(iteration)을 사용해야 할 수 있습니다.

ONNX 형식으로 파이프라인을 오프라인으로 내보내 나중에 추론에 사용하려면 optimum-cli export 명령을 사용합니다:

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

그런 다음 추론을 수행합니다(export=True를 다시 지정할 필요가 없습니다):

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]

🤗 Optimum 문서에서 더 많은 예시를 찾을 수 있으며, Stable Diffusion은 텍스트-이미지 생성, 이미지-이미지 변환, 인페인팅을 지원합니다.

Stable Diffusion XL

SDXL로 로드하고 추론을 실행하려면 ORTStableDiffusionXLPipeline을 사용하세요:

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 형식으로 파이프라인을 내보내서 나중에 추론에 사용하려면 optimum-cli export 명령을 사용하세요:

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

ONNX 형식의 SDXL은 텍스트-이미지 생성 및 이미지-이미지 변환을 지원합니다.

Update on GitHub