Skip to main content

an out-of-the-box acceleration library for diffusion models

Project description


Docker image build Run examples

OneDiff is an out-of-the-box acceleration library for diffusion models, it provides:

OneDiff is the abbreviation of "one line of code to accelerate diffusion models". Here is the latested news:

The Full introduction of OneDiff:

More About OneDiff

State-of-the-art performance

SDXL E2E time

  • Model stabilityai/stable-diffusion-xl-base-1.0;
  • Image size 1024*1024, batch size 1, steps 30;
  • NVIDIA A100 80G SXM4;

SVD E2E time

  • Model stabilityai/stable-video-diffusion-img2vid-xt;
  • Image size 576*1024, batch size 1, steps 25, decoder chunk size 5;
  • NVIDIA A100 80G SXM4;

Acceleration for State-of-the-art models

OneDiff support the acceleratioin for SOTA models.

AIGC Type Models HF diffusers ComfyUI SD web UI
Community Enterprise Community Enterprise Community Enterprise
Image SD 1.5 stable stable stable stable beta beta
SD 2.1 stable stable stable stable beta beta
SDXL stable stable stable stable beta beta
LoRA stable stable beta
ControlNet stable stable
SDXL Turbo stable stable
LCM stable stable
SDXL DeepCache stable beta stable beta
InstantID stable stable
Video SVD(stable Video Diffusion) stable beta stable beta
SVD DeepCache stable beta stable beta

Note: Enterprise Edition contains all the functionality in Community Edition.

  • stable: release for public usage, and has long-term support;
  • beta: release for professional usage, and has long-term support;
  • alpha: early release for expert usage, and is under active development;

Acceleration for production environment

PyTorch Module compilation

Avoid compilation time for new input shape

Avoid compilation time for online serving

Compile and save the compiled result offline, then load it online for serving

OneDiff Enterprise Edition

If you need Enterprise-level Support for your system or business, you can

OneDiff Enterprise Edition can be subscripted for one month and one GPU and the cost is low.

  OneDiff Enterprise OneDiff Community
Multiple Resolutions Yes(No time cost for most of the cases) Yes(No time cost for most of the cases)
More Extreme and Dedicated optimization(usually another 20~100% performance gain) Yes
Technical Support for deployment High priority support Community
Get the experimental technology/feature Yes

Roadmap

OneDiff Development Roadmap

Community and Support

Installation

OS and GPU support

  • Linux
    • If you want to use OneDiff on Windows, please use it under WSL.
  • NVIDIA GPUs

OneDiff Installation

1. Install OneFlow

NOTE: We have updated OneFlow a lot for OneDiff, so please install OneFlow by the links below.

  • CUDA 11.8

    # For NA/EU users
    python3 -m pip install -U --pre oneflow -f https://github.com/siliconflow/oneflow_releases/releases/expanded_assets/community_cu118
    
    # For CN users
    python3 -m pip install -U --pre oneflow -f https://oneflow-pro.oss-cn-beijing.aliyuncs.com/branch/community/cu118
    
Click to get OneFlow packages for other CUDA versions.
  • CUDA 12.1

    # For NA/EU users
    python3 -m pip install -U --pre oneflow -f https://github.com/siliconflow/oneflow_releases/releases/expanded_assets/community_cu121
    
    # For CN users
    python3 -m pip install -U --pre oneflow -f https://oneflow-pro.oss-cn-beijing.aliyuncs.com/branch/community/cu121
    
  • CUDA 12.2

    # For NA/EU users
    python3 -m pip install -U --pre oneflow -f https://github.com/siliconflow/oneflow_releases/releases/expanded_assets/community_cu122
    
    # For CN users
    python3 -m pip install -U --pre oneflow -f https://oneflow-pro.oss-cn-beijing.aliyuncs.com/branch/community/cu122
    

2. Install torch and diffusers

python3 -m pip install "torch" "transformers==4.27.1" "diffusers[torch]==0.19.3"

3. Install OneDiff

  • From PyPI
python3 -m pip install --pre onediff
  • From source
git clone https://github.com/siliconflow/onediff.git
cd onediff && python3 -m pip install -e .

NOTE: If you intend to utilize plugins for ComfyUI/StableDiffusion-WebUI, we highly recommend installing OneDiff from the source rather than PyPI. This is necessary as you'll need to manually copy (or create a soft link) for the relevant code into the extension folder of these UIs/Libs.

4. (Optional)Login huggingface-cli

python3 -m pip install huggingface_hub
 ~/.local/bin/huggingface-cli login

Release

  • run examples to check it works

    cd onediff_diffusers_extensions
    python3 examples/text_to_image.py
    
  • bump version in these files:

    .github/workflows/pub.yml
    src/onediff/__init__.py
    
  • install build package

    python3 -m pip install build
    
  • build wheel

    rm -rf dist
    python3 -m build
    
  • upload to pypi

    twine upload dist/*
    

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

onediff-0.13.0.dev202403130125.tar.gz (69.0 kB view details)

Uploaded Source

Built Distribution

onediff-0.13.0.dev202403130125-py3-none-any.whl (77.8 kB view details)

Uploaded Python 3

File details

Details for the file onediff-0.13.0.dev202403130125.tar.gz.

File metadata

File hashes

Hashes for onediff-0.13.0.dev202403130125.tar.gz
Algorithm Hash digest
SHA256 b27db5b002679543b23a2627edcd1e135bc6e9ca52909910a4918d7bdaa02e1b
MD5 7101d5f6ff11371857fb25e528d8c284
BLAKE2b-256 f9624a609996733f9b7cfe7bf66c7fbadbae820adc5166f1542c79966df43569

See more details on using hashes here.

File details

Details for the file onediff-0.13.0.dev202403130125-py3-none-any.whl.

File metadata

File hashes

Hashes for onediff-0.13.0.dev202403130125-py3-none-any.whl
Algorithm Hash digest
SHA256 a495f774c627bba3f2da47f566a3bd8a553d7f83d09427de7a546c67029540a5
MD5 0c0add434922578e414c8c051d91c782
BLAKE2b-256 067c6f68f2524a7791833f9d97d48d180a9974488a101dba6ad4650550f65747

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page