100%
로컬 GPU 운영
멀티모달
영상 + 텍스트 + 얼굴
자연어
시맨틱 검색
~20h
풀스택 MVP
Architecture
3-Tier 분산 아키텍처
Frontend
Next.js 16
- React 19 + TypeScriptUI
- HLS.js영상 스트리밍
- Tailwind + Framer Motion스타일
API Server
Mac M1
- FastAPIREST API
- SQLite + SQLAlchemy저장
- FAISS벡터 검색
GPU Model Server
RTX 4080
- Qwen3-VL장면 분석
- EXAONE쿼리 파싱
- BGE-M3텍스트 임베딩
- InsightFace얼굴 임베딩
Pipeline
영상 처리 파이프라인
영상 등록YouTube/로컬
→
프레임 추출1초 간격
→
얼굴 검출InsightFace
→
클러스터링DBSCAN
→
장면 분석VLM
→
인덱싱FAISS
Search Strategy
3가지 검색 전략
LLM이 쿼리를 분석해서 자동으로 최적 전략 선택
PERSON_ONLY
인물 기반 검색
인물명만 있을 때 DB 직접 조회
"설윤"
DESC_ONLY
설명 기반 검색
행동/상황만 있을 때 벡터 유사도 검색
"주황색 원피스 입고 춤추는"
HYBRID
하이브리드 검색
인물 + 설명 → DB 필터 후 벡터 정렬
"설윤 주황색 원피스"
Tech Stack
기술 스택
Backend
- Python
- FastAPI
- SQLAlchemy
- Pydantic
Frontend
- Next.js 16
- React 19
- TypeScript
- Tailwind CSS
AI Models
- Qwen3-VL
- EXAONE
- BGE-M3
- InsightFace
Data
- SQLite
- FAISS
- PyTorch
- ONNX Runtime