Views
No views yet
1import torch
2from diffusers import ModularPipelineBlocks
3from diffusers.utils import export_to_video, load_image
4from diffusers.modular_pipelines import WanModularPipeline
5
6class MatrixGameWanModularPipeline(WanModularPipeline):
7 """
8 A ModularPipeline for MatrixGameWan.
9
10 <Tip warning={true}>
11
12 This is an experimental feature and is likely to change in the future.
13
14 </Tip>
15 """
16
17 @property
18 def default_sample_height(self):
19 return 44
20
21 @property
22 def default_sample_width(self):
23 return 80
24
25
26blocks = ModularPipelineBlocks.from_pretrained("diffusers/matrix-game-2-modular", trust_remote_code=True)
27image_to_action_block = ModularPipelineBlocks.from_pretrained("dn6/matrix-game-image-to-action", trust_remote_code=True)
28
29blocks.sub_blocks.insert("image_to_action", image_to_action_block, 0)
30
31pipe = MatrixGameWanModularPipeline(blocks, "diffusers-internal-dev/matrix-game-2-modular")
32pipe.load_components(trust_remote_code=True, device_map="cuda", torch_dtype={"default": torch.bfloat16, "vae": torch.float32})
33
34image = load_image("https://images.unsplash.com/photo-1730652201845-095193ddb555?q=80&w=1322&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D")
35prompt = "Turn around and look at what's behind you"
36
37output = pipe(image=image, num_frames=141, prompt=prompt, num_inference_steps=8)
38export_to_video(output.values['videos'][0], "matrix-game-vlm.mp4")