はじめに
VideoRAGは、非常に長い文脈の動画を処理し理解するために設計された、検索機能を強化した生成フレームワークです。このツールは、グラフ駆動型のテキスト知識ベースと階層的なマルチモーダル文脈エンコーディングを組み合わせ、NVIDIA RTX 3090 GPU 1台で数百時間の動画コンテンツを効率的に処理する。香港大学データサイエンス学部によって開発されたこのプロジェクトは、複雑な動画データを処理するための強力なツールをユーザーに提供することを目的としている。
機能一覧
- 非常に長いコンテクスト動画の効率的な処理NVIDIA RTX 3090 GPU 1つで数百時間のビデオコンテンツを処理できます。
- 構造化ビデオ知識インデックス何百時間ものビデオコンテンツを簡潔なナレッジグラフに抽出します。
- マルチモーダル検索テキストのセマンティクスとビジュアルコンテンツを組み合わせて、最も関連性の高いビデオを特定し、包括的な回答を提供します。
- 新しく作成されたLongerVideosベンチマーク講義、ドキュメンタリー、エンターテインメントなど、合計134時間に及ぶ160本以上のビデオを収録。
- デュアル・チャンネル・アーキテクチャグラフ駆動型テキスト知識ベースと階層型マルチモーダル文脈エンコーディングを組み合わせて、動画間の意味的一貫性を維持する。
ヘルプの使用
設置プロセス
- conda環境を作成し、有効化する:
conda create --name videorag python=3.11
conda activate videorag
- 必要なPythonパッケージをインストールする:
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
- ImageBindをインストールします:
cd ImageBind
pip install .
- 必要なチェックポイントファイルをダウンロードする:
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 ...
使用プロセス
- ビデオ知識抽出複数のビデオをVideoRAGに送り、システムが自動的に知識グラフを抽出・構築する。
- お問い合わせへの回答ユーザがクエリを入力すると、VideoRAGは構築された知識グラフとマルチモーダル検索メカニズムに基づいて包括的な応答を提供する。
- 多言語サポートもし多言語のビデオを扱う必要がある場合は、asr.pyのWhisperModelを変更することをお勧めします。
主な機能
- ビデオのアップロードビデオファイルをシステムにアップロードすると、自動的に処理され、知識が抽出されます。
- お問い合わせ入力クエリボックスに質問を入力すると、システムはナレッジグラフとマルチモーダル検索メカニズムに基づいて詳細な回答を提供します。
- リザルト・ショーケースこのシステムでは、関連するビデオクリップとテキスト回答が表示され、ユーザーはそれをクリックして詳細を見ることができます。