Malaji71 commited on
Commit
2979863
·
verified ·
1 Parent(s): 3d9a188

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +19 -5
app.py CHANGED
@@ -21,14 +21,25 @@ os.environ["TOKENIZERS_PARALLELISM"] = "false"
21
  logging.basicConfig(level=logging.INFO)
22
  logger = logging.getLogger(__name__)
23
 
24
- # Initialize the optimizer globally
25
- optimizer = UltraSupremeOptimizer()
 
 
 
 
 
 
 
 
26
 
27
 
28
  def process_ultra_supreme_analysis(image):
29
  """Process image and generate ultra supreme analysis"""
30
  try:
31
- prompt, info, score, breakdown = optimizer.generate_ultra_supreme_prompt(image)
 
 
 
32
 
33
  # Find appropriate grade based on score
34
  grade_info = None
@@ -51,8 +62,11 @@ def process_ultra_supreme_analysis(image):
51
  return prompt, info, score_html
52
 
53
  except Exception as e:
54
- logger.error(f"Ultra supreme wrapper error: {e}")
55
- return "❌ Processing failed", f"Error: {str(e)}", '<div style="text-align: center; color: red;">Error</div>'
 
 
 
56
 
57
 
58
  def clear_outputs():
 
21
  logging.basicConfig(level=logging.INFO)
22
  logger = logging.getLogger(__name__)
23
 
24
+ # NO inicializar el optimizer globalmente
25
+ optimizer = None
26
+
27
+
28
+ def get_optimizer():
29
+ """Get or create optimizer instance"""
30
+ global optimizer
31
+ if optimizer is None:
32
+ optimizer = UltraSupremeOptimizer()
33
+ return optimizer
34
 
35
 
36
  def process_ultra_supreme_analysis(image):
37
  """Process image and generate ultra supreme analysis"""
38
  try:
39
+ # Obtener optimizer (lazy initialization)
40
+ opt = get_optimizer()
41
+
42
+ prompt, info, score, breakdown = opt.generate_ultra_supreme_prompt(image)
43
 
44
  # Find appropriate grade based on score
45
  grade_info = None
 
62
  return prompt, info, score_html
63
 
64
  except Exception as e:
65
+ logger.error(f"Ultra supreme wrapper error: {e}", exc_info=True)
66
+ error_msg = str(e)
67
+ if "GPU" in error_msg:
68
+ error_msg = "GPU processing failed. The system will automatically retry with CPU."
69
+ return "❌ Processing failed", f"Error: {error_msg}", '<div style="text-align: center; color: red;">Error</div>'
70
 
71
 
72
  def clear_outputs():