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 (especially for HF diffusers, ComfyUI, and Stable Diffusion web UI).

OneDiff is the abbreviation of "one line of code to accelerate diffusion models".

News

Community & Support

State-of-the-art performance

SDXL

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

SVD

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

Easy to use

Out-of-the-box acceleration for popular UIs/libs

Acceleration for state-of-the-art Models

Ready for production

OneDiff Online Playground

Online Playground

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
SD/SDXL series model Optimization Yes Yes
UNet/VAE/ControlNet Optimization Yes Yes
LoRA(and dynamic switching LoRA) Yes Yes
SDXL Turbo/LCM Yes Yes
Stable Video Diffusion Yes Yes
HF diffusers Yes Yes
ComfyUI Yes Yes
Stable Diffusion web UI Yes Yes
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 latest technology/feature Yes

OS and GPU support

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

OneDiff Installation

Install from source

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 --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 --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 --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.12.1.dev202403010135.tar.gz (73.8 kB view details)

Uploaded Source

Built Distribution

onediff-0.12.1.dev202403010135-py3-none-any.whl (83.2 kB view details)

Uploaded Python 3

File details

Details for the file onediff-0.12.1.dev202403010135.tar.gz.

File metadata

File hashes

Hashes for onediff-0.12.1.dev202403010135.tar.gz
Algorithm Hash digest
SHA256 869848f0fef5773e2bae7e93227544ee7f55b86f2f4cd47c7cfd95b39e1abd92
MD5 53a93d9ea81e4504f9ad2d963ee7ea77
BLAKE2b-256 8490ddfcdac48ccc7a02940118a8c6c46b313980966ff31248db9179055ded67

See more details on using hashes here.

File details

Details for the file onediff-0.12.1.dev202403010135-py3-none-any.whl.

File metadata

File hashes

Hashes for onediff-0.12.1.dev202403010135-py3-none-any.whl
Algorithm Hash digest
SHA256 7c2cc5e9175aa90aa5dcb8a6f7cb44b6a05f1ade2f4d65ab4b3e45aa885c6b08
MD5 2c755d6b74c75184b8f8a17847f479c1
BLAKE2b-256 c6395cad12de12a101a829b2a756871edd528497251c52918aeb3a6a73baac6d

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