ML / DL
Face Match System
Production face recognition SDK: detect, embed, and search at scale.
A packaged face recognition library, distributed as FaceLib, that takes an image and either indexes the faces in it or searches for them. It pairs RetinaFace detection with MagFace embeddings and stores vectors in Qdrant, so matching stays fast as the gallery grows.
It is designed to be imported, not demoed. The public surface is small and the configuration lives in one file.
API
- FaceLibrary(config_path, debug_save_faces) constructs the client.
- index(image, image_id, metadata) detects, embeds, and stores every face in an image.
- search_by_image(image, top_k, metadata_filter) returns matches as point_id, image_id, score, and metadata.
Pipeline
RetinaFace locates faces, MagFace produces quality-aware embeddings, and Qdrant handles approximate nearest neighbour search. Metadata filters let a search be scoped without a second pass.
Requirements
Python 3.9 or newer, a Qdrant instance, and the MagFace weights at models/magface_epoch_00025.pth.
Stack
- Detection
- RetinaFace
- Embeddings
- MagFacePyTorch
- Search
- Qdrant
- Packaging
- Python 3.9+