WiNE-iNEFF commited on
Commit
b980050
·
1 Parent(s): fae8ae5

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +10 -6
app.py CHANGED
@@ -38,12 +38,14 @@ def show_images_save(x):
38
  grid_im = Image.fromarray(np.array(grid_im).astype(np.uint8))
39
  return grid_im
40
 
41
- def generate(schedul):
42
  if schedul == "DDIMScheduler":
43
  scheduler = DDIMScheduler.from_pretrained(pipeline_name)
44
  else:
45
  scheduler = PNDMScheduler.from_pretrained(pipeline_name)
46
- scheduler.set_timesteps(num_inference_steps=40)
 
 
47
  x = torch.randn(1, 4, 64, 64).to(device)
48
  # Minimal sampling loop
49
  for i, t in tqdm(enumerate(scheduler.timesteps)):
@@ -54,10 +56,10 @@ def generate(schedul):
54
  # View the results
55
  return show_images_save(x)
56
 
57
- def ex(scheduler):
58
  t = time()
59
  print(ctime(t))
60
- return generate(scheduler), generate(scheduler), generate(scheduler), generate(scheduler)
61
 
62
  demo = gr.Blocks(css="#img_size {max-height: 128px} .container {max-width: 730px; margin: auto;} .min-h-\[15rem\]{min-height: 5rem !important;}")
63
 
@@ -77,7 +79,9 @@ with demo:
77
  """
78
  )
79
  with gr.Column():
80
- model_name = gr.Dropdown(label="Base Scheduler", choices=[m.name for m in model], value=current_model.name)
 
 
81
  with gr.Row().style(equal_height=True):
82
  out = gr.Image(shape=(64,64), image_mode='RGBA', type='pil', elem_id='img_size')
83
  out2 = gr.Image(shape=(64,64), image_mode='RGBA', type='pil', elem_id='img_size')
@@ -85,7 +89,7 @@ with demo:
85
  out3 = gr.Image(shape=(64,64), image_mode='RGBA', type='pil', elem_id='img_size')
86
  out4 = gr.Image(shape=(64,64), image_mode='RGBA', type='pil', elem_id='img_size')
87
  greet_btn = gr.Button("Generate")
88
- greet_btn.click(fn=ex, inputs=[model_name], outputs=[out, out2, out3, out4])
89
  gr.HTML(
90
  """
91
  <div class="footer">
 
38
  grid_im = Image.fromarray(np.array(grid_im).astype(np.uint8))
39
  return grid_im
40
 
41
+ def generate(schedul, num):
42
  if schedul == "DDIMScheduler":
43
  scheduler = DDIMScheduler.from_pretrained(pipeline_name)
44
  else:
45
  scheduler = PNDMScheduler.from_pretrained(pipeline_name)
46
+ if num <=0 or num >= 1000:
47
+ num = 40
48
+ scheduler.set_timesteps(num_inference_steps=num)
49
  x = torch.randn(1, 4, 64, 64).to(device)
50
  # Minimal sampling loop
51
  for i, t in tqdm(enumerate(scheduler.timesteps)):
 
56
  # View the results
57
  return show_images_save(x)
58
 
59
+ def ex(scheduler, num):
60
  t = time()
61
  print(ctime(t))
62
+ return generate(scheduler, num), generate(scheduler, num), generate(scheduler, num), generate(scheduler, num)
63
 
64
  demo = gr.Blocks(css="#img_size {max-height: 128px} .container {max-width: 730px; margin: auto;} .min-h-\[15rem\]{min-height: 5rem !important;}")
65
 
 
79
  """
80
  )
81
  with gr.Column():
82
+ with gr.Row().style(equal_height=True):
83
+ model_name = gr.Dropdown(label="Base Scheduler", choices=[m.name for m in model], value=current_model.name)
84
+ number = gr.Number(value="40", label="number of generation steps (Standard value 40, MAX 1000; The larger the number, the better the quality, but the longer it takes)", show_label=True)
85
  with gr.Row().style(equal_height=True):
86
  out = gr.Image(shape=(64,64), image_mode='RGBA', type='pil', elem_id='img_size')
87
  out2 = gr.Image(shape=(64,64), image_mode='RGBA', type='pil', elem_id='img_size')
 
89
  out3 = gr.Image(shape=(64,64), image_mode='RGBA', type='pil', elem_id='img_size')
90
  out4 = gr.Image(shape=(64,64), image_mode='RGBA', type='pil', elem_id='img_size')
91
  greet_btn = gr.Button("Generate")
92
+ greet_btn.click(fn=ex, inputs=[model_name, number], outputs=[out, out2, out3, out4])
93
  gr.HTML(
94
  """
95
  <div class="footer">