AI Personal Learning
und praktische Anleitung
CyberKnife-Zeichenspiegel

Open Sora: ein quelloffenes Videogenerierungstool zur Optimierung der Gesichtskonsistenz

Allgemeine Einführung

Open-Sora ist ein Open-Source-Projekt, das es jedem ermöglichen soll, auf effiziente Weise qualitativ hochwertige Videos zu erstellen. Es wurde vom hpcaitech-Team entwickelt, um Werkzeuge zur Erzeugung von Videos aus Text oder Bildern bereitzustellen, die mehrere Auflösungen und Laufzeiten unterstützen. Das Projekt ist vollständig quelloffen, so dass die Modellgewichte, der Code und der Trainingsprozess öffentlich zugänglich sind und die Community zur Mitarbeit ermutigt wird. Die neueste Version, Open-Sora 2.0, ist in Bezug auf die Leistung nahe an den Spitzenmodellen der Branche, kostet nur 200.000 Dollar für das Training und erzeugt schnelles und hochwertiges Video. Benutzer können den Code kostenlos herunterladen, ihn lokal ausführen oder ihn über die Gradio-Schnittstelle von Hugging Face ausprobieren. Open-Sora ist für Kreative, Entwickler und Forscher gedacht und fördert die Popularität und Innovation bei der Videoerstellung, während es gleichzeitig ein kommerzielles Produkt darstellt:Video Ozean .

Open Sora: Ein quelloffenes Videogenerierungswerkzeug zur Optimierung der Gesichtskonsistenz-1


 

Funktionsliste

  • Text-zu-Video-Generierung: Geben Sie eine Textbeschreibung ein, um ein Video zu generieren, das dem Inhalt entspricht.
  • Bild-zu-Video-Generierung: Generieren Sie dynamische Videos auf der Grundlage eines einzigen Bildes.
  • Videoverlängerung: Verlängert die Länge des Videos oder fügt Inhalte hinzu.
  • Unterstützung mehrerer Auflösungen: Unterstützt eine Videoausgabe von 144p bis 768p.
  • Flexible Dauer: Erstellen Sie Videos von 2 Sekunden bis 16 Sekunden.
  • Verschiedene Bildformate: unterstützt 16:9, 9:16, 1:1 und mehr.
  • Open-Source-Modelle und -Training: Bereitstellung von Modellgewichten und Trainingscode, Unterstützung der kundenspezifischen Entwicklung.
  • Effiziente Inferenz: Optimierte Algorithmen reduzieren die Hardwareanforderungen und generieren Videos auf einem einzigen Grafikprozessor.
  • Stichwortoptimierung: Unterstützung von GPT-4o, um die Stichworte zu verbessern und die Qualität der Generierung zu erhöhen.
  • Motion Scoring: Passen Sie die Videodynamik durch Motion Scoring an.

 

Hilfe verwenden

Einbauverfahren

Um Open-Sora zu verwenden, müssen Benutzer ihre Python-Umgebung konfigurieren und Abhängigkeiten installieren. Im Folgenden werden die einzelnen Schritte beschrieben:

  1. Erstellen einer virtuellen Umgebung
    Erstellen Sie eine virtuelle Umgebung mit Python 3.10, um Konflikte mit Abhängigkeiten zu vermeiden:

    conda create -n opensora python=3.10
    conda activate opensora
  1. Klonen der Codebasis
    Laden Sie das Open-Sora-Projekt von GitHub herunter:

    git clone https://github.com/hpcaitech/Open-Sora
    cd Open-Sora
    
  2. Installation von Abhängigkeiten
    Stellen Sie sicher, dass die PyTorch-Version höher als 2.4.0 ist, indem Sie den folgenden Befehl ausführen:

    pip install -v .
    

    Wenn ein Entwicklungsmodus erforderlich ist, verwenden Sie ihn:

    pip install -v -e .
    
  3. Installation von Beschleunigungsbibliotheken
    Open-Sora-Verwendung xformers im Gesang antworten flash-attn Leistung steigern. Wird entsprechend der CUDA Version installiert:

    pip install xformers==0.0.27.post2 --index-url https://download.pytorch.org/whl/cu121
    pip install flash-attn --no-build-isolation
    

    Für schnellere Schlussfolgerungen, manuell kompilierte flash-attention::

    git clone https://github.com/Dao-AILab/flash-attention
    cd flash-attention/hopper
    python setup.py install
    
  4. Download Modellgewichte
    Open-Sora 2.0 unterstützt die Erzeugung von Videos mit 256p und 768p, und die Modelle können von Hugging Face oder ModelScope heruntergeladen werden:

    pip install "huggingface_hub[cli]"
    huggingface-cli download hpcai-tech/Open-Sora-v2 --local-dir ./ckpts
    

    oder ModelScope verwenden:

    pip install modelscope
    modelscope download hpcai-tech/Open-Sora-v2 --local_dir ./ckpts
    
  5. Überprüfen der Installation
    Prüfen Sie, ob die Umgebung normal ist:

    python -c "import opensora; print(opensora.__version__)"
    

