Spaces:
Running
on
Zero
Running
on
Zero
Update app.py
Browse files
app.py
CHANGED
@@ -85,25 +85,32 @@ def reload_models_task(model_choices):
|
|
85 |
|
86 |
# Replace old models with new ones atomically
|
87 |
with MODEL_LOCK:
|
88 |
-
#
|
89 |
-
|
90 |
-
|
91 |
-
try:
|
92 |
-
del LOADED_MODELS[model_name]
|
93 |
-
except:
|
94 |
-
pass
|
95 |
-
if model_name in LOADED_TOKENIZERS:
|
96 |
-
try:
|
97 |
-
del LOADED_TOKENIZERS[model_name]
|
98 |
-
except:
|
99 |
-
pass
|
100 |
|
101 |
-
# Clear
|
102 |
-
|
|
|
103 |
|
104 |
# Update with new models
|
105 |
LOADED_MODELS.update(new_models)
|
106 |
LOADED_TOKENIZERS.update(new_tokenizers)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
107 |
|
108 |
print(f"[{datetime.now().strftime('%Y-%m-%d %H:%M:%S')}] Model reload completed")
|
109 |
|
|
|
85 |
|
86 |
# Replace old models with new ones atomically
|
87 |
with MODEL_LOCK:
|
88 |
+
# Store old models for cleanup
|
89 |
+
old_models = LOADED_MODELS.copy()
|
90 |
+
old_tokenizers = LOADED_TOKENIZERS.copy()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
91 |
|
92 |
+
# Clear the dictionaries
|
93 |
+
LOADED_MODELS.clear()
|
94 |
+
LOADED_TOKENIZERS.clear()
|
95 |
|
96 |
# Update with new models
|
97 |
LOADED_MODELS.update(new_models)
|
98 |
LOADED_TOKENIZERS.update(new_tokenizers)
|
99 |
+
|
100 |
+
# Delete old model references
|
101 |
+
for model_name in old_models:
|
102 |
+
try:
|
103 |
+
del old_models[model_name]
|
104 |
+
except:
|
105 |
+
pass
|
106 |
+
for tokenizer_name in old_tokenizers:
|
107 |
+
try:
|
108 |
+
del old_tokenizers[tokenizer_name]
|
109 |
+
except:
|
110 |
+
pass
|
111 |
+
|
112 |
+
# Clear memory
|
113 |
+
clear_memory()
|
114 |
|
115 |
print(f"[{datetime.now().strftime('%Y-%m-%d %H:%M:%S')}] Model reload completed")
|
116 |
|