mastefan commited on
Commit
4b62b25
·
verified ·
1 Parent(s): 87fd244

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +7 -4
app.py CHANGED
@@ -192,8 +192,11 @@ def predict_scores(df):
192
  X = df[feats].copy()
193
  ag = ag_predictor()
194
 
195
- # List available models and remove any FastAI learners that might break
196
- available_models = ag.model_names
 
 
 
197
  safe_models = [m for m in available_models if "fastai" not in m.lower()]
198
  print(f"[INFO] Using safe models: {safe_models}")
199
 
@@ -202,12 +205,12 @@ def predict_scores(df):
202
  if isinstance(proba, pd.DataFrame) and (1 in proba.columns):
203
  return proba[1]
204
  except Exception as e:
205
- print("[WARN] AutoGluon fastai model failed; retrying with safe models only:", e)
206
  proba = ag.predict_proba(X, models=safe_models)
207
  if isinstance(proba, pd.DataFrame) and (1 in proba.columns):
208
  return proba[1]
209
 
210
- # Fallback in case probability data isn't available
211
  s = pd.Series(ag.predict(X, models=safe_models)).astype(float)
212
  rng = (s.quantile(0.95) - s.quantile(0.05)) or 1.0
213
  return ((s - s.quantile(0.05)) / rng).clip(0, 1)
 
192
  X = df[feats].copy()
193
  ag = ag_predictor()
194
 
195
+ # List all models and exclude any FastAI learners (which can cause tabular DL issues)
196
+ try:
197
+ available_models = ag.model_names() # ✅ parentheses for older AutoGluon versions
198
+ except Exception:
199
+ available_models = ag.model_names
200
  safe_models = [m for m in available_models if "fastai" not in m.lower()]
201
  print(f"[INFO] Using safe models: {safe_models}")
202
 
 
205
  if isinstance(proba, pd.DataFrame) and (1 in proba.columns):
206
  return proba[1]
207
  except Exception as e:
208
+ print("[WARN] AutoGluon fastai model failed, retrying with safe models only:", e)
209
  proba = ag.predict_proba(X, models=safe_models)
210
  if isinstance(proba, pd.DataFrame) and (1 in proba.columns):
211
  return proba[1]
212
 
213
+ # Fallback if no probabilities are returned
214
  s = pd.Series(ag.predict(X, models=safe_models)).astype(float)
215
  rng = (s.quantile(0.95) - s.quantile(0.05)) or 1.0
216
  return ((s - s.quantile(0.05)) / rng).clip(0, 1)