Verwendung

Open-Sora unterstützt Text-zu-Video, Bild-zu-Video und viele andere Funktionen mit einfacher Bedienung. Im Folgenden finden Sie eine detaillierte Anleitung:

Text-zu-Video-Generierung

Open-Sora optimiert den Bild-zu-Video-Prozess, unterstützt aber auch die direkte Text-zu-Video-Erzeugung. Zur Verbesserung der Qualität wird eine Text-zu-Bild-zu-Video-Pipeline empfohlen.

  1. Vorbereiten von Stichwörtern
    Bereiten Sie eine detaillierte Textbeschreibung vor, z. B. "Das Meer im Sturm, mit riesigen Wellen, die an die Felsen schlagen, und dunklen Wolken". Je spezifischer die Stichworte sind, desto besser sind die Ergebnisse.
  2. Führen Sie den Befehl generate aus
    Erzeugt ein 256x256 Video:

    torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/t2i2v_256px.py --save-dir samples --prompt "Stormy ocean with crashing waves"
    

    Erzeugt ein 768x768-Video (erfordert mehrere GPUs):

    torchrun --nproc_per_node 8 --standalone scripts/diffusion/inference.py configs/diffusion/inference/t2i2v_768px.py --save-dir samples --prompt "Stormy ocean with crashing waves"
    
  3. Anpassungsparameter
    • --aspect_ratioEinstellen des Seitenverhältnisses, z. B. 16:9 vielleicht 1:1.
    • --num_framesAnzahl der Bilder im Bereich 4k+1 (max. 129 Bilder) einstellen.
    • --offload TrueAktivieren Sie die Speicheroptimierung für Low-End-Geräte.
  4. Ergebnisse anzeigen
    Das erzeugte Video wird in der Datei samples Ordner im MP4-Format.

Bild-zu-Video-Generierung

  1. Vorbereiten von Referenzbildern
    Laden Sie ein Bild hoch und speichern Sie es als input.png.
  2. Führen Sie den Befehl generate aus
    Erzeugt ein 256p-Video:

    torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/256px.py --cond_type i2v_head --prompt "A serene forest with flowing river" --ref input.png
    

    Erzeugt ein 768p-Video:

    torchrun --nproc_per_node 8 --standalone scripts/diffusion/inference.py configs/diffusion/inference/768px.py --cond_type i2v_head --prompt "A serene forest with flowing river" --ref input.png
    
  3. Optimieren Sie dynamische Effekte
    ausnutzen --motion-score Passt den Grad der Bildschirmdynamik an. Der Standardwert ist 4. Beispiel:

    torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/256px.py --cond_type i2v_head --prompt "A running horse" --ref horse.png --motion-score 7
    

Stichwort Wortoptimierung

Open-Sora unterstützt die Verwendung von GPT-4o zur Optimierung von Stichwörtern und zur Verbesserung der Generierungsqualität:

  1. Legen Sie den OpenAI-API-Schlüssel fest:
    export OPENAI_API_KEY=sk-xxxx
    
  2. Führen Sie den Befehl optimise aus:
    torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/t2i2v_256px.py --save-dir samples --prompt "raining, sea" --refine-prompt True
    

