metadata
title: Wakee API
emoji: 🧠
colorFrom: blue
colorTo: green
sdk: docker
pinned: false
license: mit
🧠 Wakee Emotion Detection API
API FastAPI pour la détection multi-label d'émotions (Boredom, Confusion, Engagement, Frustration).
Développé par Terorra avec Python 3.11.
🚀 Endpoints
/predict - Prédiction d'émotions
curl -X POST https://terorra-wakee-api.hf.space/predict \
-F "file=@face.jpg"
Response:
{
"boredom": 1.25,
"confusion": 0.80,
"engagement": 2.15,
"frustration": 0.35,
"timestamp": "2025-02-04T10:30:00"
}
/insert - Insérer annotation utilisateur
curl -X POST https://terorra-wakee-api.hf.space/insert \
-H "Content-Type: application/json" \
-d '{
"image_base64": "...",
"predicted_boredom": 1.2,
"predicted_confusion": 0.8,
"predicted_engagement": 2.1,
"predicted_frustration": 0.3,
"user_boredom": 1.5,
"user_confusion": 1.0,
"user_engagement": 2.0,
"user_frustration": 0.5
}'
/load - Charger données et statistiques
curl https://terorra-wakee-api.hf.space/load?limit=10
/health - Health check
curl https://terorra-wakee-api.hf.space/health
/docs - Documentation Swagger
Accédez à la documentation interactive : https://terorra-wakee-api.hf.space/docs
🏗️ Architecture
- Modèle : EfficientNet B4 (ONNX)
- Source du modèle : Terorra/wakee-reloaded
- Dataset : DAiSEE
- Framework : FastAPI + ONNX Runtime
- Python : 3.11
- Stockage : Cloudflare R2 + NeonDB
🔄 Workflow
- Prédiction : L'utilisateur envoie une image → API retourne les 4 scores
- Validation : L'utilisateur corrige les scores si nécessaire
- Insertion : L'image est uploadée vers R2 et les labels vers NeonDB
- Collecte : Les données validées servent au réentraînement du modèle
🔐 Secrets requis
L'API nécessite les secrets suivants (configurés dans les Settings du Space) :
NEON_DATABASE_URL: Connection string PostgreSQLR2_ACCOUNT_ID: Cloudflare account IDR2_ACCESS_KEY_ID: Cloudflare access keyR2_SECRET_ACCESS_KEY: Cloudflare secret keyR2_BUCKET_NAME: Nom du bucket R2
🔗 Liens
📄 License
mit
Développé avec 💙 par Terorra - Certification AIA Lead MLOps