Allgemeine Einführung
CFG-Zero-star ist ein Open-Source-Projekt, das von Weichen Fan und dem S-Lab-Team der Technologischen Universität Nanyang entwickelt wurde. Es konzentriert sich auf die Verbesserung der Classifier Free Guidance (CFG)-Technik in Stream-Matching-Modellen, um die Qualität der Bild- und Videogenerierung durch Optimierung der Führungsstrategie und der Null-Initialisierungsmethode zu verbessern. Dieses Tool unterstützt Text-zu-Bild- und Text-zu-Video-Generierungsaufgaben und kann an Stable Diffusion 3, SD3.5, Wan-2.1 und andere Modelle angepasst werden. Der Code ist vollständig offen und basiert auf der Apache-2.0-Lizenz, so dass er sowohl für die akademische Forschung als auch für die kommerzielle Nutzung zur Verfügung steht. Das Projekt bietet Online-Demos und eine detaillierte Dokumentation für Entwickler, Forscher und KI-Enthusiasten.
Funktionsliste
- Verbesserung der CFG-Technik: Optimierung des klassifikatorfreien Bootstrappings zur Verbesserung der Qualität der generierten Inhalte und des Textabgleichs.
- Unterstützung der Bilderzeugung: Textbasierte Erzeugung von qualitativ hochwertigen Bildern, kompatibel mit Stable Diffusion 3 und SD3.5.
- Unterstützung der Videogenerierung: Generierung dynamischer Videos, Anpassung an Wan-2.1 und andere Videomodelle.
- Null-Initialisierungs-Optimierung: Nullsetzung der Vorhersage zu Beginn der Generierung zur Verbesserung der Stichprobenqualität des Stream-Matching-Modells.
- Offener Quellcode: Der vollständige Code wird zur Verfügung gestellt und kann von den Nutzern heruntergeladen, verändert und weitergegeben werden.
- Gradio Demo Interface: Eingebautes Online-Testing-Tool, keine komplexe Konfiguration erforderlich.
- Dynamische Parameteranpassung: Unterstützt die Anpassung der Leitintensität und der Anzahl der Ableitungsschritte an unterschiedliche Anforderungen.
- Integrierte Unterstützung von Drittanbietern: Unterstützung für ComfyUI-KJNodes und Wan2.1GP-Erweiterungen.
Hilfe verwenden
CFG-Zero-star ist ein Open-Source-Projekt auf GitHub, bei dem die Benutzer ihre eigene Umgebung konfigurieren und den Code ausführen müssen. Im Folgenden finden Sie eine detaillierte Installations- und Nutzungsanleitung, die Ihnen den schnellen Einstieg erleichtert.
Einbauverfahren
- Erstellen einer virtuellen Umgebung
- Installieren Sie Anaconda (falls nicht, laden Sie es von https://www.anaconda.com/ herunter).
- Führen Sie den folgenden Befehl im Terminal aus, um die Umgebung zu erstellen:
conda create -n CFG_Zero_Star python=3.10
- Aktivieren Sie die Umwelt:
conda activate CFG_Zero_Star
- Installation von PyTorch
- Installieren Sie PyTorch entsprechend der CUDA-Version Ihrer GPU. Die offizielle Empfehlung ist CUDA 12.4:
conda install pytorch==2.5.1 torchvision==0.20.1 torchaudio==2.5.1 pytorch-cuda=12.4 -c pytorch -c nvidia
- Prüfen Sie die Kompatibilität der CUDA Version, siehe https://docs.nvidia.com/deploy/cuda-compatibility/.
- Benutzer ohne GPU können die CPU-Version installieren:
conda install pytorch==2.5.1 torchvision==0.20.1 torchaudio==2.5.1 -c pytorch
- Installieren Sie PyTorch entsprechend der CUDA-Version Ihrer GPU. Die offizielle Empfehlung ist CUDA 12.4:
- Projektcode herunterladen
- Klonen Sie das Repository mit Git:
git clone https://github.com/WeichenFan/CFG-Zero-star.git
- Besuchen Sie den Katalog:
cd CFG-Zero-star
- Klonen Sie das Repository mit Git:
- Installation von Abhängigkeiten
- Führen Sie den Befehl aus, um die erforderlichen Bibliotheken zu installieren:
pip install -r requirements.txt
- Wenn ein Mangel besteht an
requirements.txt
installieren Sie die Kernabhängigkeiten manuell:pip install torch diffusers gradio numpy imageio
- Führen Sie den Befehl aus, um die erforderlichen Bibliotheken zu installieren:
- Vorbereiten der Modelldatei
- Laden Sie Stable Diffusion 3 oder SD3.5 Modellgewichte von https://huggingface.co/stabilityai/stable-diffusion-3-medium-diffusers herunter.
- Legen Sie die Modelldatei in das Projektverzeichnis, oder geben Sie den Pfad im Code an.
Bedienung der Hauptfunktionen
Die Kernfunktion von CFG-Zero-star ist die Erzeugung von Bildern und Videos. Hier sind die genauen Schritte.
Bilder generieren
- Konfigurationsparameter
- zeigen (eine Eintrittskarte)
demo.py
setzen Sie das Stichwort:prompt = "一片星空下的森林"
- Aktivieren Sie die CFG-Zero-Star-Optimierung:
use_cfg_zero_star = True
- zeigen (eine Eintrittskarte)
- Generation laufen lassen
- Geben Sie ihn in das Terminal ein:
python demo.py
- Das erzeugte Bild wird angezeigt oder unter dem angegebenen Pfad gespeichert.
- Geben Sie ihn in das Terminal ein:
- Anpassungsparameter
guidance_scale
Steuert die Intensität der Textsteuerung, Standardwert 4.0, einstellbar von 1-20.num_inference_steps
Reasoning steps, default 28, increase to improve quality.
Video generieren
- Modell auswählen
- existieren
demo.py
Eingestellt:model_name = "wan-t2v" prompt = "一条河流穿过山谷"
- existieren
- Generation laufen lassen
- Umsetzung:
python demo.py
- Video im MP4-Format gespeichert, Standardpfad
generated_videos/{seed}_CFG-Zero-Star.mp4
.
- Umsetzung:
- Anpassungsparameter
height
im Gesang antwortenwidth
Einstellung der Auflösung, Standard 480x832.num_frames
Frames, Standardwert 81.fps
Bildrate, Standardwert 16.
Demo mit Gradio
- Schnittstelle starten
- Laufen:
python demo.py
- Besuchen Sie http://127.0.0.1:7860 in Ihrem Webbrowser.
- Laufen:
- Verfahren
- Geben Sie das Aufforderungswort ein und wählen Sie das Modell (SD3, SD3.5 oder Wan-2.1).
- Zecke
Use CFG Zero Star
, passen Sie die Parameter an und senden Sie sie ab. - Das Ergebnis wird in der Schnittstelle angezeigt.
Integration von Drittanbieter-Tools
- ComfyUI-KJNodes
- Laden Sie https://github.com/kijai/ComfyUI-KJNodes herunter und folgen Sie den Anweisungen zur Installation.
- existieren ComfyUI Laden Sie den Knoten CFG-Zero-star in die
- Wan2.1GP
- Laden Sie https://github.com/deepbeepmeep/Wan2GP herunter und konfigurieren Sie es für die Verwendung.
caveat
- Generation ist rechenintensiv und es wird ein NVIDIA-Grafikprozessor mit mindestens 8 GB RAM empfohlen.
- Das Herunterladen des Modells ist für den ersten Durchlauf erforderlich, halten Sie Ihre Internetverbindung offen.
- Das Projekt unterliegt der Apache-2.0-Lizenz, die die Erstellung von pornografischen, gewalttätigen usw. Inhalten untersagt.
Mit diesen Schritten können Sie mit CFG-Zero-star hochwertige Bilder und Videos erzeugen. Seine Bedienung erfordert eine gewisse technische Basis, aber die Dokumentation und die Demo-Schnittstelle senken die Schwelle der Nutzung.
Anwendungsszenario
- akademische Forschung
Forscher können damit die Effektivität von Stream-Matching-Modellen testen und Verbesserungen bei CFG und Null-Initialisierung analysieren, die auf dem Gebiet des Computer-Vision anwendbar sind. - Erstellung von Inhalten
Schöpfer können den Text verwenden, um Bilder oder Videos zu erstellen, wie z. B. "fliegende Drachen", für Kunstdesign oder kurze Videoclips. - Modellentwicklung
Die Entwickler können mit diesem Tool ihre Generierungsmodelle und Debug-Parameter optimieren, um die Qualität der Generierung zu verbessern.
QA
- Welches Problem wird mit CFG-Zero-star gelöst?
Es optimiert die CFG-Technik im Stream-Matching-Modell und verbessert die Qualität und Textübereinstimmung der generierten Bilder und Videos. - Welche Modelle werden unterstützt?
Unterstützt werden Modelle wie Stable Diffusion 3, SD3.5 und Wan-2.1. - Was ist der Sinn der Null-Initialisierung?
Das Ausblenden von Vorhersagen in den frühen Stadien der Generierung hilft untertrainierten Modellen, die Qualität der Proben zu verbessern. - Woran erkenne ich, ob ein Modell untertrainiert ist?
Wenn der Effekt durch die Aktivierung der Null-Initialisierung deutlich verbessert wird, deutet dies darauf hin, dass das Modell möglicherweise nicht vollständig trainiert ist.