Barak1 commited on
Commit
4f8debf
·
1 Parent(s): d8f4eaf

keep pipe_inference in device except for the inversion phase

Browse files
Files changed (1) hide show
  1. app.py +9 -7
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)#.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,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
- torch.cuda.empty_cache()
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.to(device), target_prompt, inversion_state['latent'], inversion_state['noise'],
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}")