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와 같은 다른 애플리케이션에 통합할 수 있습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트