1inkusFace commited on
Commit
67b4462
·
verified ·
1 Parent(s): 38056ac

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +18 -13
app.py CHANGED
@@ -13,7 +13,7 @@ from diffusers.utils import load_image
13
  from PIL import Image
14
 
15
  import torch
16
-
17
  torch.backends.cuda.matmul.allow_tf32 = False
18
  torch.backends.cuda.matmul.allow_bf16_reduced_precision_reduction = False
19
  torch.backends.cuda.matmul.allow_fp16_reduced_precision_reduction = False
@@ -23,7 +23,7 @@ torch.backends.cudnn.benchmark = False
23
  torch.backends.cuda.preferred_blas_library="cublas"
24
  torch.backends.cuda.preferred_linalg_library="cusolver"
25
  torch.set_float32_matmul_precision("highest")
26
-
27
  os.putenv("HF_HUB_ENABLE_HF_TRANSFER","1")
28
  os.environ["SAFETENSORS_FAST_GPU"] = "1"
29
  os.putenv("TOKENIZERS_PARALLELISM","False")
@@ -42,12 +42,11 @@ def init_predictor():
42
  )
43
  )
44
 
45
- @spaces.GPU(duration=120)
46
- def generate_video(prompt, seed, image, size, steps, frames, progress=gr.Progress(track_tqdm=True) ):
47
  print(f"image:{type(image)}")
48
- if seed == -1:
49
- random.seed(time.time())
50
- seed = int(random.randrange(4294967294))
51
  kwargs = {
52
  "prompt": prompt,
53
  "height": size,
@@ -55,7 +54,7 @@ def generate_video(prompt, seed, image, size, steps, frames, progress=gr.Progres
55
  "num_frames": frames,
56
  "num_inference_steps": steps,
57
  "seed": seed,
58
- "guidance_scale": 6.0,
59
  "embedded_guidance_scale": 1.0,
60
  "negative_prompt": "Aerial view, aerial view, overexposed, low quality, deformation, a poor composition, bad hands, bad teeth, bad eyes, bad limbs, distortion",
61
  "cfg_for": False,
@@ -76,20 +75,19 @@ def create_gradio_interface():
76
  with gr.Row():
77
  image = gr.Image(label="Upload Image", type="filepath")
78
  prompt = gr.Textbox(label="Input Prompt")
79
- seed = gr.Number(label="Random Seed", value=-1)
80
  size = gr.Slider(
81
  label="Size",
82
  minimum=256,
83
  maximum=1024,
84
  step=16,
85
- value=448,
86
  )
87
  frames = gr.Slider(
88
  label="Number of Frames",
89
  minimum=16,
90
  maximum=256,
91
- step=8,
92
- value=64,
93
  )
94
  steps = gr.Slider(
95
  label="Number of Steps",
@@ -98,11 +96,18 @@ def create_gradio_interface():
98
  step=1,
99
  value=20,
100
  )
 
 
 
 
 
 
 
101
  submit_button = gr.Button("Generate Video")
102
  output_video = gr.Video(label="Generated Video")
103
  submit_button.click(
104
  fn=generate_video,
105
- inputs=[prompt, seed, image, size, steps, frames],
106
  outputs=[output_video],
107
  )
108
  return demo
 
13
  from PIL import Image
14
 
15
  import torch
16
+ '''
17
  torch.backends.cuda.matmul.allow_tf32 = False
18
  torch.backends.cuda.matmul.allow_bf16_reduced_precision_reduction = False
19
  torch.backends.cuda.matmul.allow_fp16_reduced_precision_reduction = False
 
23
  torch.backends.cuda.preferred_blas_library="cublas"
24
  torch.backends.cuda.preferred_linalg_library="cusolver"
25
  torch.set_float32_matmul_precision("highest")
26
+ '''
27
  os.putenv("HF_HUB_ENABLE_HF_TRANSFER","1")
28
  os.environ["SAFETENSORS_FAST_GPU"] = "1"
29
  os.putenv("TOKENIZERS_PARALLELISM","False")
 
42
  )
43
  )
44
 
45
+ @spaces.GPU(duration=100)
46
+ def generate_video(prompt, image, size, steps, frames, guidance_scale, progress=gr.Progress(track_tqdm=True) ):
47
  print(f"image:{type(image)}")
48
+ random.seed(time.time())
49
+ seed = int(random.randrange(4294967294))
 
50
  kwargs = {
51
  "prompt": prompt,
52
  "height": size,
 
54
  "num_frames": frames,
55
  "num_inference_steps": steps,
56
  "seed": seed,
57
+ "guidance_scale": guidance_scale,
58
  "embedded_guidance_scale": 1.0,
59
  "negative_prompt": "Aerial view, aerial view, overexposed, low quality, deformation, a poor composition, bad hands, bad teeth, bad eyes, bad limbs, distortion",
60
  "cfg_for": False,
 
75
  with gr.Row():
76
  image = gr.Image(label="Upload Image", type="filepath")
77
  prompt = gr.Textbox(label="Input Prompt")
 
78
  size = gr.Slider(
79
  label="Size",
80
  minimum=256,
81
  maximum=1024,
82
  step=16,
83
+ value=368,
84
  )
85
  frames = gr.Slider(
86
  label="Number of Frames",
87
  minimum=16,
88
  maximum=256,
89
+ step=12,
90
+ value=48,
91
  )
92
  steps = gr.Slider(
93
  label="Number of Steps",
 
96
  step=1,
97
  value=20,
98
  )
99
+ guidance_scale = gr.Slider(
100
+ label="Guidance Scale",
101
+ minimum=1.0,
102
+ maximum=16.0,
103
+ step=.1,
104
+ value=6.0,
105
+ )
106
  submit_button = gr.Button("Generate Video")
107
  output_video = gr.Video(label="Generated Video")
108
  submit_button.click(
109
  fn=generate_video,
110
+ inputs=[prompt, image, size, steps, frames, guidance_scale],
111
  outputs=[output_video],
112
  )
113
  return demo