mudler/locate-anything.cpp
Port of Nvidia LocateAnything-3B on ggml
解決的問題
提供了一種快速、輕量且無依賴的方案,用於執行NVIDIA的LocateAnything-3B模型進行開放詞彙物件檢測。透過將模型移植至C++與ggml,可在推理時無需Python執行環境,並讓模型在CPU與GPU上高效運行。
工作原理
本專案是基於Qwen2.5-3B語言模型、MoonViT視覺塔與2層MLP投影器的視覺語言模型(VLM)的C++17推理移植版本。檢測在「token空間」中進行,模型產生0到1000之間的座標token,隨後解碼為邊界框。支援多種解碼模式(混合、慢速與快速),並利用GGUF量化技術在不犧牲檢測準確度的前提下縮小模型體積並提升速度。
適用對象
在Python不可用或需要高效率CPU/GPU推理的環境中,需根據文字提示(開放詞彙)執行物件檢測的開發者與研究人員。
主要亮點
- 高效率:在CPU與GPU上均顯著快於官方PyTorch實作。
- 零Python依賴:推理完全於C++中處理,無需Python執行環境。
- 量化支援:提供多種GGUF量化等級(如q8_0、q4_k),以在記憶體使用與速度之間取得平衡。
- 驗證的準確度:邊界框檢測結果與官方NVIDIA實作完全相同或幾乎相同。
- 彈性部署:內建CLI工具與C-API,可整合至其他應用(如LocalAI)。
相關
- 專案
- 專案
- 專案
- 專案
- 專案