--- 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 ```bash curl -X POST https://terorra-wakee-api.hf.space/predict \ -F "file=@face.jpg" ``` **Response:** ```json { "boredom": 1.25, "confusion": 0.80, "engagement": 2.15, "frustration": 0.35, "timestamp": "2025-02-04T10:30:00" } ``` ### `/insert` - Insérer annotation utilisateur ```bash 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 ```bash curl https://terorra-wakee-api.hf.space/load?limit=10 ``` ### `/health` - Health check ```bash curl https://terorra-wakee-api.hf.space/health ``` ### `/docs` - Documentation Swagger Accédez à la documentation interactive : [https://terorra-wakee-api.hf.space/docs](https://terorra-wakee-api.hf.space/docs) ## 🏗️ Architecture - **Modèle** : EfficientNet B4 (ONNX) - **Source du modèle** : [Terorra/wakee-reloaded](https://huggingface.co/Terorra/wakee-reloaded) - **Dataset** : DAiSEE - **Framework** : FastAPI + ONNX Runtime - **Python** : 3.11 - **Stockage** : Cloudflare R2 + NeonDB ## 🔄 Workflow 1. **Prédiction** : L'utilisateur envoie une image → API retourne les 4 scores 2. **Validation** : L'utilisateur corrige les scores si nécessaire 3. **Insertion** : L'image est uploadée vers R2 et les labels vers NeonDB 4. **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 PostgreSQL - `R2_ACCOUNT_ID` : Cloudflare account ID - `R2_ACCESS_KEY_ID` : Cloudflare access key - `R2_SECRET_ACCESS_KEY` : Cloudflare secret key - `R2_BUCKET_NAME` : Nom du bucket R2 ## 🔗 Liens - [Code source GitHub](https://github.com/Terorra/wakee-reloaded) - [Modèle HuggingFace](https://huggingface.co/Terorra/wakee-reloaded) - [App Sourcing](https://huggingface.co/spaces/Terorra/wakee-sourcing) ## 📄 License mit --- **Développé avec 💙 par Terorra - Certification AIA Lead MLOps**