|文件|社區|貢獻|不和諧|
onediff是一個開箱即用的擴散模型加速庫,它提供:
我們正在招募!如果您有興趣在 SiliconFlow 從事 onediff 工作,我們在北京(清華大學附近)為實習生和工程師提供職缺。
如果您對開源軟體做出了重大貢獻並且對遠端工作感興趣,您可以透過[email protected]
與我們聯繫,電子郵件標題中包含onediff
。
onediff 是「一行程式碼加速擴散模型」的縮寫。
請注意,我們還沒有辦法在 2024 年 2 月 29 日使用 TensorRT 運行 SVD。
我們還維護一個儲存庫,用於對加速後的生成品質進行基準測試:odeval
注意:您可以為擴散器或變壓器選擇所需的最新版本。
python3 -m pip install "torch" "transformers==4.27.1" "diffusers[torch]==0.19.3"
在考慮 OneFlow 和 Nexfort 之間的選擇時,其中之一是可選的,並且只需要一個。
對於DiT結構模型或H100設備,建議使用Nexfort。
對於所有其他情況,建議使用 OneFlow。請注意,OneFlow 內的優化將來會逐漸過渡到 Nexfort。
安裝 Nexfort 是可選的。 Nexfort的詳細介紹在這裡。
python3 -m pip install -U torch==2.3.0 torchvision==0.18.0 torchaudio==2.3.0 torchao==0.1
python3 -m pip install -U nexfort
安裝 OneFlow 是可選的。
注意:我們經常為 onediff 更新 OneFlow,因此請透過以下連結安裝 OneFlow。
CUDA 11.8
對於北美/歐盟用戶
python3 -m pip install -U --pre oneflow -f https://github.com/siliconflow/oneflow_releases/releases/expanded_assets/community_cu118
對於中國用戶
python3 -m pip install -U --pre oneflow -f https://oneflow-pro.oss-cn-beijing.aliyuncs.com/branch/community/cu118
CUDA 12.1
對於北美/歐盟用戶
python3 -m pip install -U --pre oneflow -f https://github.com/siliconflow/oneflow_releases/releases/expanded_assets/community_cu121
對於中國用戶
python3 -m pip install -U --pre oneflow -f https://oneflow-pro.oss-cn-beijing.aliyuncs.com/branch/community/cu121
CUDA 12.2
對於北美/歐盟用戶
python3 -m pip install -U --pre oneflow -f https://github.com/siliconflow/oneflow_releases/releases/expanded_assets/community_cu122
對於中國用戶
python3 -m pip install -U --pre oneflow -f https://oneflow-pro.oss-cn-beijing.aliyuncs.com/branch/community/cu122
python3 -m pip install --pre onediff
git clone https://github.com/siliconflow/onediff.git
cd onediff && python3 -m pip install -e .
或安裝進行開發:
# install for dev
cd onediff && python3 -m pip install -e '.[dev]'
# code formatting and linting
pip3 install pre-commit
pre-commit install
pre-commit run --all-files
注意:如果您打算使用 ComfyUI/StableDiffusion-WebUI 的插件,我們強烈建議從來源安裝 OneDiff 而不是 PyPI。這是必要的,因為您需要手動將相關程式碼複製(或建立軟連結)到這些 UI/Lib 的擴充資料夾中。
功能性 | 細節 |
---|---|
編譯時間 | 約1分鐘(SDXL) |
部署方法 | 即插即用 |
動態影像尺寸支持 | 無開銷支持 |
型號支援 | SD1.5~2.1、SDXL、SDXL Turbo等 |
演算法支持 | SD標準工作流程、LoRA、ControlNet、SVD、InstantID、SDXL Lightning等 |
SD框架支援 | ComfyUI、擴散器、SD-webui |
保存和載入加速模型 | 是的 |
LoRA切換時間 | 數百毫秒 |
LoRA佔用率 | 幾十MB到幾百MB。 |
設備支援 | NVIDIA GPU 3090 RTX/4090 RTX/A100/A800/A10等(與Ascend的兼容性正在進行中) |
onediff 支持 SOTA 模型的加速。
AIGC類型 | 型號 | 高頻擴散器 | 舒適使用者介面 | SD 網路使用者介面 | |||
---|---|---|---|---|---|---|---|
社群 | 企業 | 社群 | 企業 | 社群 | 企業 | ||
影像 | 標準差1.5 | 穩定的 | 穩定的 | 穩定的 | 穩定的 | 穩定的 | 穩定的 |
標清2.1 | 穩定的 | 穩定的 | 穩定的 | 穩定的 | 穩定的 | 穩定的 | |
SDXL | 穩定的 | 穩定的 | 穩定的 | 穩定的 | 穩定的 | 穩定的 | |
洛拉 | 穩定的 | 穩定的 | 穩定的 | ||||
控制網 | 穩定的 | 穩定的 | |||||
SDXL渦輪增壓 | 穩定的 | 穩定的 | |||||
液晶模組 | 穩定的 | 穩定的 | |||||
SDXL 深度緩存 | 阿爾法 | 阿爾法 | 阿爾法 | 阿爾法 | |||
即時ID | 貝塔 | 貝塔 | |||||
影片 | SVD(穩定視訊擴散) | 穩定的 | 穩定的 | 穩定的 | 穩定的 | ||
SVD深度緩存 | 阿爾法 | 阿爾法 | 阿爾法 | 阿爾法 |
離線編譯並保存編譯結果,然後在線加載服務
如果想做分散式推理,可以使用onediff的編譯器在xDiT等分散式推理引擎中做單一設備加速
如果您的系統或業務需要企業級支持,您可以發送電子郵件至 [email protected],或透過網站與我們聯繫:https://siliconflow.cn/pricing
Onediff 企業解決方案 | |
---|---|
對擴散過程進行更極端的編譯器最佳化 | 通常另外 20%~30% 或更多的效能增益 |
端到端工作流程加速解決方案 | 有時效能提升 200%~300% |
端到端工作流程部署解決方案 | 線上模型 API 的工作流程 |
部署技術支援 | 高優先級支持 |
@misc { 2022onediff ,
author = { OneDiff Contributors } ,
title = { OneDiff: An out-of-the-box acceleration library for diffusion models } ,
year = { 2022 } ,
publisher = { GitHub } ,
journal = { GitHub repository } ,
howpublished = { url{https://github.com/siliconflow/onediff} }
}