ASI-Engineer commited on
Commit
3cabed9
·
verified ·
1 Parent(s): 7692d93

Upload folder using huggingface_hub

Browse files
Files changed (1) hide show
  1. app.py +8 -8
app.py CHANGED
@@ -5,8 +5,6 @@ Interface Gradio pour tester le modèle Employee Turnover en production.
5
  Déploiement sur Hugging Face Spaces pour tests rapides.
6
  Version de démonstration - Interface complète en développement.
7
  """
8
- from pathlib import Path
9
-
10
  import gradio as gr
11
  import mlflow
12
  import mlflow.pyfunc
@@ -22,24 +20,26 @@ def load_model():
22
  Charge le modèle depuis Hugging Face Hub (prod) ou MLflow local (dev).
23
 
24
  Ordre de priorité:
25
- 1. HF Hub (modèle déployé en production)
26
  2. MLflow local (développement local)
27
  """
28
- # Essayer HF Hub en premier (production)
29
  try:
30
- # Download model from HF Hub
 
 
31
  model_path = hf_hub_download(
32
  repo_id=HF_MODEL_REPO, filename="model/model.pkl", repo_type="model"
33
  )
34
- model = mlflow.pyfunc.load_model(str(Path(model_path).parent)) # type: ignore[attr-defined]
35
  print(f"✅ Modèle chargé depuis HF Hub: {HF_MODEL_REPO}")
36
  return model, "HF Hub"
37
  except Exception as e:
38
  print(f"⚠️ HF Hub non disponible: {e}")
39
 
40
- # Fallback: MLflow local (développement)
41
- mlflow.set_tracking_uri("sqlite:///mlflow.db")
42
  try:
 
43
  # Essayer Model Registry d'abord
44
  model = mlflow.pyfunc.load_model("models:/XGBoost_Employee_Turnover/latest") # type: ignore[attr-defined]
45
  print("✅ Modèle chargé depuis MLflow Model Registry")
 
5
  Déploiement sur Hugging Face Spaces pour tests rapides.
6
  Version de démonstration - Interface complète en développement.
7
  """
 
 
8
  import gradio as gr
9
  import mlflow
10
  import mlflow.pyfunc
 
20
  Charge le modèle depuis Hugging Face Hub (prod) ou MLflow local (dev).
21
 
22
  Ordre de priorité:
23
+ 1. HF Hub avec pickle direct (modèle déployé en production)
24
  2. MLflow local (développement local)
25
  """
26
+ # Essayer HF Hub en premier (production) - charger directement le pickle
27
  try:
28
+ import joblib
29
+
30
+ # Download model pickle from HF Hub
31
  model_path = hf_hub_download(
32
  repo_id=HF_MODEL_REPO, filename="model/model.pkl", repo_type="model"
33
  )
34
+ model = joblib.load(model_path)
35
  print(f"✅ Modèle chargé depuis HF Hub: {HF_MODEL_REPO}")
36
  return model, "HF Hub"
37
  except Exception as e:
38
  print(f"⚠️ HF Hub non disponible: {e}")
39
 
40
+ # Fallback: MLflow local (développement uniquement)
 
41
  try:
42
+ mlflow.set_tracking_uri("sqlite:///mlflow.db")
43
  # Essayer Model Registry d'abord
44
  model = mlflow.pyfunc.load_model("models:/XGBoost_Employee_Turnover/latest") # type: ignore[attr-defined]
45
  print("✅ Modèle chargé depuis MLflow Model Registry")