Code2Video ist ein bahnbrechendes Framework zur Videogenerierung aus dem NUS Show Lab, dessen Kernphilosophie die "codezentrierte" Generierung von qualitativ hochwertigen Lehrvideos ist. Im Gegensatz zu herkömmlichen KI-Videomodellen, die direkt Pixel erzeugen (z. B. Sora), "zeichnet" Code2Video das Video nicht direkt, sondern "rendert" es durch das Schreiben von ausführbarem Python-Code (basierend auf der Manim-Engine). Dieser Ansatz löst das Problem traditioneller Videoerstellungsmodelle. Dieser Ansatz behebt die Unzulänglichkeiten herkömmlicher Videogenerierungsmodelle in Bezug auf logische Strenge, geometrische Genauigkeit und Textklarheit und eignet sich besonders für die Erstellung von MINT-Lehrvideos für Mathematik, Physik, Informatik und andere Bereiche, die eine präzise Darstellung erfordern. Das Framework besteht aus drei kollaborativen KI-Intelligenzen: einem Planner für die Gestaltung der Storyboards, einem Coder für das Schreiben und Debuggen des Codes und einem Critic für die visuelle Überprüfung und Optimierung. Durch diese Zusammenarbeit ist Code2Video in der Lage, einfache textliche Wissensbrocken in professionelle Lehrvideos zu verwandeln, die mit manuellen Produktionen wie dem 3Blue1Brown-Stil vergleichbar sind.
Funktionsliste
- Intelligente Planung mit geteiltem Bildschirm (Planner Agent)Automatisches Umwandeln von eingegebenen Wissenspunkten oder kurzen Texten in detaillierte Videoskripte und visuelle Storyboards, die den Verlauf des Videos planen.
- Automatisierte Code-Erzeugung (Coder Agent)Umwandlung von Skripten in natürlicher Sprache in ausführbaren Python-Code (Manim), der komplexe mathematische Formeln, Geometrie und Animationslogik unterstützt.
- Selbstheilung und FehlerbehebungIntegrierter Fehlererkennungsmechanismus: Wenn der generierte Code einen Fehler meldet, kann das System automatisch das Fehlerprotokoll analysieren und den Code korrigieren, um sicherzustellen, dass der Code erfolgreich ausgeführt werden kann.
- Überprüfung der visuellen Qualität (Critic Agent)Das Visual Language Model (VLM) wird als "ästhetischer Leitfaden" verwendet, um das Layout, die Überlappung und die Klarheit der erzeugten Bilder zu überprüfen und Änderungen vorzuschlagen, die an den Encoder zurückgegeben werden.
- Hochpräzises Vektor-RenderingBasierend auf der Manim-Engine wird das resultierende Video in unendlicher Auflösung und Klarheit gerendert, ohne Unschärfe oder Artefakte in Formeln und Text.
- Unterstützung für Multi-Model-APIUnterstützung des Zugriffs auf Claude, Gemini, GPT-4 und andere gängige große Sprachmodelle als Back-End-Logiktreiber.
Hilfe verwenden
Code2Video ist ein Open-Source-Befehlszeilentool, das eine lokal konfigurierte Python-Umgebung erfordert. Hier finden Sie eine detaillierte Installations- und Nutzungsanleitung, mit der Sie Ihr erstes Lehrvideo von Grund auf erstellen können.
1. ökologische Vorbereitung und Installation
Stellen Sie zunächst sicher, dass Sie Anaconda oder Miniconda und Git auf Ihrem Computer installiert haben.
Schritt 1: Klonen des Projektcodes
Öffnen Sie Terminal oder eine Eingabeaufforderung und führen Sie den folgenden Befehl aus, um das Projekt herunterzuladen:
git clone https://github.com/showlab/Code2Video.git
cd Code2Video
Schritt 2: Erstellen einer virtuellen Umgebung
Um Abhängigkeitskonflikte zu vermeiden, erstellen Sie eine separate Python-Umgebung (Python 3.9+ empfohlen):
conda create -n code2video python=3.9 -y
conda activate code2video
Schritt 3: Installieren Sie die Systemabhängigkeiten (z. B. Linux)
Die Manim-Engine erfordert einige Bibliotheken auf Systemebene (z. B. ffmpeg, cairo).
sudo apt-get update
sudo apt-get install libcairo2-dev libpango1.0-dev ffmpeg
Hinweis: Windows-Benutzer finden in der offiziellen Manim-Dokumentation Hinweise zur Installation von ffmpeg und latex.
Schritt 4: Python-Abhängigkeiten installieren
Das Projekt hat kürzlich die Abhängigkeiten optimiert und die Installationsgeschwindigkeit deutlich verbessert:
pip install -r requirements.txt
2. den API-Schlüssel konfigurieren
Code2Video stützt sich auf das Large Language Model, um Code zu generieren. Sie müssen den API-Schlüssel für das LLM konfigurieren.
Suchen Sie die Konfigurationsdatei im Stammverzeichnis des Projekts (normalerweise im Verzeichnis config oder über Umgebungsvariableneinstellungen). Es wird empfohlen, die Umgebungsvariablen direkt im Terminal zu exportieren:
# 以使用 Claude 为例
export ANTHROPIC_API_KEY="sk-ant-..."
# 或者使用 OpenAI
export OPENAI_API_KEY="sk-..."
Tipp: Stellen Sie sicher, dass Ihr Konto über genügend Token Betrag.
3. die Videoerstellung (Kerngeschäft)
Code2Video bietet ein praktisches Startscript run_agent_single.sh um Videos von einzelnen Wissenspunkten zu erstellen.
Grundlegendes Befehlsformat:
bash run_agent_single.sh [模型API] [输出文件夹前缀] "[知识点描述]"
Beispiel für einen Betrieb:
Nehmen wir an, Sie möchten ein Video über den Satz des Pythagoras mit Hilfe des Claude-3.5-Sonnet-Modells wie folgt erstellen:
- Startskript bearbeiten (optional)::
Sie können den Befehl entweder direkt ausführen oder die Dateirun_agent_single.shZeigen Sie die Standardparameter an. - Führen Sie den Befehl generate aus::
bash run_agent_single.sh claude-3-5-sonnet test_output "The Pythagorean theorem explains the relationship between the three sides of a right-angled triangle"
Parameter Erläuterung:
claude-3-5-sonnetSpezifizieren Sie das zu verwendende Inferenzmodell und empfehlen Sie ein Modell mit starken Programmierfähigkeiten.test_outputDie erzeugten Video- und Zwischendateien werden in der Dateiexperiments/test_outputKatalog."..."Dies ist die wichtigste Eingabe, eine klare Beschreibung in einem Satz des Punktes, den Sie vermitteln wollen.
4. die Ergebnisse zu betrachten
Während das Programm läuft, zeigt das Terminal ein Protokoll der Zusammenarbeit zwischen den drei Intelligenzen an:
- Planer Gibt eine gut durchdachte Beschreibung der Nebenhandlung aus.
- Coder Es zeigt den generierten Python-Code an und versucht es automatisch erneut, wenn ein Fehler gemeldet wird.
- Kritiker Es wird eine Bewertung des aktuellen Bildschirms abgegeben.
Nachdem der Lauf abgeschlossen ist, gehen Sie zu experiments/test_output werden Sie sehen:
.mp4Datei: Endgültig gerendertes HD-Video..pyDatei: Generierter Manim-Quellcode (Sie können diesen Code zur Feinabstimmung des Videos manuell ändern).log.txtEin vollständiges Protokoll des Erzeugungsprozesses.
5. fortgeschrittene Techniken
- Benutzerdefiniertes MaterialWenn das Video ein bestimmtes Symbol erfordert, können Sie die SVG-Datei in den Ordner
assetsOrdner und im Stichwort erwähnt. - EinstellungslängeIn der Eingabeaufforderung können Sie angeben, dass Sie ein Video von ca. 30 Sekunden Länge erstellen möchten, und Planner passt die Anzahl der Takes entsprechend an.
Anwendungsszenario
- Mathematik und Physik unterrichten
Die Lehrkraft gibt ein: "Erklären Sie das Grundprinzip der Fourier-Transformation", und das System generiert automatisch ein Demonstrationsvideo mit einer dynamischen, überlagerten Wellenform-Animation, die die abstrakten Konzepte visuell veranschaulicht. - Visualisierung von Algorithmen
Informatikstudenten geben "Demonstration des binären Nachschlagealgorithmus" ein, um eine Animation zu erstellen, die den Prozess des Verschiebens und Nachschlagens eines Array-Indexes für die Verwendung in technischen Blogs oder Hausaufgabenpräsentationen zeigt. - Automatisierte Online-Kursproduktion
Bildungseinrichtungen können ihre Lehrbuchkataloge im Stapelverfahren in das System eingeben, um schnell eine Reihe von kurzen Videos zur Erklärung grundlegender Konzepte zu erstellen und eine Bibliothek mit standardisierten Lektionen aufzubauen. - Präsentation einer Forschungsarbeit
Forscher können Kernformeln oder Modelllogik aus Papieren eingeben, um hochpräzise schematische Animationen zur Verwendung in akademischen Konferenzpräsentationen oder Videoabstracts zu erstellen.
QA
- Was ist der Unterschied zwischen Code2Video und Sora/Runway?
Code2Video erzeugt nicht direkt Pixel, sondern "Code". Das bedeutet, dass es Videos mit absolut korrekter Logik (weil es auf mathematischen Formeln basiert) und unendlich klarem Text und Zeilen erzeugt, was es perfekt für die Bildung und die Popularisierung der Wissenschaft macht. Sora und andere Modelle eignen sich für die Erstellung realistischer oder künstlerisch-kreativer Videos, sind aber in Bezug auf textliche und logische Genauigkeit schwach. - Kann ich das Programm auch benutzen, wenn ich keine Ahnung vom Programmieren habe?
Kann. Alles, was Sie tun müssen, ist, eine Textbeschreibung (Stichwort) einzugeben, und das System wird den Code automatisch vervollständigen. Wenn Sie jedoch ein wenig Python/Manim beherrschen, können Sie den generierten Code direkt ändern und erhalten so ein höheres Maß an Kontrolle. - Was ist, wenn das erzeugte Video sehr kurz ist?
Die aktuelle Version erzeugt kurze Videos (in der Regel 10-60 Sekunden) zu einem einzigen Thema. Wenn Sie ein langes Video benötigen, empfiehlt es sich, das große Thema in mehrere kleine Wissenspunkte aufzuteilen und diese separat zu erstellen, um sie anschließend in der Bearbeitungssoftware zusammenzuführen. - Fehlt ffmpeg beim Installieren?
Manim verlässt sich beim Video-Compositing stark auf ffmpeg. Stellen Sie sicher, dass Sieffmpeg -versionWindows-Benutzer müssen ffmpeg manuell herunterladen und sein bin-Verzeichnis zur Systemumgebungsvariablen Path hinzufügen. - Unterstützt es chinesische Eingaben?
Unterstützung. Obwohl der zugrunde liegende Code auf Englisch ist, können Sie die Wissenspunkte auf Chinesisch beschreiben. Um eine bessere Wirkung zu erzielen, empfiehlt es sich, in der Aufforderung "Bitte verwenden Sie Chinesisch für den Text im Video" hinzuzufügen oder den Text im generierten Code direkt durch Chinesisch zu ersetzen.































