mudler/locate-anything.cpp
Port of Nvidia LocateAnything-3B on ggml
何を解決するか
NVIDIAのLocateAnything-3BモデルをC++およびggmlに移植することで、Pythonランタイムを必要とせず、CPUおよびGPU上で高速にオープンボリュームオブジェクト検出を実行する、高速で軽量かつ依存関係のない方法を提供します。推論時にPythonランタイムを必要とせず、CPUおよびGPU上で効率的にモデルを実行できるようになります。
動作方法
このプロジェクトは、Qwen2.5-3B言語モデル、MoonViTビジョンタワー、および2層MLPプロジェクターから構成される視覚言語モデル(VLM)のC++17推論移植版です。検出は「トークン空間」で行われ、モデルは0から1000までの座標トークンを生成し、その後バウンディングボックスにデコードします。ハイブリッド、スロー、ファストの複数のデコードモードをサポートしており、GGUF量子化を活用することで、検出精度を損なうことなくモデルサイズを削減し、速度を向上させます。
対象ユーザー
Pythonが利用できない環境、または高パフォーマンスなCPU/GPU推論が必要な環境で、テキストプロンプトに基づくオブジェクト検出(オープンボリューム)を実行したい開発者や研究者。
特徴
- 高パフォーマンス:CPUおよびGPUの両方で、公式のPyTorch実装よりも大幅に高速です。
- Python依存なし:推論はすべてC++で処理され、Pythonランタイムの必要がありません。
- 量子化対応:q8_0、q4_kなど、メモリ使用量と速度のバランスを取るためのさまざまなGGUF量子化レベルを提供します。
- 検証済みの精度:バウンディングボックスの検出結果は、公式のNVIDIA実装と同一またはほぼ同一であることが検証されています。
- 柔軟なデプロイ:CLIツールとC-APIを備えており、LocalAIなどの他のアプリケーションに統合可能です。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト