Move all examples/inference and scripts off the legacy
VideoGenerator.from_pretrained(model, **kwargs) +
generate_video(prompt, **kwargs) surface onto the typed
from_config(GeneratorConfig(...)) + generate(GenerationRequest(...))
convention, including the Kandinsky-5 and DreamX-World examples added
on main after the original migration. git-mv api/compat.py to
api/translation.py ('compat' implied a temporary shim; the forward
translation is its honest permanent role) and repoint all importers,
tests, and doc links.
48 lines
1.6 KiB
Python
48 lines
1.6 KiB
Python
import os
|
|
import time
|
|
|
|
from fastvideo import VideoGenerator
|
|
from fastvideo.api import (
|
|
EngineConfig, GenerationRequest, GeneratorConfig, OffloadConfig,
|
|
OutputConfig, SamplingConfig,
|
|
)
|
|
|
|
def main():
|
|
# set the attention backend
|
|
os.environ["FASTVIDEO_ATTENTION_BACKEND"] = "FLASH_ATTN"
|
|
|
|
start_time = time.perf_counter()
|
|
gen = VideoGenerator.from_config(
|
|
GeneratorConfig(
|
|
model_path="Wan-AI/Wan2.1-T2V-1.3B-Diffusers",
|
|
engine=EngineConfig(
|
|
num_gpus=1,
|
|
offload=OffloadConfig(
|
|
dit=False,
|
|
vae=False,
|
|
text_encoder=True,
|
|
pin_cpu_memory=True, # set to false if low CPU RAM or hit obscure "CUDA error: Invalid argument"
|
|
),
|
|
),
|
|
))
|
|
load_time = time.perf_counter() - start_time
|
|
print(f"Model loading time: {load_time:.2f} seconds")
|
|
|
|
gen_start_time = time.perf_counter()
|
|
|
|
gen.generate(
|
|
GenerationRequest(
|
|
prompt=
|
|
"Will Smith casually eats noodles, his relaxed demeanor contrasting with the energetic background of a bustling street food market. The scene captures a mix of humor and authenticity. Mid-shot framing, vibrant lighting.",
|
|
sampling=SamplingConfig(seed=1024),
|
|
output=OutputConfig(output_path="example_outputs/")))
|
|
|
|
generation_time = time.perf_counter() - gen_start_time
|
|
print(f"Video generation time: {generation_time:.2f} seconds")
|
|
|
|
total_time = time.perf_counter() - start_time
|
|
print(f"Total execution time: {total_time:.2f} seconds")
|
|
|
|
if __name__ == "__main__":
|
|
main()
|