「Claude-real-video」登場:どんなLLMでも動画を解析・視聴可能にする魔法のツール
Claude-real-video - any LLM can watch a video
Claude-real-video - any LLM can watch a video
動画をLLMに解析させる手法「Claude-real-video」が話題です。この仕組みを使えば、特定のモデルに依存することなく、お手持ちのLLMで動画コンテンツの視聴や分析が可能になります。動画解析の可能性を一気に広げる注目の技術です。
HNのみんな、こんにちは!これを作ったのは、既存のLLMが動画を「ちゃんと見ていない」ことにイライラしたからなんだ。Claudeは動画ファイルを読み込めないし、ChatGPTは文字起こしを読むだけ。Geminiは1fps固定でサンプリングするから、速いカットを見逃したり、静止したスライドを過剰に読み込んだりしちゃうよね。
claude-real-videoはURLやローカルファイルを読み込んで、こんなことをするよ:
10分のプレゼン動画なら、600枚の固定フレームが5〜15枚の重要なキーフレームに凝縮される感じ。トークンを90%以上節約しつつ、理解度はアップするよ。
重複排除のアプローチ(v0.2.0)は、16x16のRGBサムネイルを使って、直近Nフレームとの画素差分をとる方式。videostilのpixelmatchから着想を得たけど、もっとシンプルで独立した設計になってる。
--reportを使えば、フレームが採用/除外された決定プロセスを差分率付きでHTML出力できるから、しきい値調整も視覚的にできるよ。
pip install claude-real-video && crv "https://youtube.com/watch?v=..." --report
MITライセンスで、純粋なPython + ffmpeg製。質問あったら何でも聞いて!
いいじゃん!実は自分も似たようなのを作ったよ。ちなみに、モーショングラフィックスに関しては、LLMは特定の動きを推論するのが苦手だってことがわかった。単に何が起きているか、タイミングがどうなっているかを簡潔かつ正確に説明させる方がよっぽど上手くいったよ。
わりとマシだったのは、フレームをグリッド状に並べて、エージェントにその画像全体を見せる方法。驚くほど上手くいったけど、画像だけでは判断できない細かいディテールを見逃すことは多かったな。
他にもビジョンエンベディングや動きのヒートマップ、ぼかしを入れたりして動きを表現してみたけど、どれも決定打にはならなくて、結局はうまく理解してくれるまでテキストで詳細に説明する羽目になった。まだ正解は見つけられていないんだ。
ちょうど昨日、まさに同じユースケースを考えていたところだよ!
バッテリー残量と温度の違いで充電速度がどう変わるか計測したかったんだけど、ビデオカメラで電圧表示を撮り続けて、バッテリー残量の増え方と、温度ガンでスマホの温度もあわせて記録しておけば、あとは全部自動でチャート化できるんじゃないかと思ってさ。
これが実現できれば、充電器のレビューがすごく楽になるよね。プラグを挿して動画を撮るだけで、あとはシステムに流し込むだけでいいんだから。
ぜひ試してみようかな!
動画の高速スクロールみたいな動きはどう処理してるの?
これ、LLM関連の用途以外でもかなり役立ちそう。名前からLLM専用っぽいイメージが消えるようなリネームを提案するよ。
これは本当に賢いね、素晴らしい。
「動画の行き先:ローカルマシンのまま」って書いてあるけど、Claudeを使うなら(このツールが抽出した)フレームは当然Anthropicに送信されるよね。
面白いアイデアだけど、キーフレームは動画そのものじゃないからね。動きやオブジェクトの永続性なんて、Claudeは静止画のセットから推論できないよ。でもデモとしてはいいね!
いい感じだけど、Claudeという名前を冠しない名前に変えるべきじゃないかな。
Claudeで動画を見るにはかなり高くつくんじゃないかな。
GeminiかローカルのVLMを使えばもっとずっと効率的だよ。うちは動画理解にかなり時間を費やしてきたけど、Claudeを使うとトークンを浪費するだけになっちゃう。
このライブラリをチェックしてみて: https://vlm-run.github.io/mm/
モデルを入れ替えたり、動画のエンコード方法をいろいろ試したりできるよ (https://vlm-run.github.io/mm/encoders/#video)