vision / README.md
jeanmachuca's picture
Upload README.md with huggingface_hub
b8e863d verified
|
Raw
History Blame Contribute Delete
3.2 kB
---
license: mit
tags:
- face-recognition
- face-detection
- face-landmarks
- face-expression
- face-age-gender
- gguf
- vision
library_name: gguf
pipeline_tag: image-classification
---
# face-api weights (gguf + safetensors)
Pre-trained model weights from [vladmandic/face-api](https://github.com/vladmandic/face-api)
at commit `189226d63aabb48cb40776fd1c453ebc0fa722f1`, converted losslessly to
portable **safetensors** and **gguf** (float32) formats by the
[`CognitiveOS-Labs/tfjs-weights-to-gguf`](https://github.com/CognitiveOS-Labs/tfjs-weights-to-gguf)
reproducible pipeline.
## Models
| File | Tensors | Purpose |
|------|---------|---------|
| `tiny_face_detector_model.gguf` | 19 | Tiny face detection |
| `face_landmark_68_model.gguf` | 49 | 68-point landmarks |
| `face_landmark_68_tiny_model.gguf` | 28 | Tiny 68-point landmarks |
| `face_recognition_model.gguf` | 117 | Face embedding (128-d) |
| `ssd_mobilenetv1_model.gguf` | 151 | SSD face detection |
| `age_gender_model.gguf` | 51 | Age / gender |
| `face_expression_model.gguf` | 49 | Facial expression |
Every model is also provided as `.safetensors` and both formats carry a
`*-mapping.json` recording each tensor's name, shape, dtype, data location,
and the original TF.js quantization block (source traceability).
## Format notes
- **Weights only.** The face-api repo has no `model.json` — the network
topologies live in its TypeScript sources under `src/`. These artifacts
preserve the original TF.js tensor names verbatim.
- All tensors are **float32** (the dequantized values produced by the TF.js
loader), except 15 scalar `int32` constants in `ssd_mobilenetv1_model`
(postprocessor shape parameters).
- The gguf files use **generic packing** (metadata keys
`general.architecture`, `general.name`, `general.source`,
`general.source.commit`, `general.alignment`, `general.file_type`; GGML
dim order; `GGML_TYPE_F32`=0, `GGML_TYPE_I32`=26). They are structurally
valid GGUF v3 but use a custom `general.architecture`, so llama.cpp will not
load them yet — a runtime for these architectures is the documented
follow-up (see the `face-recognition` CGP repo).
- Reference loaders and the full bitwise-validation suite live in the
[`CognitiveOS-Labs/tfjs-weights-to-gguf`](https://github.com/CognitiveOS-Labs/tfjs-weights-to-gguf)
repo under `scripts/`.
## Consumed by
- [`CognitiveOS-Labs/face-recognition`](https://github.com/CognitiveOS-Labs/face-recognition)
— CognitiveOS patch declaring `face_recognition_model.gguf` as its remote
wide-model weight (downloaded at `cpm install` time).
- [`CognitiveOS-Labs/face-recognition-tune`](https://github.com/CognitiveOS-Labs/face-recognition-tune)
— `cpm tune` LoRA trainer over the frozen base weights.
## Source & license
Weights derived from `vladmandic/face-api` (MIT), commit
`189226d63aabb48cb40776fd1c453ebc0fa722f1`, provided "as-is". Conversion tooling
in the `tfjs-weights-to-gguf` repo is MIT.
The recognition backbone was trained on VGGFace2-like data by the face-api
project; generic face recognition works out of the box, while recognizing
specific people is an enrollment (embedding-gallery) operation.