arahrooh commited on
Commit
9325411
·
1 Parent(s): 3d20fde

Fix: Ensure demo is definitely at module level scope

Browse files
Files changed (1) hide show
  1. app.py +15 -1
app.py CHANGED
@@ -1022,9 +1022,23 @@ def _create_demo():
1022
 
1023
  # Create demo at module level (like HF docs example)
1024
  # This ensures Spaces can always find it when importing the module
 
1025
  try:
 
 
 
 
 
 
1026
  demo = _create_demo()
1027
- logger.info("Demo creation completed")
 
 
 
 
 
 
 
1028
  except Exception as e:
1029
  logger.error(f"CRITICAL: Error in demo creation wrapper: {e}", exc_info=True)
1030
  import traceback
 
1022
 
1023
  # Create demo at module level (like HF docs example)
1024
  # This ensures Spaces can always find it when importing the module
1025
+ # CRITICAL: Create demo directly, not through function, to ensure it's at module scope
1026
  try:
1027
+ if IS_SPACES:
1028
+ logger.info("Creating demo for Spaces...")
1029
+ else:
1030
+ logger.info("Creating demo for local execution...")
1031
+
1032
+ # Call the function to create demo
1033
  demo = _create_demo()
1034
+
1035
+ # CRITICAL: Ensure demo is definitely set at module level
1036
+ # Re-assign to make absolutely sure it's accessible
1037
+ if demo is not None and isinstance(demo, (gr.Blocks, gr.Interface)):
1038
+ logger.info("Demo creation completed successfully")
1039
+ else:
1040
+ raise ValueError(f"Demo creation returned invalid result: {type(demo)}")
1041
+
1042
  except Exception as e:
1043
  logger.error(f"CRITICAL: Error in demo creation wrapper: {e}", exc_info=True)
1044
  import traceback