sd turbo

Providerstabilityai
Categorytext-to-image
LicenseApache-2.0
Downloads2.9K
Stars2

Overview

SD Turbo is a distilled version of Stable Diffusion designed specifically for real-time image synthesis. Unlike standard diffusion models that require multiple sampling steps, SD Turbo utilizes Adversarial Diffusion Distillation (ADD) to generate high-quality images in just one to four steps. For developers, this means a drastic reduction in inference latency and compute costs, making it ideal for interactive applications, live prototyping, and edge deployment. It integrates seamlessly into existing Stable Diffusion pipelines, allowing you to swap the checkpoint for near-instantaneous text-to-image generation without needing a massive GPU cluster to maintain a responsive user experience.

Highlights

  • Real-time generation in one to four sampling steps
  • Significantly lower inference latency and compute overhead
  • Compatible with standard Stable Diffusion integration pipelines
  • Optimized for interactive apps and live prototyping
  • Open-source deployment under the Apache-2.0 license

Usage

Install
# Install Hugging Face transformers
pip install transformers torch
SDK Usage
# Load model with transformers
from transformers import AutoModel, AutoTokenizer

model = AutoModel.from_pretrained("stabilityai/sd-turbo")
tokenizer = AutoTokenizer.from_pretrained("stabilityai/sd-turbo")

Hugging Face Download

We recommend downloading the model via the Hugging Face CLI or Hub SDK.

Guidance:Before downloading, install huggingface_hub with:

Guidance
pip install -U huggingface_hub

CLI Download

Download the full repository

Download the full repository
huggingface-cli download stabilityai/sd-turbo

Download a single file to a local folder (e.g. config.json into ./dir)

Download a single file to a local folder (e.g. config.json into ./dir)
huggingface-cli download stabilityai/sd-turbo config.json --local-dir ./dir

See the official docs for more CLI options

SDK Download

SDK Download
# 模型下载
from huggingface_hub import snapshot_download
model_dir = snapshot_download('stabilityai/sd-turbo')

Git Download

Make sure git-lfs is installed first

Git Download
git lfs install
git clone https://huggingface.co/stabilityai/sd-turbo

To skip LFS large-file downloads, use:

Skip LFS
GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/stabilityai/sd-turbo

Model files are hosted on the Hugging Face Hub — download directly via HF CLI / SDK / Git, not through this site.

PyTorch / Transformers Usage

Install Transformers

Install Transformers
pip install -U transformers torch

Load the model and run inference

Load the model and run inference
from transformers import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained('stabilityai/sd-turbo')
tokenizer = AutoTokenizer.from_pretrained('stabilityai/sd-turbo')

Model Download

We recommend downloading the model via the ModelScope CLI or SDK.

Guidance:Before downloading, install ModelScope with:

Guidance
pip install modelscope

CLI Download

Download the full repository

Download the full repository
modelscope download --model stabilityai/sd-turbo

Download a single file to a local folder (e.g. README.md into ./dir)

Download a single file to a local folder (e.g. README.md into ./dir)
modelscope download --model stabilityai/sd-turbo README.md --local_dir ./dir

See the docs for more CLI options

SDK Download

SDK Download
# 模型下载
from modelscope import snapshot_download
model_dir = snapshot_download('stabilityai/sd-turbo')

Git Download

Make sure git-lfs is installed first

Git Download
git lfs install
git clone https://www.modelscope.cn/stabilityai/sd-turbo.git

To skip LFS large-file downloads, use:

Skip LFS
GIT_LFS_SKIP_SMUDGE=1 git clone https://www.modelscope.cn/stabilityai/sd-turbo.git

ModelScope 模型页直接下载模型文件;无需将模型文件放在本站服务器。

Notebook Quickstart

Install the ModelScope library

Install the ModelScope library
pip install "modelscope[audio,cv,nlp,multi-modal,science]" -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html

Load the model and run inference

Load the model and run inference
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks

p = pipeline('text-generation', 'stabilityai/sd-turbo')

Full Documentation

来源: HuggingFace

---
pipeline_tag: text-to-image
inference: false
---

SD-Turbo Model Card

<!-- Provide a quick summary of what the model is/does. -->
!row01
SD-Turbo is a fast generative text-to-image model that can synthesize photorealistic images from a text prompt in a single network evaluation.
We release SD-Turbo as a research artifact, and to study small, distilled text-to-image models. For increased quality and prompt understanding,
we recommend SDXL-Turbo.

