2025-09-08 16:32:50 +08:00
|
|
|
import torch
|
|
|
|
|
from diffusers import DiffusionPipeline
|
|
|
|
|
from diffusers.utils import export_to_video
|
2025-09-09 13:38:14 +08:00
|
|
|
import time
|
2025-09-08 16:32:50 +08:00
|
|
|
|
|
|
|
|
model_path = "/mnt/models/AI-ModelScope/text-to-video-ms-1.7b"
|
|
|
|
|
pipe = DiffusionPipeline.from_pretrained(
|
2025-09-09 13:38:14 +08:00
|
|
|
model_path, torch_dtype=torch.float32
|
2025-09-08 16:32:50 +08:00
|
|
|
)
|
2025-09-09 13:38:14 +08:00
|
|
|
# pipe.enable_model_cpu_offload() # 省显存
|
|
|
|
|
# pipe.enable_vae_slicing()
|
|
|
|
|
pipe.to("cuda")
|
2025-09-08 16:32:50 +08:00
|
|
|
|
2025-09-09 13:38:14 +08:00
|
|
|
start = time.time()
|
|
|
|
|
print("Start generating")
|
2025-09-08 16:32:50 +08:00
|
|
|
frames = pipe("Spiderman is surfing", num_frames=16).frames[0]
|
2025-09-09 13:38:14 +08:00
|
|
|
end = time.time()
|
|
|
|
|
print(f"elapsed: {end - start}")
|
2025-09-08 16:32:50 +08:00
|
|
|
export_to_video(frames, "output.mp4") # 默认约2秒/8fps
|