Muhammad541 commited on
Commit
6a18322
·
verified ·
1 Parent(s): 3d8d910

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +24 -6
app.py CHANGED
@@ -100,12 +100,30 @@ if not all(col in questions_df.columns for col in ["Skill", "Question", "Answer"
100
  exit(1)
101
  logger.info(f"questions_df loaded with {len(questions_df)} rows. Skills available: {list(questions_df['Skill'].unique())}")
102
 
103
- # Load or Initialize Models (lighter model)
104
- if os.path.exists(UNIVERSAL_MODEL_PATH):
105
- universal_model = SentenceTransformer(UNIVERSAL_MODEL_PATH)
106
- else:
107
- universal_model = SentenceTransformer("all-MiniLM-L6-v2-distilled") # Lighter model
108
- universal_model.save(UNIVERSAL_MODEL_PATH)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
109
 
110
  if os.path.exists(DETECTOR_MODEL_PATH):
111
  detector_tokenizer = AutoTokenizer.from_pretrained(DETECTOR_MODEL_PATH)
 
100
  exit(1)
101
  logger.info(f"questions_df loaded with {len(questions_df)} rows. Skills available: {list(questions_df['Skill'].unique())}")
102
 
103
+ # Load or Initialize Models with Fallback
104
+ def load_universal_model():
105
+ default_model = "all-MiniLM-L6-v2"
106
+ try:
107
+ if os.path.exists(UNIVERSAL_MODEL_PATH):
108
+ logger.info(f"Loading universal model from {UNIVERSAL_MODEL_PATH}")
109
+ return SentenceTransformer(UNIVERSAL_MODEL_PATH)
110
+ else:
111
+ logger.info(f"Loading universal model: all-MiniLM-L6-v2")
112
+ model = SentenceTransformer("all-MiniLM-L6-v2")
113
+ model.save(UNIVERSAL_MODEL_PATH)
114
+ return model
115
+ except Exception as e:
116
+ logger.error(f"Failed to load universal model all-MiniLM-L6-v2: {e}. Falling back to default.")
117
+ try:
118
+ logger.info(f"Loading fallback model: {default_model}")
119
+ model = SentenceTransformer(default_model)
120
+ model.save(UNIVERSAL_MODEL_PATH)
121
+ return model
122
+ except Exception as e:
123
+ logger.error(f"Failed to load fallback model {default_model}: {e}. Exiting.")
124
+ exit(1)
125
+
126
+ universal_model = load_universal_model()
127
 
128
  if os.path.exists(DETECTOR_MODEL_PATH):
129
  detector_tokenizer = AutoTokenizer.from_pretrained(DETECTOR_MODEL_PATH)