import gradio as gr import torch import spaces def log_event(message: str): print(f"[DVD Smoke] {message}", flush=True) @spaces.GPU(duration=30) def zero_gpu_smoke_test(): log_event("zero_gpu_smoke_test start") if not torch.cuda.is_available(): log_event("cuda unavailable") return "CUDA unavailable" value = torch.ones((1,), device="cuda").sum().item() name = torch.cuda.get_device_name(0) log_event(f"zero_gpu_smoke_test done device={name} value={value}") return f"OK: {name}, value={value}" with gr.Blocks(title="ZeroGPU Smoke Test") as demo: out = gr.Textbox(label="Status") btn = gr.Button("ZeroGPU Smoke Test") btn.click(zero_gpu_smoke_test, outputs=out) if __name__ == "__main__": demo.queue().launch(show_api=False, show_error=True, ssr_mode=False)