multimodalart HF Staff commited on
Commit
8249703
·
verified ·
1 Parent(s): 200071f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +7 -3
app.py CHANGED
@@ -1,5 +1,5 @@
1
  import torch
2
- from diffusers import AutoencoderKLWan, WanPipeline
3
  from diffusers.utils import export_to_video
4
  from diffusers.loaders.lora_conversion_utils import _convert_non_diffusers_lora_to_diffusers # Keep this if it's the base
5
  import gradio as gr
@@ -307,6 +307,10 @@ pipe = WanPipeline.from_pretrained(
307
  vae=vae,
308
  torch_dtype=torch.bfloat16 # bfloat16 for pipeline
309
  )
 
 
 
 
310
  logger.info("Moving pipeline to CUDA...")
311
  pipe.to("cuda")
312
 
@@ -342,7 +346,7 @@ logger.info("Manual diff_b/diff patches applied.")
342
 
343
  # --- Gradio Interface Function ---
344
  @spaces.GPU
345
- def generate_video(prompt, negative_prompt, height, width, num_frames, guidance_scale, steps, fps):
346
  logger.info("Starting video generation...")
347
  logger.info(f" Prompt: {prompt}")
348
  logger.info(f" Negative Prompt: {negative_prompt if negative_prompt else 'None'}")
@@ -397,7 +401,7 @@ with gr.Blocks() as demo:
397
  height_input = gr.Slider(minimum=256, maximum=768, step=64, value=480, label="Height (multiple of 8)")
398
  width_input = gr.Slider(minimum=256, maximum=1024, step=64, value=832, label="Width (multiple of 8)")
399
  with gr.Row():
400
- num_frames_input = gr.Slider(minimum=16, maximum=100, step=1, value=25, label="Number of Frames") # Reduced default for faster demo
401
  fps_input = gr.Slider(minimum=5, maximum=30, step=1, value=15, label="Output FPS")
402
  steps = gr.Slider(minimum=1.0, maximum=30.0, value=4.0, label="Steps")
403
  guidance_scale_input = gr.Slider(minimum=1.0, maximum=20.0, step=0.5, value=5.0, label="Guidance Scale")
 
1
  import torch
2
+ from diffusers import AutoencoderKLWan, WanPipeline, UniPCMultistepScheduler
3
  from diffusers.utils import export_to_video
4
  from diffusers.loaders.lora_conversion_utils import _convert_non_diffusers_lora_to_diffusers # Keep this if it's the base
5
  import gradio as gr
 
307
  vae=vae,
308
  torch_dtype=torch.bfloat16 # bfloat16 for pipeline
309
  )
310
+ flow_shift = 8.0 # 5.0 for 720P, 3.0 for 480P
311
+ pipe.scheduler = UniPCMultistepScheduler.from_config(
312
+ pipe.scheduler.config, flow_shift=flow_shift
313
+ )
314
  logger.info("Moving pipeline to CUDA...")
315
  pipe.to("cuda")
316
 
 
346
 
347
  # --- Gradio Interface Function ---
348
  @spaces.GPU
349
+ def generate_video(prompt, negative_prompt, height, width, num_frames, guidance_scale, steps, fps, progress=gr.Progress(track_tqdm=True)):
350
  logger.info("Starting video generation...")
351
  logger.info(f" Prompt: {prompt}")
352
  logger.info(f" Negative Prompt: {negative_prompt if negative_prompt else 'None'}")
 
401
  height_input = gr.Slider(minimum=256, maximum=768, step=64, value=480, label="Height (multiple of 8)")
402
  width_input = gr.Slider(minimum=256, maximum=1024, step=64, value=832, label="Width (multiple of 8)")
403
  with gr.Row():
404
+ num_frames_input = gr.Slider(minimum=16, maximum=100, step=1, value=25, label="Number of Frames")
405
  fps_input = gr.Slider(minimum=5, maximum=30, step=1, value=15, label="Output FPS")
406
  steps = gr.Slider(minimum=1.0, maximum=30.0, value=4.0, label="Steps")
407
  guidance_scale_input = gr.Slider(minimum=1.0, maximum=20.0, step=0.5, value=5.0, label="Guidance Scale")