ericjedha commited on
Commit
f700c69
·
verified ·
1 Parent(s): fb0103f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +4 -5
app.py CHANGED
@@ -4,6 +4,7 @@ import mlflow
4
  import mlflow.pyfunc
5
  import logging
6
  import os
 
7
  from fastapi import FastAPI, HTTPException, File, UploadFile
8
  from pydantic import BaseModel
9
  from contextlib import asynccontextmanager
@@ -40,11 +41,7 @@ class Item(BaseModel):
40
 
41
  @app.post("/predict/")
42
  async def predict(item: Item):
43
- # Vérifier si le modèle a bien été chargé au démarrage
44
- if 'getaround_predictor' not in ml_models or ml_models['getaround_predictor'] is None:
45
- logger.error("Le modèle n'a pas pu être chargé. L'endpoint de prédiction n'est pas disponible.")
46
- raise HTTPException(status_code=503, detail="Service indisponible: le modèle de prédiction n'est pas chargé.")
47
-
48
  try:
49
  # Créer un DataFrame à partir des données de la requête
50
  # La méthode `model_dump()` de Pydantic est plus sûre que de reconstruire le dict à la main
@@ -55,6 +52,8 @@ async def predict(item: Item):
55
 
56
  logger.info(f"Données reçues pour la prédiction : \n{car_df.to_string()}")
57
 
 
 
58
  # Utiliser le modèle déjà en mémoire pour faire la prédiction
59
  prediction = loaded_model.predict(car_df)
60
 
 
4
  import mlflow.pyfunc
5
  import logging
6
  import os
7
+ from typing import Literal, List, Union
8
  from fastapi import FastAPI, HTTPException, File, UploadFile
9
  from pydantic import BaseModel
10
  from contextlib import asynccontextmanager
 
41
 
42
  @app.post("/predict/")
43
  async def predict(item: Item):
44
+
 
 
 
 
45
  try:
46
  # Créer un DataFrame à partir des données de la requête
47
  # La méthode `model_dump()` de Pydantic est plus sûre que de reconstruire le dict à la main
 
52
 
53
  logger.info(f"Données reçues pour la prédiction : \n{car_df.to_string()}")
54
 
55
+ loaded_model = mlflow.pyfunc.load_model(logged_model)
56
+
57
  # Utiliser le modèle déjà en mémoire pour faire la prédiction
58
  prediction = loaded_model.predict(car_df)
59