radames commited on
Commit
b60caa9
1 Parent(s): 48fbe62

enable width param and contains nfsw response on API

Browse files
Files changed (1) hide show
  1. app.py +17 -7
app.py CHANGED
@@ -19,7 +19,7 @@ torch.backends.cudnn.benchmark = True
19
  word_list_dataset = load_dataset("stabilityai/word-list", data_files="list.txt", use_auth_token=True)
20
  word_list = word_list_dataset["train"]['text']
21
 
22
- def infer(prompt, samples, steps, scale, seed):
23
  #When running locally you can also remove this filter
24
  for filter in word_list:
25
  if re.search(rf"\b{filter}\b", prompt):
@@ -32,15 +32,20 @@ def infer(prompt, samples, steps, scale, seed):
32
  num_inference_steps=steps,
33
  guidance_scale=scale,
34
  generator=generator,
 
 
35
  )
36
  images = []
37
  safe_image = Image.open(r"unsafe.png")
 
38
  for i, image in enumerate(images_list["sample"]):
39
  if(images_list["nsfw_content_detected"][i]):
40
  images.append(safe_image)
 
41
  else:
42
  images.append(image)
43
- return images
 
44
 
45
  css = """
46
  .gradio-container {
@@ -136,6 +141,7 @@ examples = [
136
  45,
137
  7.5,
138
  1024,
 
139
  ],
140
  [
141
  'A pikachu fine dining with a view to the Eiffel Tower',
@@ -143,6 +149,7 @@ examples = [
143
  45,
144
  7,
145
  1024,
 
146
  ],
147
  [
148
  'A mecha robot in a favela in expressionist style',
@@ -150,6 +157,7 @@ examples = [
150
  45,
151
  7,
152
  1024,
 
153
  ],
154
  [
155
  'an insect robot preparing a delicious meal',
@@ -157,6 +165,7 @@ examples = [
157
  45,
158
  7,
159
  1024,
 
160
  ],
161
  [
162
  "A small cabin on top of a snowy mountain in the style of Disney, artstation",
@@ -164,6 +173,7 @@ examples = [
164
  45,
165
  7,
166
  1024,
 
167
  ],
168
  ]
169
 
@@ -253,7 +263,6 @@ with block:
253
  ).style(grid=[2], height="auto")
254
 
255
  advanced_button = gr.Button("Advanced options", elem_id="advanced-btn")
256
-
257
  with gr.Row(elem_id="advanced-options"):
258
  samples = gr.Slider(label="Images", minimum=1, maximum=4, value=4, step=1)
259
  steps = gr.Slider(label="Steps", minimum=1, maximum=50, value=45, step=1)
@@ -267,13 +276,14 @@ with block:
267
  step=1,
268
  randomize=True,
269
  )
270
-
271
- ex = gr.Examples(examples=examples, fn=infer, inputs=[text, samples, steps, scale, seed], outputs=gallery, cache_examples=True)
 
272
  ex.dataset.headers = [""]
273
 
274
 
275
- text.submit(infer, inputs=[text, samples, steps, scale, seed], outputs=gallery)
276
- btn.click(infer, inputs=[text, samples, steps, scale, seed], outputs=gallery)
277
  advanced_button.click(
278
  None,
279
  [],
 
19
  word_list_dataset = load_dataset("stabilityai/word-list", data_files="list.txt", use_auth_token=True)
20
  word_list = word_list_dataset["train"]['text']
21
 
22
+ def infer(prompt, samples, steps, scale, seed, width):
23
  #When running locally you can also remove this filter
24
  for filter in word_list:
25
  if re.search(rf"\b{filter}\b", prompt):
 
32
  num_inference_steps=steps,
33
  guidance_scale=scale,
34
  generator=generator,
35
+ width=int(width),
36
+ height=int(width),
37
  )
38
  images = []
39
  safe_image = Image.open(r"unsafe.png")
40
+ contains_nfsw = []
41
  for i, image in enumerate(images_list["sample"]):
42
  if(images_list["nsfw_content_detected"][i]):
43
  images.append(safe_image)
44
+ contains_nfsw.append([True])
45
  else:
46
  images.append(image)
47
+ contains_nfsw.append([False])
48
+ return [images, contains_nfsw]
49
 
50
  css = """
51
  .gradio-container {
 
141
  45,
142
  7.5,
143
  1024,
144
+ 512,
145
  ],
146
  [
147
  'A pikachu fine dining with a view to the Eiffel Tower',
 
149
  45,
150
  7,
151
  1024,
152
+ 512,
153
  ],
154
  [
155
  'A mecha robot in a favela in expressionist style',
 
157
  45,
158
  7,
159
  1024,
160
+ 512,
161
  ],
162
  [
163
  'an insect robot preparing a delicious meal',
 
165
  45,
166
  7,
167
  1024,
168
+ 512,
169
  ],
170
  [
171
  "A small cabin on top of a snowy mountain in the style of Disney, artstation",
 
173
  45,
174
  7,
175
  1024,
176
+ 512,
177
  ],
178
  ]
179
 
 
263
  ).style(grid=[2], height="auto")
264
 
265
  advanced_button = gr.Button("Advanced options", elem_id="advanced-btn")
 
266
  with gr.Row(elem_id="advanced-options"):
267
  samples = gr.Slider(label="Images", minimum=1, maximum=4, value=4, step=1)
268
  steps = gr.Slider(label="Steps", minimum=1, maximum=50, value=45, step=1)
 
276
  step=1,
277
  randomize=True,
278
  )
279
+ contains_nfsw = gr.Dataframe(type="numpy", datatype="bool", visible=False)
280
+ width = gr.Number(value=128, visible=False)
281
+ ex = gr.Examples(examples=examples, fn=infer, inputs=[text, samples, steps, scale, seed, width], outputs=[gallery, contains_nfsw], cache_examples=False)
282
  ex.dataset.headers = [""]
283
 
284
 
285
+ text.submit(infer, inputs=[text, samples, steps, scale, seed, width], outputs=[gallery, contains_nfsw])
286
+ btn.click(infer, inputs=[text, samples, steps, scale, seed, width], outputs=[gallery, contains_nfsw])
287
  advanced_button.click(
288
  None,
289
  [],