| Dokumentation | Gemeinschaft | Beitrag | Zwietracht |
onediff ist eine sofort einsatzbereite Beschleunigungsbibliothek für Diffusionsmodelle. Sie bietet:
Wir stellen ein! Wenn Sie daran interessiert sind, bei SiliconFlow an onediff zu arbeiten, haben wir offene Stellen für Praktikanten und Ingenieure in Peking (in der Nähe der Tsinghua-Universität).
Wenn Sie maßgeblich zur Open-Source-Software beigetragen haben und an Remote-Arbeit interessiert sind, können Sie uns unter [email protected]
kontaktieren und onediff
im E-Mail-Titel angeben.
onediff ist die Abkürzung für „ eine Codezeile zur Beschleunigung von Diffusionsmodellen “.
Beachten Sie, dass wir am 29. Februar 2024 keine Möglichkeit haben, SVD mit TensorRT auszuführen.
Wir unterhalten auch ein Repository zum Benchmarking der Qualität der Erzeugung nach der Beschleunigung: odeval
Hinweis: Sie können die neuesten Versionen für Diffusoren oder Transformatoren auswählen.
python3 -m pip install "torch" "transformers==4.27.1" "diffusers[torch]==0.19.3"
Bei der Wahl zwischen OneFlow und Nexfort ist beides optional und es wird nur eines benötigt.
Für DiT-Strukturmodelle oder H100-Geräte empfiehlt sich die Verwendung von Nexfort.
Für alle anderen Fälle empfiehlt sich die Verwendung von OneFlow. Beachten Sie, dass Optimierungen innerhalb von OneFlow in Zukunft schrittweise auf Nexfort übergehen werden.
Die Installation von Nexfort ist optional. Die ausführliche Einführung von Nexfort finden Sie hier.
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
Die Installation von OneFlow ist optional.
HINWEIS: Wir haben OneFlow regelmäßig für onediff aktualisiert. Installieren Sie OneFlow daher bitte über die folgenden Links.
CUDA 11.8
Für NA/EU-Benutzer
python3 -m pip install -U --pre oneflow -f https://github.com/siliconflow/oneflow_releases/releases/expanded_assets/community_cu118
Für CN-Benutzer
python3 -m pip install -U --pre oneflow -f https://oneflow-pro.oss-cn-beijing.aliyuncs.com/branch/community/cu118
CUDA 12.1
Für NA/EU-Benutzer
python3 -m pip install -U --pre oneflow -f https://github.com/siliconflow/oneflow_releases/releases/expanded_assets/community_cu121
Für CN-Benutzer
python3 -m pip install -U --pre oneflow -f https://oneflow-pro.oss-cn-beijing.aliyuncs.com/branch/community/cu121
CUDA 12.2
Für NA/EU-Benutzer
python3 -m pip install -U --pre oneflow -f https://github.com/siliconflow/oneflow_releases/releases/expanded_assets/community_cu122
Für CN-Benutzer
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 .
Oder für die Entwicklung installieren:
# 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
HINWEIS: Wenn Sie Plugins für ComfyUI/StableDiffusion-WebUI verwenden möchten, empfehlen wir dringend, OneDiff von der Quelle statt PyPI zu installieren. Dies ist erforderlich, da Sie den entsprechenden Code manuell in den Erweiterungsordner dieser Benutzeroberflächen/Bibliotheken kopieren (oder einen Softlink erstellen) müssen.
Funktionalität | Einzelheiten |
---|---|
Kompilierungszeit | Etwa 1 Minute (SDXL) |
Bereitstellungsmethoden | Plug-and-Play |
Unterstützung dynamischer Bildgrößen | Support ohne Overhead |
Modellunterstützung | SD1.5~2.1, SDXL, SDXL Turbo usw. |
Algorithmusunterstützung | SD-Standard-Workflow, LoRA, ControlNet, SVD, InstantID, SDXL Lightning usw. |
SD-Framework-Unterstützung | ComfyUI, Diffusoren, SD-Webui |
Beschleunigte Modelle speichern und laden | Ja |
Zeitpunkt des LoRA-Wechsels | Hunderte Millisekunden |
LoRA-Belegung | Dutzende MB bis Hunderte MB. |
Geräteunterstützung | NVIDIA GPU 3090 RTX/4090 RTX/A100/A800/A10 usw. (Kompatibilität mit Ascend in Bearbeitung) |
onediff unterstützt die Beschleunigung für SOTA-Modelle.
AIGC-Typ | Modelle | HF-Diffusoren | ComfyUI | SD-Web-Benutzeroberfläche | |||
---|---|---|---|---|---|---|---|
Gemeinschaft | Unternehmen | Gemeinschaft | Unternehmen | Gemeinschaft | Unternehmen | ||
Bild | SD 1.5 | stabil | stabil | stabil | stabil | stabil | stabil |
SD 2.1 | stabil | stabil | stabil | stabil | stabil | stabil | |
SDXL | stabil | stabil | stabil | stabil | stabil | stabil | |
LoRA | stabil | stabil | stabil | ||||
ControlNet | stabil | stabil | |||||
SDXL Turbo | stabil | stabil | |||||
LCM | stabil | stabil | |||||
SDXL DeepCache | Alpha | Alpha | Alpha | Alpha | |||
InstantID | Beta | Beta | |||||
Video | SVD (stabile Videodiffusion) | stabil | stabil | stabil | stabil | ||
SVD DeepCache | Alpha | Alpha | Alpha | Alpha |
Kompilieren und speichern Sie das kompilierte Ergebnis offline und laden Sie es dann online zur Bereitstellung
Wenn Sie verteilte Inferenz durchführen möchten, können Sie den Compiler von onediff verwenden, um eine Einzelgerätebeschleunigung in einer verteilten Inferenz-Engine wie xDiT durchzuführen
Wenn Sie Support auf Unternehmensebene für Ihr System oder Unternehmen benötigen, können Sie uns eine E-Mail an [email protected] senden oder uns über die Website kontaktieren: https://siliconflow.cn/pricing
Onediff-Unternehmenslösung | |
---|---|
Extremere Compiler-Optimierung für den Diffusionsprozess | Normalerweise weitere 20–30 % oder mehr Leistungssteigerung |
End-to-End-Lösungen zur Beschleunigung des Arbeitsablaufs | Manchmal 200–300 % Leistungssteigerung |
End-to-End-Workflow-Bereitstellungslösungen | Workflow zur Online-Modell-API |
Technischer Support für die Bereitstellung | Support mit hoher Priorität |
@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} }
}