AI world model on your own box means more than a one-minute clip: persistent 3D Gaussian / mesh assets you open in a viewer or engine. Tencent’s HY-World 2.0 is that stack – WorldMirror 2.0 open-sourced April 16, 2026, world-gen code May 18, 2026, product line tagged 2.1 as of July 2026, per the official GitHub news track. Tencent-Hunyuan/HY-World-2.0
Deploy path only. System floors, copy-paste install for the documented tree, Gradio verify, the errors people hit, then upgrade and cleanup. Skip the Dreamer history lecture. Later: 3DGS pipelines and multi-view recon tooling.
What you’re installing (and what you’re not)
Text, single image, multi-view, or video in → 3D worlds out. The HY-World 2.0 report (arXiv:2604.14268) wires that through panorama (HY-Pano 2.0), trajectory planning (WorldNav), expansion (WorldStereo 2.0), and composition (WorldMirror 2.0 + 3DGS). Day-one local win is WorldMirror 2.0: one forward pass → depth, normals, cameras, points, 3DGS attributes.
Weights live on Hugging Face tencent/HY-World-2.0. Cloud try-out: 3d.hunyuan.tencent.com/sceneTo3D.
Pro tip: Reconstruction first. Full world generation piles on git submodules, a navmesh build, a VLM server for trajectories, and multi-billion-parameter siblings. Gradio reconstruct green = CUDA / torch / gsplat already proven.
System requirements for this AI world model
| Resource | Minimum (WorldMirror recon) | Recommended |
|---|---|---|
| OS | Linux (Ubuntu-class) or Windows + Build Tools | Linux + CUDA toolkit matching torch |
| GPU | NVIDIA Turing+ ; small scenes often need a mid-range card | 24 GB+ (4090/A100 class) for longer video / more views |
| CUDA | 12.8 runtime/toolkit aligned with torch | 12.8 exactly as docs state (as of the pinned README stack) |
| Python | 3.10-3.11 | 3.11.15 (official conda pin) |
| RAM / disk | ~16-32 GB RAM; ≥20-80 GB free | 64 GB+ RAM; 200 GB+ if you pull Pano/Stereo weights |
| Weights | HY-WorldMirror-2.0 folder ~5.05 GB on HF | Budget far more for HY-Pano-2 (~80B params) and WorldStereo-2 (~17B) |
As of community writeups collected beside the Model Zoo numbers: WorldMirror recon often fits roughly 6-16 GB VRAM on small scenes, with 12-24 GB feeling less fragile; 32-frame batches on 16 GB still OOM a lot. Full gen is another machine class – WorldMirror is ~1.2B; the stereo/pano siblings jump an order of magnitude. Clore’s Hunyuan World 2 notes track the same split.
Read the Tencent HY-WORLD 2.0 Community License before the download finishes. It does not apply in the EU, UK, or South Korea. That’s not fine print after a successful splat – it’s a territory wall at the door. Weird place for a 3D pipeline to stop you, and it still does.
Download and staged install (HY-World 2.0)
Clone the official tree. There is no separate “v2.1 open-source tarball”; 2.1 is the product track. Public code stays in this repo.
git clone https://github.com/Tencent-Hunyuan/HY-World-2.0
cd HY-World-2.0
conda create -n hyworld2 python=3.11.15
conda activate hyworld2
pip install -r requirements.txt
requirements.txt pins torch==2.7.1 and torchvision==0.22.1. Driver/toolkit skew? Fix CUDA 12.8 alignment first – don’t shotgun random torch wheels.
gsplat: fork vs official
# Preferred once for recon + worldgen (custom MaskGaussian fork)
cd hyworld2/worldgen/third_party/gsplat_maskgaussian
pip install -e . --no-build-isolation
cd ../../../../
# Recon-only fallback
# pip install git+https://github.com/nerfstudio-project/gsplat.git
One path. Mix wheels and you get the silent break that wastes an afternoon – imports succeed, training/recon paths disagree later.
FlashAttention (install exactly one path)
# Hopper: FlashAttention-3 from source
git clone https://github.com/Dao-AILab/flash-attention.git
cd flash-attention/hopper
python setup.py install
cd ../../
rm -rf flash-attention
# Simpler FA2 (most consumer boxes)
pip install flash-attn --no-build-isolation
Hopper FA3 on Windows / non-Hopper GPUs fails constantly. FA2 is the boring path that works. Or patch attention imports to PyTorch SDPA – WorldMirror still runs, just slower. Don’t leave half-built hopper trees on PATH.
Optional: world generation extras
pip install --no-build-isolation -r requirements_git.txt
git submodule update --init --recursive
cd hyworld2/worldgen/third_party/navmesh
pip install . --no-build-isolation
cd ../../../../
HY-Pano sits under hyworld2/panogen/ with its own README (separate conda pin in places). Trajectory stages want a live VLM (vLLM + Qwen-VL class) and multi-GPU for sane throughput. Don’t block first verify on that.
First-time configuration and verify
Smallest path that proves the stack: HF login if gated/rate-limited, then Gradio.
huggingface-cli login
# or: export HF_TOKEN=...
python -m hyworld2.worldrecon.gradio_app
Open whatever URL the process prints – community boxes often land on http://127.0.0.1:8081. A few multi-view images or a short examples/ clip → reconstruct → depth / normals / points / 3DGS preview. First run pulls WorldMirror into the HF cache (~5.05 GB folder on the Hub tree).
from hyworld2.worldrecon.pipeline import WorldMirrorPipeline
pipeline = WorldMirrorPipeline.from_pretrained(
"tencent/HY-World-2.0",
# subfolder defaults to HY-WorldMirror-2.0 per docs
)
result = pipeline("path/to/images")
CLI single GPU:
python -m hyworld2.worldrecon.pipeline --input_path path/to/images
Multi-GPU only when view count keeps up:
torchrun --nproc_per_node=2 -m hyworld2.worldrecon.pipeline
--input_path path/to/images --use_fsdp --enable_bf16
The catch: under FSDP / torchrun, input image count must be ≥ nproc_per_node. Eight ranks with four photos won’t “just shard” – README states the precondition outright. Add views or drop ranks.
There’s a quiet satisfaction the first time the browser shows a coherent splat instead of another infinite video loop. Then optional checkpoints fill the disk and you’re back to capacity planning.
Common install errors and fixes
- flash-attn / ninja / CUDA_HOME mismatch – Toolkit on 12.8, set
CUDA_HOME, preferpip install flash-attn --no-build-isolation, or SDPA fallback. - gsplat compile fails (Windows MSVC / arch list) – VS C++ build tools, SM arch list for your GPU, editable install with
--no-build-isolationon the vendored fork. - CUDA OOM – Fewer frames, lower input resolution,
enable_bf16, disable unused heads via API (camera/depth/normal/points/gs), or FSDP only with enough views. - Multi-GPU hang / assert – Same image-count rule as above; otherwise single GPU.
- torch / driver skew – Pin stays 2.7.1; cu124 wheels on a 12.8-only host is a self-own.
Gradio binds but reconstruct spins forever? Watch nvidia-smi before blaming the UI.
Upgrade, migration, uninstall
Open weights follow GitHub main on HY-World-2.0 – not a classic SemVer app binary.
cd HY-World-2.0
git pull
conda activate hyworld2
pip install -r requirements.txt
# rebuild gsplat / navmesh if third_party changed
Clear stale HF cache only when a weight hash changed and loads look corrupt. Product “2.1” cloud flags may not map 1:1 locally – read repo release notes before assuming parity.
conda deactivate
conda env remove -n hyworld2
rm -rf HY-World-2.0
# optional: rm -rf ~/.cache/huggingface/hub/models--tencent--HY-World-2.0
Anything gsplat / flash-attn you installed outside the env will poison the next project. Remove it.
FAQ
Is HY-World 2.0 the same as a video world model like Genie or Cosmos?
No. Those emit pixel video. HY-World 2.0 bakes editable 3DGS/mesh assets you can import later.
What’s the smallest GPU that can run the AI world model locally?
WorldMirror recon only – see the requirements band above. Full stereo/pano gen is not that card.
Do I need the custom gsplat fork?
Vendored gsplat_maskgaussian when you care about worldgen training with MaskGaussian pruning – that’s the docs default for the five-stage gen trainer. Recon-only can stay on upstream nerfstudio gsplat. Switching mid-project is a rebuild, not a one-line pip flag. People assume “gsplat is gsplat”; the fork is where MaskGaussian actually lives.
Next: clone, create hyworld2, finish FA2 + gsplat, run python -m hyworld2.worldrecon.gradio_app, reconstruct one sample folder – before worldgen or a rented multi-GPU box.