DawnC commited on
Commit
ddc065a
·
verified ·
1 Parent(s): 3f1e204

Upload 2 files

Browse files
Files changed (2) hide show
  1. clip_analyzer.py +6 -0
  2. clip_model_manager.py +9 -0
clip_analyzer.py CHANGED
@@ -44,6 +44,12 @@ class CLIPAnalyzer:
44
  )
45
  self.tokenizer = open_clip.get_tokenizer(model_name)
46
  print(f"OpenCLIP model loaded successfully.")
 
 
 
 
 
 
47
  except Exception as e:
48
  print(f"Error loading OpenCLIP model: {e}")
49
  raise
 
44
  )
45
  self.tokenizer = open_clip.get_tokenizer(model_name)
46
  print(f"OpenCLIP model loaded successfully.")
47
+ import gc
48
+ gc.collect()
49
+ if torch.cuda.is_available():
50
+ torch.cuda.empty_cache()
51
+ torch.cuda.synchronize()
52
+ print("Memory cleanup completed after OpenCLIP loading.")
53
  except Exception as e:
54
  print(f"Error loading OpenCLIP model: {e}")
55
  raise
clip_model_manager.py CHANGED
@@ -48,6 +48,15 @@ class CLIPModelManager:
48
  )
49
  self.tokenizer = open_clip.get_tokenizer(self.model_name)
50
  self.logger.info("Successfully loaded OpenCLIP model")
 
 
 
 
 
 
 
 
 
51
  except Exception as e:
52
  self.logger.error(f"Error loading CLIP model: {e}")
53
  self.logger.error(traceback.format_exc())
 
48
  )
49
  self.tokenizer = open_clip.get_tokenizer(self.model_name)
50
  self.logger.info("Successfully loaded OpenCLIP model")
51
+
52
+ # 立即清理 OpenCLIP 載入過程中的記憶體碎片
53
+ import gc
54
+ gc.collect()
55
+ if torch.cuda.is_available():
56
+ torch.cuda.empty_cache()
57
+ torch.cuda.synchronize()
58
+ self.logger.info("Memory cleanup completed after OpenCLIP loading in CLIPModelManager")
59
+
60
  except Exception as e:
61
  self.logger.error(f"Error loading CLIP model: {e}")
62
  self.logger.error(traceback.format_exc())