rafaaa2105 commited on
Commit
0b23474
1 Parent(s): c8f91a3

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +6 -9
app.py CHANGED
@@ -4,10 +4,10 @@ import gradio as gr
4
  import os
5
  import spaces
6
 
 
7
  model_list = [model.strip() for model in os.environ.get("MODELS").split(",")]
8
  lora_list = [model.strip() for model in os.environ.get("LORAS").split(",")]
9
 
10
- # Load all models upfront
11
  models = {}
12
  for model_name in model_list:
13
  try:
@@ -17,12 +17,11 @@ for model_name in model_list:
17
 
18
  @spaces.GPU
19
  def generate_images(model_name, prompt, negative_prompt, num_inference_steps, guidance_scale, num_images=4):
20
- if model_name not in models:
 
21
  return []
22
 
23
- pipe = models[model_name]
24
  outputs = []
25
-
26
  for _ in range(num_images):
27
  output = pipe(prompt, negative_prompt=negative_prompt, num_inference_steps=num_inference_steps, guidance_scale=guidance_scale)["images"][0]
28
  outputs.append(output)
@@ -41,12 +40,10 @@ with gr.Blocks() as demo:
41
  num_inference_steps = gr.Slider(minimum=10, maximum=50, step=1, value=25, label="Number of Inference Steps")
42
  guidance_scale = gr.Slider(minimum=1, maximum=20, step=0.5, value=7.5, label="Guidance Scale")
43
  num_images = gr.Slider(minimum=1, maximum=4, step=1, value=4, label="Number of Images")
44
-
45
  generate_btn = gr.Button("Generate Image")
46
-
47
  with gr.Column():
48
  output_gallery = gr.Gallery(label="Generated Images", height=480, scale=1)
 
49
 
50
- generate_btn.click(generate_images, inputs=[model_dropdown, prompt, negative_prompt, num_inference_steps, guidance_scale, num_images], outputs=output_gallery)
51
-
52
- demo.launch()
 
4
  import os
5
  import spaces
6
 
7
+ # Load the models outside of the generate_images function
8
  model_list = [model.strip() for model in os.environ.get("MODELS").split(",")]
9
  lora_list = [model.strip() for model in os.environ.get("LORAS").split(",")]
10
 
 
11
  models = {}
12
  for model_name in model_list:
13
  try:
 
17
 
18
  @spaces.GPU
19
  def generate_images(model_name, prompt, negative_prompt, num_inference_steps, guidance_scale, num_images=4):
20
+ pipe = models.get(model_name)
21
+ if pipe is None:
22
  return []
23
 
 
24
  outputs = []
 
25
  for _ in range(num_images):
26
  output = pipe(prompt, negative_prompt=negative_prompt, num_inference_steps=num_inference_steps, guidance_scale=guidance_scale)["images"][0]
27
  outputs.append(output)
 
40
  num_inference_steps = gr.Slider(minimum=10, maximum=50, step=1, value=25, label="Number of Inference Steps")
41
  guidance_scale = gr.Slider(minimum=1, maximum=20, step=0.5, value=7.5, label="Guidance Scale")
42
  num_images = gr.Slider(minimum=1, maximum=4, step=1, value=4, label="Number of Images")
 
43
  generate_btn = gr.Button("Generate Image")
 
44
  with gr.Column():
45
  output_gallery = gr.Gallery(label="Generated Images", height=480, scale=1)
46
+ generate_btn.click(generate_images, inputs=[model_dropdown, prompt, negative_prompt, num_inference_steps, guidance_scale, num_images], outputs=output_gallery)
47
 
48
+ demo.launch()
49
+