xpvwklvjp commited on
Commit
59f9511
·
verified ·
1 Parent(s): 113b3af

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +39 -3
app.py CHANGED
@@ -7,6 +7,43 @@ logging.basicConfig(
7
  )
8
  logger = logging.getLogger(__name__)
9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10
  # Set the root directory as a reusable variable
11
  ROOT_DIR = "./tmp"
12
 
@@ -79,6 +116,5 @@ with gr.Blocks() as demo:
79
  )
80
 
81
  logger.info("Launching Gradio app")
82
-
83
- if __name__ == "__main__":
84
- demo.launch(debug=True)
 
7
  )
8
  logger = logging.getLogger(__name__)
9
 
10
+ def load_model(model_path):
11
+ logger.info(f"Attempting to load model from {model_path}...")
12
+ try:
13
+ demo = gr.load(model_path)
14
+ logger.info(f"Successfully loaded demo from {model_path}.")
15
+ return demo
16
+ except Exception as e:
17
+ logger.error(f"Failed to load demo from {model_path}: {e}")
18
+ return None
19
+
20
+ # Load the demo
21
+ demo = load_model("models/John6666/lustify-sdxl-nsfwsfw-v2-sdxl")
22
+
23
+ def generate_image(prompt, max_retries=5):
24
+ if demo is None:
25
+ return None, "Error: Demo failed to load."
26
+
27
+ for attempt in range(max_retries):
28
+ try:
29
+ logger.info(f"Attempt {attempt + 1}: Starting image generation with prompt: {prompt}")
30
+ start_time = time.time()
31
+ result = demo(prompt)
32
+ generation_time = time.time() - start_time
33
+ logger.info(f"Generation completed in {generation_time:.2f} seconds")
34
+ logger.info(result)
35
+ return result, f"Image generated successfully\nGeneration time: {generation_time:.2f} seconds"
36
+ except Exception as e:
37
+ logger.error(f"Error on attempt {attempt + 1}: {str(e)}")
38
+ if attempt < max_retries - 1:
39
+ logger.info(f"Retrying... ({attempt + 2}/{max_retries})")
40
+ else:
41
+ logger.error("Max retries reached. Giving up.")
42
+ return None, f"Failed to generate image after {max_retries} attempts. Last error: {str(e)}"
43
+
44
+ # This line should never be reached, but just in case:
45
+ return None, "Unexpected error occurred"
46
+
47
  # Set the root directory as a reusable variable
48
  ROOT_DIR = "./tmp"
49
 
 
116
  )
117
 
118
  logger.info("Launching Gradio app")
119
+ demo.launch()
120
+ logger.info("Gradio app launched")