PhotoSearch
Modular AI photo workstation — semantic search, face recognition & clustering
Problem
Photo libraries grow to tens of thousands of images. Traditional folder/tag organization breaks down. People need semantic search — 'find photos of the beach at sunset' or 'photos with Sarah'.
Approach
FastAPI backend with LanceDB for vector storage. CLIP generates embeddings for semantic search. InsightFace identifies and clusters faces. Tauri desktop app with React frontend. Modular architecture separating ML pipeline from UI.
Technical Implementation
Architecture
FastAPI service layer with separate indexing and query paths. LanceDB stores embeddings; desktop client uses Tauri + React for local workflow UX.
Performance
Incremental indexing for large libraries and sub-second retrieval on common semantic query paths after warm cache.
Integration
Combined CLIP semantic retrieval with InsightFace-based person clustering to support both concept and identity-driven search.
Outcomes
- →Semantic retrieval over 10K+ photo libraries with practical interactive latency
- →Face clustering reduced manual album organization overhead
- →Desktop workflow unified indexing, query, and review in one tool
Ownership & scope
Owned full-stack implementation of indexing, retrieval, and desktop workflow orchestration for semantic and face-based search.
Constraints
- →Large local libraries with mixed quality metadata and inconsistent naming
- →Need for a desktop-first experience that can handle long indexing runs
- →Balancing semantic relevance, face matching quality, and query latency
Trade-offs
- →Prioritized local workstation workflow and retrieval quality over cloud sync features in early versions
- →Shipped combined semantic + face search path before broader media management capabilities
What changed
- →Browsing by folders and filenames shifted to concept-driven retrieval
- →People-centric queries became practical via face clustering instead of manual tagging
Workflow artifacts
- →Indexing status workflow for large photo libraries
- →Semantic query interface with ranked result grid
- →Face cluster review and merge flow
Result
Photo search workstation using multimodal retrieval, semantic search, and face recognition.