Spaces:
Running
on
A10G
Running
on
A10G
Linoy Tsaban
commited on
Commit
·
39f64fe
1
Parent(s):
f1baf70
Update app.py
Browse files
app.py
CHANGED
|
@@ -33,10 +33,10 @@ def invert(x0, prompt_src="", num_diffusion_steps=100, cfg_scale_src = 3.5, eta
|
|
| 33 |
|
| 34 |
|
| 35 |
|
| 36 |
-
def sample(zs,
|
| 37 |
|
| 38 |
# reverse process (via Zs and wT)
|
| 39 |
-
w0, _ = inversion_reverse_process(sd_pipe, xT=
|
| 40 |
|
| 41 |
# vae decode image
|
| 42 |
with autocast("cuda"), inference_mode():
|
|
@@ -96,7 +96,7 @@ For faster inference without waiting in queue, you may duplicate the space and u
|
|
| 96 |
with gr.Blocks(css='style.css') as demo:
|
| 97 |
|
| 98 |
def reset_latents():
|
| 99 |
-
|
| 100 |
zs = gr.State(value=False)
|
| 101 |
|
| 102 |
|
|
@@ -121,15 +121,19 @@ with gr.Blocks(css='style.css') as demo:
|
|
| 121 |
if not xt:
|
| 122 |
# invert and retrieve noise maps and latent
|
| 123 |
zs, wts = invert(x0 =x0 , prompt_src=src_prompt, num_diffusion_steps=steps, cfg_scale_src=cfg_scale_src)
|
| 124 |
-
xt = gr.State(value=wts[skip])
|
| 125 |
-
zs = gr.State(value=zs[skip:])
|
|
|
|
|
|
|
| 126 |
|
| 127 |
-
output = sample(zs.value, xt.value, prompt_tar=tar_prompt, cfg_scale_tar=cfg_scale_tar)
|
|
|
|
| 128 |
|
| 129 |
-
return output,
|
| 130 |
|
| 131 |
gr.HTML(intro)
|
| 132 |
-
xt = gr.State(value=False)
|
|
|
|
| 133 |
zs = gr.State(value=False)
|
| 134 |
with gr.Row():
|
| 135 |
input_image = gr.Image(label="Input Image", interactive=True)
|
|
@@ -164,7 +168,7 @@ with gr.Blocks(css='style.css') as demo:
|
|
| 164 |
edit_button.click(
|
| 165 |
fn=edit,
|
| 166 |
inputs=[input_image,
|
| 167 |
-
|
| 168 |
src_prompt,
|
| 169 |
tar_prompt,
|
| 170 |
steps,
|
|
@@ -174,7 +178,7 @@ with gr.Blocks(css='style.css') as demo:
|
|
| 174 |
seed,
|
| 175 |
randomize_seed
|
| 176 |
],
|
| 177 |
-
outputs=[output_image,
|
| 178 |
)
|
| 179 |
|
| 180 |
input_image.change(
|
|
@@ -185,9 +189,9 @@ with gr.Blocks(css='style.css') as demo:
|
|
| 185 |
fn = reset_latents
|
| 186 |
)
|
| 187 |
|
| 188 |
-
skip.change(
|
| 189 |
-
|
| 190 |
-
)
|
| 191 |
|
| 192 |
|
| 193 |
gr.Examples(
|
|
|
|
| 33 |
|
| 34 |
|
| 35 |
|
| 36 |
+
def sample(zs, wts, prompt_tar="", cfg_scale_tar=15, eta = 1):
|
| 37 |
|
| 38 |
# reverse process (via Zs and wT)
|
| 39 |
+
w0, _ = inversion_reverse_process(sd_pipe, xT=wts[skip], etas=eta, prompts=[prompt_tar], cfg_scales=[cfg_scale_tar], prog_bar=False, zs=zs[skip:])
|
| 40 |
|
| 41 |
# vae decode image
|
| 42 |
with autocast("cuda"), inference_mode():
|
|
|
|
| 96 |
with gr.Blocks(css='style.css') as demo:
|
| 97 |
|
| 98 |
def reset_latents():
|
| 99 |
+
wts = gr.State(value=False)
|
| 100 |
zs = gr.State(value=False)
|
| 101 |
|
| 102 |
|
|
|
|
| 121 |
if not xt:
|
| 122 |
# invert and retrieve noise maps and latent
|
| 123 |
zs, wts = invert(x0 =x0 , prompt_src=src_prompt, num_diffusion_steps=steps, cfg_scale_src=cfg_scale_src)
|
| 124 |
+
# xt = gr.State(value=wts[skip])
|
| 125 |
+
# zs = gr.State(value=zs[skip:])
|
| 126 |
+
wts = gr.State(value=wts)
|
| 127 |
+
zs = gr.State(value=zs)
|
| 128 |
|
| 129 |
+
# output = sample(zs.value, xt.value, prompt_tar=tar_prompt, cfg_scale_tar=cfg_scale_tar)
|
| 130 |
+
output = sample(zs.value, wts.value, prompt_tar=tar_prompt, cfg_scale_tar=cfg_scale_tar)
|
| 131 |
|
| 132 |
+
return output, wts, zs
|
| 133 |
|
| 134 |
gr.HTML(intro)
|
| 135 |
+
# xt = gr.State(value=False)
|
| 136 |
+
wts = gr.State(value=False)
|
| 137 |
zs = gr.State(value=False)
|
| 138 |
with gr.Row():
|
| 139 |
input_image = gr.Image(label="Input Image", interactive=True)
|
|
|
|
| 168 |
edit_button.click(
|
| 169 |
fn=edit,
|
| 170 |
inputs=[input_image,
|
| 171 |
+
wts, zs,
|
| 172 |
src_prompt,
|
| 173 |
tar_prompt,
|
| 174 |
steps,
|
|
|
|
| 178 |
seed,
|
| 179 |
randomize_seed
|
| 180 |
],
|
| 181 |
+
outputs=[output_image, wts, zs],
|
| 182 |
)
|
| 183 |
|
| 184 |
input_image.change(
|
|
|
|
| 189 |
fn = reset_latents
|
| 190 |
)
|
| 191 |
|
| 192 |
+
# skip.change(
|
| 193 |
+
# fn = reset_latents
|
| 194 |
+
# )
|
| 195 |
|
| 196 |
|
| 197 |
gr.Examples(
|