hysts HF staff commited on
Commit
b58a6fc
1 Parent(s): dcbba80
Files changed (3) hide show
  1. app.py +18 -20
  2. app_generated_image.py +2 -1
  3. app_real_image.py +2 -1
app.py CHANGED
@@ -8,30 +8,29 @@ import shlex
8
  import subprocess
9
 
10
  import gradio as gr
 
11
 
12
  from app_generated_image import create_prompt_demo
13
  from app_real_image import create_real_image_demo
14
 
15
- DESCRIPTION = '''# Plug-and-Play diffusion features
16
-
17
- This is an unofficial demo for [https://github.com/MichalGeyer/plug-and-play](https://github.com/MichalGeyer/plug-and-play).
18
- '''
19
 
20
  if (SPACE_ID := os.getenv('SPACE_ID')) is not None:
21
- DESCRIPTION += f'''<p>For faster inference without waiting in queue, you may duplicate the space and upgrade to GPU in settings.<br/>
22
- <a href="https://huggingface.co/spaces/{SPACE_ID}?duplicate=true">
23
- <img style="margin-top: 0em; margin-bottom: 0em" src="https://bit.ly/3gLdBN6" alt="Duplicate Space"></a>
24
- <p/>
25
- '''
26
-
27
- weight_dir = pathlib.Path('plug-and-play/models/ldm/stable-diffusion-v1')
28
- if not weight_dir.exists():
29
- subprocess.run(
30
- shlex.split('mkdir -p plug-and-play/models/ldm/stable-diffusion-v1/'))
31
- subprocess.run(
32
- shlex.split(
33
- 'wget https://huggingface.co/CompVis/stable-diffusion-v-1-4-original/resolve/main/sd-v1-4.ckpt -O plug-and-play/models/ldm/stable-diffusion-v1/model.ckpt'
34
- ))
 
35
 
36
  with gr.Blocks(css='style.css') as demo:
37
  gr.Markdown(DESCRIPTION)
@@ -40,5 +39,4 @@ with gr.Blocks(css='style.css') as demo:
40
  create_real_image_demo()
41
  with gr.TabItem('Use prompt as input'):
42
  create_prompt_demo()
43
-
44
- demo.queue().launch()
 
8
  import subprocess
9
 
10
  import gradio as gr
11
+ import torch
12
 
13
  from app_generated_image import create_prompt_demo
14
  from app_real_image import create_real_image_demo
15
 
16
+ DESCRIPTION = '# [Plug-and-Play diffusion features](https://github.com/MichalGeyer/plug-and-play)'
 
 
 
17
 
18
  if (SPACE_ID := os.getenv('SPACE_ID')) is not None:
19
+ DESCRIPTION += f'\n<p>For faster inference without waiting in queue, you may duplicate the space and upgrade to GPU in settings. <a href="https://huggingface.co/spaces/{SPACE_ID}?duplicate=true"><img style="display: inline; margin-top: 0em; margin-bottom: 0em" src="https://bit.ly/3gLdBN6" alt="Duplicate Space" /></a></p>'
20
+
21
+ if torch.cuda.is_available():
22
+ DESCRIPTION += '\n<p>Running on GPU 🔥</p>'
23
+ weight_dir = pathlib.Path('plug-and-play/models/ldm/stable-diffusion-v1')
24
+ if not weight_dir.exists():
25
+ subprocess.run(
26
+ shlex.split(
27
+ 'mkdir -p plug-and-play/models/ldm/stable-diffusion-v1/'))
28
+ subprocess.run(
29
+ shlex.split(
30
+ 'wget https://huggingface.co/CompVis/stable-diffusion-v-1-4-original/resolve/main/sd-v1-4.ckpt -O plug-and-play/models/ldm/stable-diffusion-v1/model.ckpt'
31
+ ))
32
+ else:
33
+ DESCRIPTION += '\n<p>Running on CPU 🥶 This demo does not work on CPU.'
34
 
35
  with gr.Blocks(css='style.css') as demo:
36
  gr.Markdown(DESCRIPTION)
 
39
  create_real_image_demo()
40
  with gr.TabItem('Use prompt as input'):
41
  create_prompt_demo()
42
+ demo.queue(api_open=False, max_size=10).launch()
 
app_generated_image.py CHANGED
@@ -2,6 +2,7 @@
2
 
3
  from __future__ import annotations
4
 
 
5
  import pathlib
6
  import shlex
7
  import subprocess
@@ -210,7 +211,7 @@ def create_prompt_demo() -> gr.Blocks:
210
  result,
211
  ],
212
  fn=process_example,
213
- cache_examples=True,
214
  )
215
 
216
  extract_feature_button.click(
 
2
 
3
  from __future__ import annotations
4
 
5
+ import os
6
  import pathlib
7
  import shlex
8
  import subprocess
 
211
  result,
212
  ],
213
  fn=process_example,
214
+ cache_examples=os.getenv('CACHE_EXAMPLES'),
215
  )
216
 
217
  extract_feature_button.click(
app_real_image.py CHANGED
@@ -3,6 +3,7 @@
3
  from __future__ import annotations
4
 
5
  import hashlib
 
6
  import pathlib
7
  import shlex
8
  import subprocess
@@ -193,7 +194,7 @@ def create_real_image_demo():
193
  result,
194
  ],
195
  fn=process_example,
196
- cache_examples=True,
197
  )
198
 
199
  extract_feature_button.click(
 
3
  from __future__ import annotations
4
 
5
  import hashlib
6
+ import os
7
  import pathlib
8
  import shlex
9
  import subprocess
 
194
  result,
195
  ],
196
  fn=process_example,
197
+ cache_examples=os.getenv('CACHE_EXAMPLES'),
198
  )
199
 
200
  extract_feature_button.click(