Gradio Interface Betrieb

Open-Sora bietet eine interaktive Gradio-Schnittstelle:

  1. Startup-Schnittstelle:
    python scripts/demo.py --model-type v2-768px
    
  2. Zugriff über einen Browser http://localhost:7860.
  3. Geben Sie Stichworte ein oder laden Sie Bilder hoch, passen Sie Auflösung und Bildrate an und klicken Sie auf "Generieren", um das Video zu erstellen.
  4. Die Optimierungsaufforderung "Eingabeaufforderung verfeinern" kann aktiviert werden (erfordert OpenAI-API-Schlüssel).

Benutzerdefinierte Modellschulung

Benutzer können Modelle auf der Grundlage ihrer eigenen Datensätze trainieren:

  1. Bereiten Sie den Datensatz vor: eine CSV-Datei, die den Pfad und die Beschreibung des Videos enthält.
  2. Ändern Sie die Konfigurationsdatei:configs/opensora-v2/train/stage1.pylegen Sie den Datenpfad fest.
  3. Lauftraining:
    torchrun --nproc_per_node 8 scripts/train.py configs/opensora-v2/train/stage1.py --data-path your_data.csv
    

rechnerische Effizienz

Open-Sora optimiert die Inferenz-Effizienz, und die Testergebnisse lauten wie folgt (H100 GPU, 50 Schritte des Sampling):

  • 256x256: Einzelne GPU 60 Sekunden, 52,5 GB Speicher; 4 GPU 34 Sekunden, 44,3 GB Speicher.
  • 768x768: 8 GPUs 276 Sekunden, 44,3 GB Videospeicher.

caveat

  • Hardware-VoraussetzungEs wird ein NVIDIA H100 oder A100 mit mindestens 24 GB Videospeicher empfohlen. Niedrigere Auflösungen sind für Geräte der unteren Leistungsklasse verfügbar.
  • Qualität der StichwörterDetaillierte Beschreibungen können die Videoergebnisse erheblich verbessern.
  • LizenzenOpen-Sora verwendet die MIT-Lizenz, die die kommerzielle Nutzung unter bestimmten Bedingungen erlaubt.

 

Anwendungsszenario

  1. Erstellung kurzer Videos
    Blogger können Open-Sora nutzen, um Werbevideos zu erstellen, wie z. B. "Lichter der Stadt bei Nacht", die sie auf Social-Media-Plattformen teilen können.
  2. Pädagogische Animation
    Die Lehrkräfte können Animationen erstellen, z. B. "Planeten drehen sich um die Sonne", um den Unterricht attraktiver zu gestalten.
  3. Spiel-Szenen-Design
    Die Entwickler erstellen auf der Grundlage von Concept Maps dynamische Szenen für Spielhintergründe oder Übergänge.
  4. KI-Forschung
    Forscher können den Modellcode ändern, um neue Algorithmen oder Datensätze zu testen und so die Videogenerierungstechniken zu verbessern.

 

QA

  1. Was ist die Leistung von Open-Sora 2.0?
    In der VBench-Überprüfung werden Open-Sora 2.0 und OpenAI Sora Der Abstand verringert sich auf 0,691 TP3T, was nahe an der HunyuanVideo 11B und Step-Video 30B.
  2. Welche Auflösungen und Laufzeiten werden unterstützt?
    Unterstützt 144p bis 768p, Videodauer von 2 Sekunden bis 16 Sekunden und Seitenverhältnisse wie 16:9, 9:16 und mehr.
  3. Wie kann die Qualität der Erzeugung optimiert werden?
    Detaillierte Hinweise zur Anpassung verwenden motion-score(1-7), oder aktivieren Sie GPT-4o Optimize Prompt Words.
  4. Kann ich sie kostenlos nutzen?
    Open-Sora ist vollständig quelloffen, Modelle und Code sind unter der MIT-Lizenz frei verfügbar.
Darf nicht ohne Genehmigung vervielfältigt werden:Leiter des AI-Austauschkreises " Open Sora: ein quelloffenes Videogenerierungstool zur Optimierung der Gesichtskonsistenz
de_DEDeutsch