jbilcke-hf HF Staff commited on
Commit
d67e4c8
·
1 Parent(s): bc207eb

let's have some fun

Browse files
Files changed (1) hide show
  1. app.py +13 -1
app.py CHANGED
@@ -185,10 +185,13 @@ logger.info("All required model files are ready")
185
 
186
  args = create_args()
187
  logger.info(f"Created args, val_disable_autocast: {hasattr(args, 'val_disable_autocast')} = {getattr(args, 'val_disable_autocast', 'NOT SET')}")
 
 
 
188
  hunyuan_video_sampler = HunyuanVideoSampler.from_pretrained(
189
  args.ckpt,
190
  args=args,
191
- device=torch.device("cpu")
192
  )
193
  logger.info(f"After from_pretrained, sampler.args has val_disable_autocast: {hasattr(hunyuan_video_sampler.args, 'val_disable_autocast')} = {getattr(hunyuan_video_sampler.args, 'val_disable_autocast', 'NOT SET')}")
194
  args = hunyuan_video_sampler.args
@@ -204,6 +207,15 @@ if args.cpu_offload:
204
  num_blocks_per_group=1
205
  )
206
  logger.info("Enabled CPU offloading for transformer blocks")
 
 
 
 
 
 
 
 
 
207
 
208
  logger.info("Model loaded successfully!")
209
 
 
185
 
186
  args = create_args()
187
  logger.info(f"Created args, val_disable_autocast: {hasattr(args, 'val_disable_autocast')} = {getattr(args, 'val_disable_autocast', 'NOT SET')}")
188
+ # Load model to CPU if offloading is enabled, otherwise load to GPU
189
+ model_device = torch.device("cpu") if args.cpu_offload else torch.device("cuda")
190
+ logger.info(f"Loading model to device: {model_device}")
191
  hunyuan_video_sampler = HunyuanVideoSampler.from_pretrained(
192
  args.ckpt,
193
  args=args,
194
+ device=model_device
195
  )
196
  logger.info(f"After from_pretrained, sampler.args has val_disable_autocast: {hasattr(hunyuan_video_sampler.args, 'val_disable_autocast')} = {getattr(hunyuan_video_sampler.args, 'val_disable_autocast', 'NOT SET')}")
197
  args = hunyuan_video_sampler.args
 
207
  num_blocks_per_group=1
208
  )
209
  logger.info("Enabled CPU offloading for transformer blocks")
210
+ else:
211
+ # Ensure all model components are on GPU when not using CPU offload
212
+ hunyuan_video_sampler.pipeline.transformer.to('cuda')
213
+ hunyuan_video_sampler.vae.to('cuda')
214
+ if hunyuan_video_sampler.text_encoder:
215
+ hunyuan_video_sampler.text_encoder.model.to('cuda')
216
+ if hunyuan_video_sampler.text_encoder_2:
217
+ hunyuan_video_sampler.text_encoder_2.model.to('cuda')
218
+ logger.info("Model components moved to GPU")
219
 
220
  logger.info("Model loaded successfully!")
221