Diffusers 文件
AWS Neuron
加入 Hugging Face 社群
並獲得增強的文件體驗
開始使用
AWS Neuron
Diffusers 功能在 AWS Inf2 例項上可用,這些例項由 Neuron 機器學習加速器提供支援。這些例項旨在提供更好的計算效能(更高的吞吐量、更低的延遲)和良好的成本效益,使其成為 AWS 使用者將擴散模型部署到生產環境的理想選擇。
Optimum Neuron 是 Hugging Face 庫和 AWS 加速器(包括 AWS Trainium 和 AWS Inferentia)之間的介面。它支援 Diffusers 中的許多功能,並提供類似的 API,因此如果您已經熟悉 Diffusers,則更容易學習。建立 AWS Inf2 例項後,請安裝 Optimum Neuron。
python -m pip install --upgrade-strategy eager optimum[neuronx]
我們為 Amazon SageMaker 提供了預構建的 Hugging Face Neuron 深度學習 AMI (DLAMI) 和 Optimum Neuron 容器。建議正確設定您的環境。
以下示例演示瞭如何在 inf2.8xlarge 例項上使用 Stable Diffusion XL 模型生成影像(模型編譯後,您可以切換到更便宜的 inf2.xlarge 例項)。要生成一些影像,請使用 NeuronStableDiffusionXLPipeline
類,它類似於 Diffusers 中的 StableDiffusionXLPipeline 類。
與 Diffusers 不同,您需要將流水線中的模型編譯為 Neuron 格式,即 .neuron
。執行以下命令將模型匯出為 .neuron
格式。
optimum-cli export neuron --model stabilityai/stable-diffusion-xl-base-1.0 \
--batch_size 1 \
--height 1024 `# height in pixels of generated image, eg. 768, 1024` \
--width 1024 `# width in pixels of generated image, eg. 768, 1024` \
--num_images_per_prompt 1 `# number of images to generate per prompt, defaults to 1` \
--auto_cast matmul `# cast only matrix multiplication operations` \
--auto_cast_type bf16 `# cast operations from FP32 to BF16` \
sd_neuron_xl/
現在使用預編譯的 SDXL 模型生成一些影像。
>>> from optimum.neuron import NeuronStableDiffusionXLPipeline
>>> stable_diffusion_xl = NeuronStableDiffusionXLPipeline.from_pretrained("sd_neuron_xl/")
>>> prompt = "a pig with wings flying in floating US dollar banknotes in the air, skyscrapers behind, warm color palette, muted colors, detailed, 8k"
>>> image = stable_diffusion_xl(prompt).images[0]

歡迎檢視 Optimum Neuron 文件中更多關於不同用例的指南和示例!
< > 在 GitHub 上更新