Spaces:
Running
on
Zero
Running
on
Zero
feat: time out check
Browse files
app.py
CHANGED
|
@@ -618,11 +618,11 @@ def run_graio_demo(args):
|
|
| 618 |
# 参考: https://huggingface.co/spaces/KlingTeam/LivePortrait/blob/main/app.py
|
| 619 |
# @spaces.GPU 装饰器会自动处理 GPU 初始化,不需要手动初始化
|
| 620 |
|
| 621 |
-
# 快速生成模式:
|
| 622 |
-
@spaces.GPU(duration=
|
| 623 |
def gpu_wrapped_generate_video_fast(*args, **kwargs):
|
| 624 |
# 固定使用10步去噪,通过关键字参数传递
|
| 625 |
-
kwargs['fixed_steps'] =
|
| 626 |
|
| 627 |
# Fast模式音频长度检测:检查是否超过6秒
|
| 628 |
# 参数顺序: img2vid_image, img2vid_prompt, n_prompt, img2vid_audio_1, img2vid_audio_2, img2vid_audio_3,
|
|
@@ -837,7 +837,7 @@ def run_graio_demo(args):
|
|
| 837 |
|
| 838 |
with gr.Row():
|
| 839 |
run_i2v_button_fast = gr.Button(
|
| 840 |
-
"Generate Video (Fast -
|
| 841 |
variant="secondary",
|
| 842 |
scale=1
|
| 843 |
)
|
|
@@ -848,10 +848,10 @@ def run_graio_demo(args):
|
|
| 848 |
)
|
| 849 |
gr.Markdown("""
|
| 850 |
**Generation Modes:**
|
| 851 |
-
- **Fast Mode (up to
|
| 852 |
- **Quality Mode (up to 780s GPU budget)**: Custom denoising steps (adjustable via "Diffusion steps" slider, default: 25 steps). **⚠️ Maximum video duration: 8 seconds with default 25 denoising steps.**
|
| 853 |
|
| 854 |
-
*Note: The GPU duration (
|
| 855 |
""")
|
| 856 |
|
| 857 |
with gr.Column(scale=2):
|
|
@@ -936,7 +936,7 @@ def run_graio_demo(args):
|
|
| 936 |
result = gpu_wrapped_generate_video_quality(*args)
|
| 937 |
return result
|
| 938 |
|
| 939 |
-
# 快速生成按钮:
|
| 940 |
run_i2v_button_fast.click(
|
| 941 |
fn=handle_fast_generation,
|
| 942 |
inputs=[img2vid_image, img2vid_prompt, n_prompt, img2vid_audio_1, img2vid_audio_2, img2vid_audio_3, sd_steps, seed, guide_scale, person_num_selector, audio_mode_selector],
|
|
|
|
| 618 |
# 参考: https://huggingface.co/spaces/KlingTeam/LivePortrait/blob/main/app.py
|
| 619 |
# @spaces.GPU 装饰器会自动处理 GPU 初始化,不需要手动初始化
|
| 620 |
|
| 621 |
+
# 快速生成模式:180秒,固定10步去噪
|
| 622 |
+
@spaces.GPU(duration=180)
|
| 623 |
def gpu_wrapped_generate_video_fast(*args, **kwargs):
|
| 624 |
# 固定使用10步去噪,通过关键字参数传递
|
| 625 |
+
kwargs['fixed_steps'] = 8
|
| 626 |
|
| 627 |
# Fast模式音频长度检测:检查是否超过6秒
|
| 628 |
# 参数顺序: img2vid_image, img2vid_prompt, n_prompt, img2vid_audio_1, img2vid_audio_2, img2vid_audio_3,
|
|
|
|
| 837 |
|
| 838 |
with gr.Row():
|
| 839 |
run_i2v_button_fast = gr.Button(
|
| 840 |
+
"Generate Video (Fast - 180s, 8 steps)",
|
| 841 |
variant="secondary",
|
| 842 |
scale=1
|
| 843 |
)
|
|
|
|
| 848 |
)
|
| 849 |
gr.Markdown("""
|
| 850 |
**Generation Modes:**
|
| 851 |
+
- **Fast Mode (up to 180s GPU budget)**: Fixed 8 denoising steps for quick generation. **⚠️ Maximum video duration: 6 seconds. Videos longer than 6 seconds will timeout.**
|
| 852 |
- **Quality Mode (up to 780s GPU budget)**: Custom denoising steps (adjustable via "Diffusion steps" slider, default: 25 steps). **⚠️ Maximum video duration: 8 seconds with default 25 denoising steps.**
|
| 853 |
|
| 854 |
+
*Note: The GPU duration (180s/780s) represents the maximum budget allocated, not the actual generation time. Multi-person videos generally require longer duration and more Usage Quota for better quality.*
|
| 855 |
""")
|
| 856 |
|
| 857 |
with gr.Column(scale=2):
|
|
|
|
| 936 |
result = gpu_wrapped_generate_video_quality(*args)
|
| 937 |
return result
|
| 938 |
|
| 939 |
+
# 快速生成按钮:180秒,固定10步
|
| 940 |
run_i2v_button_fast.click(
|
| 941 |
fn=handle_fast_generation,
|
| 942 |
inputs=[img2vid_image, img2vid_prompt, n_prompt, img2vid_audio_1, img2vid_audio_2, img2vid_audio_3, sd_steps, seed, guide_scale, person_num_selector, audio_mode_selector],
|