ssrajadh/sentrysearch

Semantic search over videos using Gemini Embedding 2 or Qwen3-VL.

해결하는 문제

SentrySearch는 동영상 자료에 대한 의미적 검색을 가능하게 하여, 사용자가 자연어 설명을 입력하거나 참조 이미지를 제공함으로써 특정 순간을 찾을 수 있도록 합니다. 특정 이벤트를 찾기 위해 수시간에 걸쳐 동영상을 수동으로 스트리밍할 필요 없이, 가장 관련성이 높은 세그먼트를 자동으로 별도의 클립으로 자릅니다.

작동 방식

이 도구는 동영상을 겹치는 청크로 나누고, 멀티모달 모델(Google Gemini, Alibaba Qwen, 또는 로컬 Qwen3-VL 모델)을 사용하여 각 청크에 대한 임베딩을 생성합니다. 이러한 벡터는 로컬 ChromaDB 데이터베이스에 저장됩니다. 사용자가 검색할 때, 쿼리(텍스트 또는 이미지)는 동일한 벡터 공간으로 임베딩되어 저장된 동영상 임베딩과 코사인 유사도를 사용해 매칭됩니다. 최상의 매칭 결과는 ffmpeg를 사용하여 원본 파일에서 자동으로 자릅니다.

대상 사용자

대량의 동영상 자료를 관리하는 모든 사람, 특히 드라이브레코더 소유자나 보안 카메라 운영자에게 적합하며, 특정 시각적 이벤트를 빠르게 찾아야 하는 경우에 유용합니다.

주요 기능

  • 유연한 백엔드: 클라우드 API(Gemini, DashScope)와 로컬 실행(PyTorch 또는 Apple Silicon용 MLX)을 지원하여 개인정보 보호 및 오프라인 사용이 가능합니다.
  • 멀티모달 검색: 자연어 텍스트 또는 참조 이미지를 사용하여 검색이 가능합니다.
  • 이상 탐지: highlights 기능은 인덱스 내에서 가장 통계적으로 이상한 클립을 식별하고 자릅니다.
  • VLM 리랭킹: 초기 임베딩 결과를 더 높은 정확도로 개선하기 위해 선택적 --rerank 플래그를 사용해 시각 언어 모델(VLM)을 활용합니다.
  • 하드웨어 최적화: Apple Silicon(MLX) 및 NVIDIA GPU(4비트 양자화)에 특화된 최적화를 포함하여 메모리 사용량과 처리 시간을 줄입니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트