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+