an out-of-the-box acceleration library for diffusion models
Project description
OneDiff is an out-of-the-box acceleration library for diffusion models (especially for ComfyUI, HF diffusers, and Stable Diffusion web UI).
OneDiff is the abbreviation of "one line of code to accelerate diffusion models".
Need help or communicate
- Create an issue
- Chat in Discord:
- Email for business inquiry: contact@siliconflow.com
- OneDiff Development Roadmap
Easy to use
- Out-of-the-box acceleration for popular UIs/libs
- Acceleration for state-of-the-art Models
- Ready for production
- Support Multi-resolution input
- Compile and save the compiled result offline, then load it online for serving
State-of-the-art performance
OS and GPU support
- Linux
- If you want to use OneDiff on Windows, please use it under WSL.
- NVIDIA GPUs
OneDiff Online Playground
OneDiff Enterprise Edition
If you need Enterprise-level Support for your system or business, please send an email to contact@siliconflow.com and tell us about your user case, deployment scale, and requirements.
OneDiff Enterprise Edition can be subscripted for one month and one GPU and the cost is low: https://siliconflow.com/onediff.html
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 |
Install from source or Using in Docker
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 .
4. (Optional)Login huggingface-cli
python3 -m pip install huggingface_hub
~/.local/bin/huggingface-cli login
Docker
docker pull oneflowinc/onediff:20231106
Release
-
run examples to check it works
python3 examples/text_to_image.py python3 examples/text_to_image_dpmsolver.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
Built Distribution
Hashes for onediff-0.12.1.dev202401230352.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 640d932f78472c23c1be52ffff7c771958eb484273021ad6c2eef3aa657ea85d |
|
MD5 | 3315ffe2eca5a4de4eda0ab40e3c7825 |
|
BLAKE2b-256 | 971ad5a851c6a4a47befd8c1129eb2cbefa5c15c923fbe4bd301b3a4e609d6da |
Hashes for onediff-0.12.1.dev202401230352-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fb0fab372de98927d27d6e628c27394079c5452bc448d8b46d54ca5a75252983 |
|
MD5 | 8223e577048b413205cae20d8dbdb69f |
|
BLAKE2b-256 | 28d502555b0f6ba446642d97603280052075545b4b97bf4c3d0582cffaa912c5 |