Spaces:
Running on Zero
Running on Zero
|
Download README.md from hugging-apps/multics-multiplayer-video: direct link, hf CLI and curl.
- Browser
- Download file 2.9 kB
-
https://huggingface.co/spaces/hugging-apps/multics-multiplayer-video/resolve/main/README.md
- Command line
-
hf download hf://spaces/hugging-apps/multics-multiplayer-video/README.md
-
curl -L -o README.md https://huggingface.co/spaces/hugging-apps/multics-multiplayer-video/resolve/main/README.md
2.9 kB
| title: Multics Multiplayer Video | |
| emoji: 🎮 | |
| colorFrom: gray | |
| colorTo: green | |
| sdk: gradio | |
| sdk_version: 6.30.0 | |
| app_file: app.py | |
| short_description: 4-player interactive video world model | |
| python_version: "3.12" | |
| startup_duration_timeout: 1h | |
| # Multics · Generative Multi-Player Video World Model | |
| Demo Space for **[TencentARC/Multics](https://huggingface.co/TencentARC/Multics)** — a hierarchical | |
| multi-player video world model (Wan2.2-TI2V-5B backbone) that renders one synchronous | |
| 4-player Counter-Strike-style clip from per-player first frames, captions, and real in-game | |
| action/camera tick logs. Project page / code: [github.com/TencentARC/Multics](https://github.com/TencentARC/Multics). | |
| ## What the demo does | |
| - **Bundled scenes** — the authors' five 4-player example scenes ship with the Space | |
| (`examples/4players/4_01` … `4_05`), each containing per-player first frames, the original | |
| 64 Hz tick logs (keyboard/mouse actions + camera poses), and the grouping state. Picking a | |
| scene replays it: the tick logs drive each player's actions and camera, and pose-based | |
| grouping decides which players share a local hub. Non-empty captions override the scene's | |
| own captions. | |
| - **Custom mode** — upload four first frames and per-player captions. There are no tick logs | |
| for custom content, so the demo uses zero actions, identity cameras (static view), and a | |
| fixed 2+2 grouping (players 1+2 and 3+4 share a local hub), which stays well inside the | |
| model's communication budget for 4 players. | |
| - Output is a 165-frame (~8 s at 20 fps) 352×640-per-player 4-up grid video. | |
| ## Heavy job — PRO needed | |
| One generation runs ~1.4k forward passes of the ~5B DiT (50 steps × 14 latent blocks × 2 CFG | |
| passes + context recaches) and takes several minutes of GPU time. It exceeds the free ZeroGPU | |
| daily quota; a PRO account is needed to run it. Reduce *Inference steps* in Advanced options | |
| for faster (lower-quality) runs. | |
| ## Implementation notes / deviations from the reference config | |
| The Space vendors the model's inference package (`multics/`) and follows the authors' | |
| `inference.py` load path (pipeline → `enable_stage2` → `build_dit` → strict checkpoint load). | |
| Two attention settings differ from `configs/inference.yaml` to stay ZeroGPU-compatible: | |
| - `attn_impl: sdpa` instead of `flex` (flex requires `torch.compile`, unsupported on ZeroGPU; | |
| the flex block-mask is bypassed during cached inference anyway). | |
| - `WAN_HIER_INFER_KERNEL: packed_varlen` instead of `paged_kv` (paged_kv needs flashinfer; | |
| packed_varlen implements the same hierarchical packing on the native torch varlen | |
| flash-attention op). | |
| ## Example-content credit | |
| The bundled example frames and tick logs are from the [Multics repository](https://github.com/TencentARC/Multics) | |
| (© Multics authors). The demo content derives from the OpenCS2 dataset. See that repo for | |
| license and attribution details. |