Allgemeine Einführung
VideoRAG ist ein generatives Framework mit Suchfunktion, das für die Verarbeitung und das Verständnis sehr langer kontextbezogener Videos entwickelt wurde. Das Tool kombiniert eine graphengesteuerte textuelle Wissensbasis mit hierarchischer multimodaler Kontextkodierung, um Hunderte von Stunden an Videoinhalten auf einer einzigen NVIDIA RTX 3090 GPU effizient zu verarbeiten. videoRAG erhält die Konsistenz der Videosemantik aufrecht und optimiert die Abfrageeffizienz durch den dynamischen Aufbau eines Wissensgraphen. Das von der Abteilung für Datenwissenschaften der Universität Hongkong entwickelte Projekt zielt darauf ab, den Nutzern ein leistungsfähiges Werkzeug zur Verarbeitung komplexer Videodaten an die Hand zu geben.
Funktionsliste
- Effizienter Umgang mit sehr langen kontextbezogenen VideosVerarbeiten Sie Hunderte von Stunden an Videoinhalten mit einer einzigen NVIDIA RTX 3090 GPU.
- Strukturierter Video-WissensindexHunderte von Stunden an Videoinhalten in einem übersichtlichen Wissensdiagramm zusammenfassen.
- multimodale SucheKombinieren Sie textuelle Semantik und visuelle Inhalte, um die relevantesten Videos zu identifizieren und eine umfassende Antwort zu geben.
- Neu erstellter LongerVideos-BenchmarkEnthält über 160 Videos mit insgesamt 134 Stunden an Vorträgen, Dokumentationen und Unterhaltung.
- Dual-Channel-ArchitekturKombination einer graphengesteuerten textuellen Wissensbasis und einer hierarchischen multimodalen Kontextkodierung zur Aufrechterhaltung der semantischen Konsistenz zwischen Videos.
Hilfe verwenden
Ablauf der Installation
- Erstellen und aktivieren Sie die conda-Umgebung:
conda create --name videorag python=3.11
conda activate videorag
- Installieren Sie die erforderlichen Python-Pakete:
pip install numpy==1.26.4 torch==2.1.2 torchvision==0.16.2 torchaudio==2.1.2
pip install accelerate==0.30.1 bitsandbytes==0.43.1 moviepy==1.0.3
pip install git+https://github.com/facebookresearch/pytorchvideo.git@28fe037d212663c6a24f373b94cc5d478c8c1a1d
pip install timm==0.6.7 ftfy regex einops fvcore eva-decord==0.6.1 iopath matplotlib types-regex cartopy
pip install ctranslate2==4.4.0 faster_whisper neo4j hnswlib xxhash nano-vectordb
pip install transformers==4.37.1 tiktoken openai tenacity
- Installieren Sie ImageBind:
cd ImageBind
pip installieren .
- Laden Sie die erforderlichen Checkpoint-Dateien herunter:
git clone https://huggingface.co/openbmb/MiniCPM-V-2_6-int4
git clone https://huggingface.co/Systran/faster-distil-whisper-large-v3
mkdir .checkpoints
cd .checkpoints
wget https://dl.fbaipublicfiles.com/imagebind/imagebind_huge.pth
cd ...
Verwendung Prozess
- Video WissensextraktionMehrere Videos werden in VideoRAG eingespeist und das System extrahiert und erstellt automatisch einen Wissensgraphen.
- Antwort auf eine AnfrageBenutzer können eine Anfrage eingeben, und VideoRAG liefert eine umfassende Antwort auf der Grundlage des erstellten Wissensgraphen und des multimodalen Suchmechanismus.
- Mehrsprachige UnterstützungDerzeit wurde VideoRAG nur in einer englischen Umgebung getestet. Wenn Sie mit mehrsprachigen Videos arbeiten müssen, empfiehlt es sich, das WhisperModel in asr.py zu ändern.
Hauptfunktionen
- Video-UploadHochladen von Videodateien in das System, das automatisch Wissen verarbeitet und extrahiert.
- Anfrage EingabeGeben Sie eine Frage in das Abfragefeld ein, und das System wird Ihnen eine detaillierte Antwort auf der Grundlage des Wissensgraphen und des multimodalen Suchmechanismus geben.
- Ergebnisse ShowcaseDas System zeigt relevante Videoclips und Textantworten an, auf die der Benutzer klicken kann, um Details anzuzeigen.