Allgemeine Einführung
FramePack ist ein Open-Source-Tool für die Videogenerierung, das sich darauf konzentriert, Videodiffusionstechniken praktischer zu machen. Es entkoppelt den Generierungsaufwand von der Länge des Videos, indem es die Eingabeframes durch ein einzigartiges neuronales Netzwerk zur Vorhersage des nächsten Frames auf eine feste Länge komprimiert. Das bedeutet, dass selbst bei der Generierung langer Videos der Bedarf an Grafikspeicher nicht signifikant ansteigt. framePack kann Tausende von Frames bei 30 Bildern pro Sekunde mit nur 6 GB Grafikspeicher generieren und ist damit für den durchschnittlichen Consumer-Grafikprozessor geeignet. Das von Lvmin Zhang entwickelte Projekt wurde auf der Grundlage des Hunyuan-Videomodells optimiert, das nur 1,3 Milliarden Modellparameter hat und Effizienz mit Leichtgewichtigkeit kombiniert. framePack FramePack bietet eine einfach zu bedienende Gradio-Schnittstelle, die die Bild-zu-Video-Erzeugung mit einer optimierten Geschwindigkeit von bis zu 1,5 Sekunden pro Frame unterstützt. Es eignet sich für Inhaltsersteller, Entwickler und allgemeine Benutzer, die an der Videogenerierung interessiert sind.
Funktionsliste
- Bild-zu-Video-Generierung: Generieren Sie Bewegungsvideos aus einem einzigen Bild mit Unterstützung für lange Videoerweiterungen.
- Optimierung für geringen Arbeitsspeicher: 60 Sekunden Video mit 30 Bildern pro Sekunde können mit nur 6 GB Arbeitsspeicher erstellt werden.
- Vorhersage des nächsten Bildes: Erzeugung einer von der Videolänge unabhängigen Arbeitslast durch Komprimierung des Kontexts.
- Gradio User Interface: Bietet intuitive Funktionen für das Hochladen von Bildern, die Eingabe von Prompts und die Vorschau der generierten Videos.
- Unterstützung mehrerer Aufmerksamkeitsmechanismen: PyTorch, xformers, flash-attn und sage-attention werden unterstützt.
- Plattformübergreifende Kompatibilität: Unterstützt Linux und Windows und ist kompatibel mit NVIDIA RTX 30XX/40XX/50XX GPUs.
- Optimierte Generierungsgeschwindigkeit: Optimiert mit Teacache für bis zu 1,5 Sekunden pro Bild.
- Unterstützung für Stapeltraining: unterstützt super großes Stapeltraining ähnlich wie bei der Bilddiffusion.
Hilfe verwenden
Einbauverfahren
Die Installation von FramePack ist eher technisch und eignet sich für Benutzer mit einiger Erfahrung in der Konfiguration von Python und GPU-Umgebungen. Im Folgenden finden Sie die detaillierten Installationsschritte für Windows- und Linux-Systeme sowie die offizielle GitHub-Seite und Webressourcen.
Anforderungen an die Umwelt
- BetriebssystemLinux oder Windows.
- GPUsNVIDIA RTX 30XX/40XX/50XX Serie mit fp16 und bf16 Unterstützung (GTX 10XX/20XX nicht getestet).
- SpeicherMindestens 6 GB (erzeugt 60 Sekunden Video mit 30 Bildern pro Sekunde).
- Python-VersionPython 3.10 wird empfohlen (Hinweis: Die Python-Versionen müssen genau aufeinander abgestimmt sein, da es sonst zu Bibliotheksinkompatibilitäten kommen kann).
- CUDAEs muss eine GPU-kompatible Version von CUDA (z.B. CUDA 12.6) installiert sein.
Installationsschritte
- FramePack Lagerhaus klonen
Öffnen Sie ein Terminal oder eine Eingabeaufforderung und führen Sie den folgenden Befehl aus, um das Projekt zu klonen:git clone https://github.com/lllyasviel/FramePack.git cd FramePack
- Erstellen einer virtuellen Umgebung
Um Abhängigkeitskonflikte zu vermeiden, empfiehlt es sich, eine virtuelle Python-Umgebung zu erstellen:python -m venv venv
Aktivieren Sie die virtuelle Umgebung:
- Fenster:
venv\Scripts\activate.bat
- Linux:
source venv/bin/activate
- Fenster:
- Installation von PyTorch und Abhängigkeiten
Installieren Sie PyTorch passend zur CUDA-Version (z. B. CUDA 12.6):pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu126
Installieren Sie die Projektabhängigkeiten:
pip install -r requirements.txt
- (Optional) Installation von Sage Attention oder Flash Attention
Um die Leistung zu verbessern, können Sie Sage Attention installieren (Sie müssen die richtige Wheel-Datei für Ihre CUDA- und Python-Version auswählen):pip install https://github.com/woct0rdho/SageAttention/releases/download/v2.1.1-windows/sageattention-2.1.1+cu126torch2.6.0-cp312-cp312-win_amd64.whl
Hinweis: Sage Attention kann die Qualität der Generierung geringfügig beeinträchtigen, was für Erstnutzer übersprungen werden kann.
- Starten der Gradio-Schnittstelle
Führen Sie nach Abschluss der Installation den folgenden Befehl aus, um die Schnittstelle zu starten:python demo_gradio.py
Nach dem Start zeigt das Terminal etwas an wie
http://127.0.0.1:7860/
Sie können auf die Gradio-Schnittstelle von FramePack zugreifen, indem Sie die URL in Ihrem Browser aufrufen.
Häufige Installationsprobleme
- Python-Version stimmt nicht übereinWenn die Installation der Abhängigkeiten fehlschlägt, überprüfen Sie, ob die Python-Version 3.10 ist.
python --version
Sehen Sie sich die aktuelle Version an. - AbhängigkeitskonfliktWenn
requirements.txt
Bibliotheksversion nicht kompatibel ist, können Sie dieav
undnumpy
undscipy
Versionsbezeichnung, installieren Sie die neueste Version erneut:pip install av numpy scipy
- unzureichender VideospeicherWenn der Videospeicher weniger als 6 GB beträgt, kann die Generierung fehlschlagen. Es wird empfohlen, eine GPU mit mehr Speicher zu verwenden oder die Videolänge zu verkürzen.
Verwendung
Die Hauptfunktion von FramePack besteht darin, ein Video aus einem einzigen Bild zu erzeugen und die Steuerung des Videoinhalts durch Cue-Words zu unterstützen. Nachfolgend finden Sie eine detaillierte Beschreibung der Funktionsweise.
1. den Zugang zur Gradio-Schnittstelle
aktivieren (einen Plan) demo_gradio.py
Danach zeigt der Browser die FramePack-Benutzeroberfläche an. Die Oberfläche ist in einen linken und einen rechten Bereich unterteilt:
- Links: Hochladen von Bildern und Eingabe von Schlagwörtern.
- Rechts: Zeigt das generierte Video und eine latente Vorschau an (latente Vorschau).
2. das Hochladen von Bildern
Klicken Sie auf den Bild-Upload-Bereich auf der linken Seite und wählen Sie ein lokales Bild aus (empfohlene Auflösung 544x704 oder eine ähnliche Größe). FramePack generiert auf der Grundlage dieses Bildes Videoinhalte.
3. die Eingabeaufforderungen
Geben Sie in das Textfeld "Stichwort" einen kurzen Satz ein, der die Handlung des Videos beschreibt. Empfehlenswert sind prägnante, handlungsorientierte Stichworte, z. B:
The girl dances gracefully, with clear movements, full of charm.
A robot jumps energetically, spinning in a futuristic city.
FramePack empfiehlt offiziell, den Action Cue über GPT im Format zu erzeugen:
Sie sind ein Assistent, der kurze, bewegungsorientierte Anweisungen für die Animation von Bildern schreibt. Wenn der Benutzer ein Bild sendet, antworten Sie mit einer einzigen, prägnanten Aufforderung, die die visuelle Bewegung beschreibt. die visuelle Bewegung beschreiben.
4. die Videoerstellung
Klicken Sie in der Benutzeroberfläche auf die Schaltfläche Generieren, und FramePack beginnt mit dem Prozess. Der Generierungsprozess erfolgt in Segmenten, wobei jedes Segment etwa 1 Sekunde Video generiert, das nach und nach zu einem vollständigen Video zusammengefügt wird. Der Fortschritt der Generierung wird durch einen Fortschrittsbalken und eine mögliche Vorschau angezeigt. Die erzeugte Datei wird im Ordner ./outputs/
Ordner.
5. zur Ansicht und Einstellung
Möglicherweise erhalten Sie zu Beginn der Generierung nur ein kurzes Video (z. B. 1 Sekunde). Das ist normal, und Sie müssen warten, bis weitere Clips generiert werden, um ein vollständiges Video zu erhalten. Wenn Sie mit dem Ergebnis nicht zufrieden sind, können Sie die Eingabeaufforderungen anpassen oder das Eingabebild für die Neugenerierung ändern.
Optimierung der Generierungsgeschwindigkeit
- . teacacheDurch die Aktivierung von Teacache in den Generierungseinstellungen wird die Geschwindigkeit von 2,5 auf 1,5 Sekunden/Bild erhöht.
- Schnellere Generation mit leistungsstarken GPUs: z.B. NVIDIA 4090.
- Sage-Attention deaktivieren: Wenn Sage-Attention installiert ist, kann es für den ersten Test deaktiviert werden, um die Qualität der Generierung sicherzustellen.
Featured Function Bedienung
Geringe Speichererzeugung
Die größte Stärke von FramePack ist der geringe Videospeicherbedarf. Durch die Komprimierung des Eingabekontexts werden nur 6 GB Videospeicher benötigt, um 60 Sekunden Video mit 30 Bildern pro Sekunde zu erzeugen. Es ist keine zusätzliche Konfiguration erforderlich und das System optimiert automatisch die Zuweisung des Grafikspeichers.
Vorhersage des nächsten Bildes
FramePack generiert Video Frame für Frame mithilfe eines neuronalen Netzwerks zur Vorhersage des nächsten Frames. Benutzer können potenzielle Vorschauen jedes generierten Segments in Echtzeit in der Gradio-Benutzeroberfläche anzeigen, um sicherzustellen, dass der Videoinhalt den Erwartungen entspricht.
Gradio-Schnittstelle
Die Gradio-Oberfläche ist einfach und intuitiv und unterstützt schnelle Uploads und Vorschauen. Die Benutzer können die --share
um die Schnittstelle zum öffentlichen Netz freizugeben, oder über den Parameter --port
im Gesang antworten --server
Parameter: Benutzerdefinierter Port und Serveradresse:
python demo_gradio.py --share --port 7861 --server 0.0.0.0
Anwendungsszenario
- Erstellung von Inhalten
FramePack eignet sich für Videoersteller, die kurze dynamische Videos erstellen möchten. Zum Beispiel für die Erstellung eines Tanzvideos aus einem Charakterbild für die Produktion von Inhalten für soziale Medien. Der geringe Videospeicherbedarf macht den Einstieg für den Durchschnittsnutzer leicht. - Spieleentwicklung
Entwickler können FramePack verwenden, um dynamische Szenenanimationen zu generieren, z. B. Charakterbewegungen oder Umgebungsänderungen, und so Zeit bei der manuellen Modellierung sparen. Leichtgewichtige Modelle unterstützen Echtzeit-Rendering-Möglichkeiten. - Bildung und Demonstration
Lehrer oder Ausbilder können aus Standbildern Lehrvideos erstellen, um dynamische Prozesse zu demonstrieren (z. B. Simulationen wissenschaftlicher Experimente). Die Gradio-Schnittstelle ist einfach zu bedienen und auch für technisch nicht versierte Benutzer geeignet. - Edge-Computing
Das 1,3-Milliarden-Parameter-Modell von FramePack eignet sich für den Einsatz in Endgeräten wie mobilen Geräten oder eingebetteten Systemen zur lokalisierten Videoerzeugung.
QA
- Welche GPUs unterstützt FramePack?
Unterstützt NVIDIA RTX 30XX, 40XX, 50XX GPUs mit mindestens 6 GB RAM. GTX 10XX/20XX nicht getestet, möglicherweise nicht kompatibel. - Wie lange dauert es, ein Video zu erstellen?
Beim NVIDIA 4090 sind es 2,5 Sekunden/Bild ohne Optimierung und 1,5 Sekunden/Bild mit aktiviertem Teacache. Es dauert etwa 3-4 Minuten, um 5 Sekunden Video zu erzeugen. - Wie kann die Qualität der Erzeugung verbessert werden?
Verwenden Sie qualitativ hochwertige Eingabebilder, schreiben Sie klare Handlungsanweisungen, deaktivieren Sie Sage-Attention und schalten Sie Teacache aus, um eine hohe Qualität zu erreichen. - Ist es möglich, extralange Videos zu erstellen?
Ja, FramePack unterstützt die Erstellung von Tausenden von Videobildern (z. B. 60 Sekunden bei 30 Bildern pro Sekunde). Die Anforderungen an den Videospeicher sind festgelegt und steigen nicht mit der Videolänge.