oc_p5-dev / README.md
ASI-Engineer's picture
Upload README.md with huggingface_hub
f4bfb15 verified
|
raw
history blame
3.05 kB
metadata
title: Employee Turnover Prediction API
emoji: 👔
colorFrom: blue
colorTo: purple
sdk: docker
pinned: true
license: mit
app_port: 7860

Employee Turnover Prediction API 🚀 (v3.2.1)

API de prédiction du turnover des employés (XGBoost + SMOTE) avec endpoints batch, validation stricte et documentation à jour.

🎯 Fonctionnalités

  • ✅ Prédiction de turnover (0 = reste, 1 = part)
  • 📦 Endpoint batch CSV (3 fichiers bruts)
  • 🎛️ Sliders Gradio et schémas Pydantic alignés sur les min/max réels
  • 📊 Probabilités et niveau de risque (Low/Medium/High)
  • 🔐 Authentification API Key (obligatoire)
  • 📝 Logs structurés JSON
  • 🛡️ Rate limiting (20 req/min)
  • 📚 Documentation OpenAPI/Swagger

🔗 Endpoints

Endpoint Description
/docs Documentation interactive Swagger
/health Status de l'API
/ui Interface Gradio interactive
/predict Prédiction unitaire (JSON, contraintes réelles)
/predict/batch Prédiction batch (3 fichiers CSV bruts)

🚀 Utilisation

Prédiction unitaire (toutes contraintes appliquées)

curl -X POST https://asi-engineer-oc-p5-dev.hf.space/predict \
  -H "Content-Type: application/json" \
  -H "X-API-Key: your-key" \
  -d '{
    "nombre_participation_pee": 0,
    "nb_formations_suivies": 2,
    "nombre_employee_sous_responsabilite": 1,
    "distance_domicile_travail": 15,
    "niveau_education": 3,
    "domaine_etude": "Infra & Cloud",
    "ayant_enfants": "Y",
    "frequence_deplacement": "Occasionnel",
    "annees_depuis_la_derniere_promotion": 2,
    "annes_sous_responsable_actuel": 5,
    "satisfaction_employee_environnement": 3,
    "note_evaluation_precedente": 4,
    "niveau_hierarchique_poste": 2,
    "satisfaction_employee_nature_travail": 3,
    "satisfaction_employee_equipe": 3,
    "satisfaction_employee_equilibre_pro_perso": 2,
    "note_evaluation_actuelle": 4,
    "heure_supplementaires": "Non",
    "augementation_salaire_precedente": 5.5,
    "age": 35,
    "genre": "M",
    "revenu_mensuel": 4500.0,
    "statut_marital": "Marié(e)",
    "departement": "Commercial",
    "poste": "Manager",
    "nombre_experiences_precedentes": 3,
    "nombre_heures_travailless": 80,
    "annee_experience_totale": 10,
    "annees_dans_l_entreprise": 5,
    "annees_dans_le_poste_actuel": 2
  }'

Prédiction batch (3 fichiers CSV bruts)

curl -X POST https://asi-engineer-oc-p5-dev.hf.space/predict/batch \
  -H "X-API-Key: your-key" \
  -F "sondage_file=@extrait_sondage.csv" \
  -F "eval_file=@extrait_eval.csv" \
  -F "sirh_file=@extrait_sirh.csv"

Réponse :

{
  "total_employees": 1470,
  "predictions": [...],
  "summary": {
    "total_stay": 1169,
    "total_leave": 301,
    "high_risk_count": 222
  }
}

📚 Documentation complète

Voir docs/API.md ou le GitHub Repository pour la documentation complète et les contraintes détaillées (min/max, enums, etc).