Spaces:
Runtime error
Runtime error
keep pipe_inference in device except for the inversion phase
Browse files
app.py
CHANGED
@@ -37,7 +37,7 @@ scheduler_class = MyEulerAncestralDiscreteScheduler
|
|
37 |
|
38 |
pipe_inversion = SDXLDDIMPipeline.from_pretrained("stabilityai/sdxl-turbo", use_safetensors=True)#.to(device)
|
39 |
pipe_inference = AutoPipelineForImage2Image.from_pretrained("stabilityai/sdxl-turbo",
|
40 |
-
use_safetensors=True)
|
41 |
pipe_inference.scheduler = scheduler_class.from_config(pipe_inference.scheduler.config)
|
42 |
pipe_inversion.scheduler = scheduler_class.from_config(pipe_inversion.scheduler.config)
|
43 |
pipe_inversion.scheduler_inference = scheduler_class.from_config(pipe_inference.scheduler.config)
|
@@ -109,6 +109,7 @@ with gr.Blocks(css="style.css") as demo:
|
|
109 |
edit_guidance_scale=edit_guidance_scale,
|
110 |
inversion_max_step=inversion_max_step)
|
111 |
if device == 'cuda':
|
|
|
112 |
torch.cuda.empty_cache()
|
113 |
# pipe_inversion = pipe_inversion.to(device)
|
114 |
# if image_editor is not None:
|
@@ -122,6 +123,7 @@ with gr.Blocks(css="style.css") as demo:
|
|
122 |
if device == 'cuda':
|
123 |
pipe_inversion.to('cpu')
|
124 |
torch.cuda.empty_cache()
|
|
|
125 |
# pipe_inversion = pipe_inversion.to('cpu')
|
126 |
print(f"#### 3 #### pipe_inversion.device: {pipe_inversion.device}")
|
127 |
print(f"#### 4 #### pipe_inference.device: {pipe_inference.device}")
|
@@ -149,18 +151,18 @@ with gr.Blocks(css="style.css") as demo:
|
|
149 |
# image = editor.to(device).edit(target_prompt)
|
150 |
# else:
|
151 |
|
152 |
-
if device == 'cuda':
|
153 |
-
|
154 |
|
155 |
print(f"#### 5 #### pipe_inversion.device: {pipe_inversion.device}")
|
156 |
print(f"#### 6 #### pipe_inference.device: {pipe_inference.device}")
|
157 |
|
158 |
-
image = ImageEditorDemo.edit(pipe_inference
|
159 |
inversion_state['cfg'], inversion_state['cfg'].edit_guidance_scale)
|
160 |
|
161 |
-
if device == 'cuda':
|
162 |
-
pipe_inference.to('cpu')
|
163 |
-
torch.cuda.empty_cache()
|
164 |
|
165 |
|
166 |
print(f"#### 7 #### pipe_inversion.device: {pipe_inversion.device}")
|
|
|
37 |
|
38 |
pipe_inversion = SDXLDDIMPipeline.from_pretrained("stabilityai/sdxl-turbo", use_safetensors=True)#.to(device)
|
39 |
pipe_inference = AutoPipelineForImage2Image.from_pretrained("stabilityai/sdxl-turbo",
|
40 |
+
use_safetensors=True).to(device)
|
41 |
pipe_inference.scheduler = scheduler_class.from_config(pipe_inference.scheduler.config)
|
42 |
pipe_inversion.scheduler = scheduler_class.from_config(pipe_inversion.scheduler.config)
|
43 |
pipe_inversion.scheduler_inference = scheduler_class.from_config(pipe_inference.scheduler.config)
|
|
|
109 |
edit_guidance_scale=edit_guidance_scale,
|
110 |
inversion_max_step=inversion_max_step)
|
111 |
if device == 'cuda':
|
112 |
+
pipe_inference.to('cpu')
|
113 |
torch.cuda.empty_cache()
|
114 |
# pipe_inversion = pipe_inversion.to(device)
|
115 |
# if image_editor is not None:
|
|
|
123 |
if device == 'cuda':
|
124 |
pipe_inversion.to('cpu')
|
125 |
torch.cuda.empty_cache()
|
126 |
+
pipe_inference.to(device)
|
127 |
# pipe_inversion = pipe_inversion.to('cpu')
|
128 |
print(f"#### 3 #### pipe_inversion.device: {pipe_inversion.device}")
|
129 |
print(f"#### 4 #### pipe_inference.device: {pipe_inference.device}")
|
|
|
151 |
# image = editor.to(device).edit(target_prompt)
|
152 |
# else:
|
153 |
|
154 |
+
# if device == 'cuda':
|
155 |
+
# torch.cuda.empty_cache()
|
156 |
|
157 |
print(f"#### 5 #### pipe_inversion.device: {pipe_inversion.device}")
|
158 |
print(f"#### 6 #### pipe_inference.device: {pipe_inference.device}")
|
159 |
|
160 |
+
image = ImageEditorDemo.edit(pipe_inference, target_prompt, inversion_state['latent'], inversion_state['noise'],
|
161 |
inversion_state['cfg'], inversion_state['cfg'].edit_guidance_scale)
|
162 |
|
163 |
+
# if device == 'cuda':
|
164 |
+
# pipe_inference.to('cpu')
|
165 |
+
# torch.cuda.empty_cache()
|
166 |
|
167 |
|
168 |
print(f"#### 7 #### pipe_inversion.device: {pipe_inversion.device}")
|