nonzeroexit commited on
Commit
01617d1
·
verified ·
1 Parent(s): db3b183

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +5 -8
app.py CHANGED
@@ -99,7 +99,7 @@ def predictmic(sequence):
99
  import torch
100
  from transformers import BertTokenizer, BertModel
101
  import numpy as np
102
- import pickle
103
  from math import expm1
104
 
105
  # === Load ProtBert model ===
@@ -142,7 +142,7 @@ def predictmic(sequence):
142
  "K.Pneumonia": {
143
  "model": "pne_mlp_model.pkl",
144
  "scaler": "pne_scaler.pkl",
145
- "pca": "pne_pca"
146
  }
147
  }
148
 
@@ -151,21 +151,18 @@ def predictmic(sequence):
151
  for bacterium, cfg in bacteria_config.items():
152
  try:
153
  # === Load scaler and transform ===
154
- with open(cfg["scaler"], "rb") as f:
155
- scaler = pickle.load(f)
156
  scaled = scaler.transform(embedding)
157
 
158
  # === Apply PCA if exists ===
159
  if cfg["pca"] is not None:
160
- with open(cfg["pca"], "rb") as f:
161
- pca = pickle.load(f)
162
  transformed = pca.transform(scaled)
163
  else:
164
  transformed = scaled
165
 
166
  # === Load model and predict ===
167
- with open(cfg["model"], "rb") as f:
168
- mic_model = pickle.load(f)
169
  mic_log = mic_model.predict(transformed)[0]
170
  mic = round(expm1(mic_log), 3) # Inverse of log1p used in training
171
 
 
99
  import torch
100
  from transformers import BertTokenizer, BertModel
101
  import numpy as np
102
+ import joblib # ✅ Use joblib instead of pickle
103
  from math import expm1
104
 
105
  # === Load ProtBert model ===
 
142
  "K.Pneumonia": {
143
  "model": "pne_mlp_model.pkl",
144
  "scaler": "pne_scaler.pkl",
145
+ "pca": "pne_pca" # Ensure this PCA file was also saved using joblib
146
  }
147
  }
148
 
 
151
  for bacterium, cfg in bacteria_config.items():
152
  try:
153
  # === Load scaler and transform ===
154
+ scaler = joblib.load(cfg["scaler"])
 
155
  scaled = scaler.transform(embedding)
156
 
157
  # === Apply PCA if exists ===
158
  if cfg["pca"] is not None:
159
+ pca = joblib.load(cfg["pca"])
 
160
  transformed = pca.transform(scaled)
161
  else:
162
  transformed = scaled
163
 
164
  # === Load model and predict ===
165
+ mic_model = joblib.load(cfg["model"])
 
166
  mic_log = mic_model.predict(transformed)[0]
167
  mic = round(expm1(mic_log), 3) # Inverse of log1p used in training
168