Spaces:
Running
Running
| # app.py | |
| import os, sys | |
| import gradio as gr | |
| import torch | |
| os.environ.setdefault("HF_HUB_ENABLE_HF_TRANSFER", "1") | |
| MODEL_REPO = "vibevoice/VibeVoice-1.5B" | |
| demo_app = None | |
| model_ready = False | |
| def load_real_demo(): | |
| global demo_app, model_ready | |
| if not model_ready: | |
| from demo import gradio_demo | |
| # 假设 gradio_demo.py 里有 main(return_app=True) 可以返回一个 Blocks | |
| demo_app = gradio_demo.main(model_path=MODEL_REPO, return_app=True) | |
| model_ready = True | |
| return demo_app | |
| def launch_wrapper(): | |
| load_real_demo() | |
| return demo_app | |
| with gr.Blocks() as app: | |
| gr.Markdown("## 🎙️ VibeVoice Demo (lazy-load)") | |
| btn = gr.Button("🚀 Load full demo") | |
| out = gr.HTML() | |
| btn.click(fn=lambda: "<b>Reload page to see full demo</b>", outputs=out) | |
| if __name__ == "__main__": | |
| app.queue().launch(server_name="0.0.0.0", server_port=7860) | |