Please note: For commercial use, please refer to https://stability.ai/license.

Model Details

Model Description

SD-Turbo is a distilled version of Stable Diffusion 2.1, trained for real-time synthesis. SD-Turbo is based on a novel training method called Adversarial Diffusion Distillation (ADD) (see the technical report), which allows sampling large-scale foundational image diffusion models in 1 to 4 steps at high image quality. This approach uses score distillation to leverage large-scale off-the-shelf image diffusion models as a teacher signal and combines this with an adversarial loss to ensure high image fidelity even in the low-step regime of one or two sampling steps.
  • Developed by: Stability AI
  • Funded by: Stability AI
  • Model type: Generative text-to-image model

Model Sources

For research purposes, we recommend our generative-models Github repository (https://github.com/Stability-AI/generative-models),
which implements the most popular diffusion frameworks (both training and inference).

  • Repository: https://github.com/Stability-AI/generative-models
  • Paper: https://stability.ai/research/adversarial-diffusion-distillation
  • Demo [for the bigger SDXL-Turbo]: http://clipdrop.co/stable-diffusion-turbo

Evaluation

!comparison1 !comparison2 The charts above evaluate user preference for SD-Turbo over other single- and multi-step models. SD-Turbo evaluated at a single step is preferred by human voters in terms of image quality and prompt following over LCM-Lora XL and LCM-Lora 1.5.

Note: For increased quality, we recommend the bigger version SDXL-Turbo.
For details on the user study, we refer to the research paper.

Uses

Direct Use

The model is intended for both non-commercial and commercial usage. Possible research areas and tasks include

  • Research on generative models.
  • Research on real-time applications of generative models.
  • Research on the impact of real-time generative models.
  • Safe deployment of models which have the potential to generate harmful content.
  • Probing and understanding the limitations and biases of generative models.
  • Generation of artworks and use in design and other artistic processes.
  • Applications in educational or creative tools.

For commercial use, please refer to https://stability.ai/membership.

Excluded uses are described below.

Diffusers

code
pip install diffusers transformers accelerate --upgrade
  • Text-to-image:

SD-Turbo does not make use of guidance_scale or negative_prompt, we disable it with guidance_scale=0.0.
Preferably, the model generates images of size 512x512 but higher image sizes work as well.
A single step is enough to generate high quality images.

py
from diffusers import AutoPipelineForText2Image
import torch

pipe = AutoPipelineForText2Image.from_pretrained("stabilityai/sd-turbo", torch_dtype=torch.float16, variant="fp16")
pipe.to("cuda")

prompt = "A cinematic shot of a baby racoon wearing an intricate italian priest robe."
image = pipe(prompt=prompt, num_inference_steps=1, guidance_scale=0.0).images[0]

  • Image-to-image:

When using SD-Turbo for image-to-image generation, make sure that num_inference_steps * strength is larger or equal
to 1. The image-to-image pipeline will run for int(num_inference_steps * strength) steps, *e.g.* 0.5 * 2.0 = 1 step in our example
below.

py
from diffusers import AutoPipelineForImage2Image
from diffusers.utils import load_image
import torch

pipe = AutoPipelineForImage2Image.from_pretrained("stabilityai/sd-turbo", torch_dtype=torch.float16, variant="fp16")
pipe.to("cuda")

init_image = load_image("https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/cat.png").resize((512, 512))
prompt = "cat wizard, gandalf, lord of the rings, detailed, fantasy, cute, adorable, Pixar, Disney, 8k"

image = pipe(prompt, image=init_image, num_inference_steps=2, strength=0.5, guidance_scale=0.0).images[0]

Out-of-Scope Use

The model was not trained to be factual or true representations of people or events,
and therefore using the model to generate such content is out-of-scope for the abilities of this model.
The model should not be used in any way that violates Stability AI's Acceptable Use Policy.

Limitations and Bias

Limitations

  • The quality and prompt alignment is lower than that of SDXL-Turbo.
  • The generated images are of a fixed resolution (512x512 pix), and the model does not achieve perfect photorealism.
  • The model cannot render legible text.
  • Faces and people in general may not be generated properly.
  • The autoencoding part of the model is lossy.

Recommendations

The model is intended for both non-commercial and commercial usage.

How to Get Started with the Model

Check out https://github.com/Stability-AI/generative-models

Join our Telegram