MangoGoes/libero4in1_wan2.2vae_latent_dataset
LIBERO 4in1 Wan2.2-VAE Latent Cache Pre-encoded latent tensors for LIBERO 4 suites under Cosmos Wan2.2-VAE. Skip on-the-fly VAE encoding during training — load this cache directly. Overview Pre-encoded latent cache for LIBERO 4in1 benchmark (libero_spatial, libero_object, libero_goal, libero_10 — 4 suites × 10 tasks, ~1700 episodes total). Each raw video frame is encoded once with Wan2.2-VAE, then saved as .pt tensors for direct loading during action-policy… See the full description on the dataset page: https://huggingface.co/datasets/MangoGoes/libero4in1_wan2.2vae_latent_dataset.
LIBERO 4in1 Wan2.2-VAE Latent Cache
Pre-encoded latent tensors for LIBERO 4 suites under Cosmos Wan2.2-VAE. Skip on-the-fly VAE encoding during training — load this cache directly.
Overview
Pre-encoded latent cache for LIBERO 4in1 benchmark (libero_spatial, libero_object, libero_goal, libero_10 — 4 suites × 10 tasks, ~1700 episodes total). Each raw video frame is encoded once with Wan2.2-VAE, then saved as .pt tensors for direct loading during action-policy training (action head / VLA / SFT).
Encoding once at ~5–10 GB/s inference throughput and reading .pt files at train time avoids repeated VAE calls, yielding a 5–10× training speedup.
Encoding Configuration
Encoder script: tools/g0/build_cosmos_libero_latent_dataset.py
- Path:
/disk/rl/psm_wma/tools/g0/build_cosmos_libero_latent_dataset.py - Run as: single suite + multi-shard parallelism (3–5 shards depending on GPU memory)
Directory Structure
libero4in1_wan2.2vae_latent_dataset/
├── README.md
├── libero_spatial/
│ ├── dataset_manifest.json
│ ├── dataset_manifest_shard_0000.json
│ ├── dataset_manifest_shard_0001.json
│ ├── dataset_manifest_shard_0002.json
│ └── episodes/
│ ├── episode_000000.pt # ~24 MB / episode
│ ├── episode_000001.pt
│ └── ... # 438 episodes
├── libero_object/ # 460 episodes
├── libero_goal/ # 434 episodes
└── libero_10/ # 385 episodesDataset Size
Usage
1. huggingface_hub.snapshot_download (recommended)
import os
os.environ['HF_HUB_ENABLE_HF_TRANSFER'] = '1'
from huggingface_hub import snapshot_download
local_dir = snapshot_download(
repo_id='MangoGoes/libero4in1_wan2.2vae_latent_dataset',
repo_type='dataset',
local_dir='/disk/rl/data/libero4in1_latent',
)
print(local_dir)
# → /disk/rl/data/libero4in1_latent2. hf CLI
hf download MangoGoes/libero4in1_wan2.2vae_latent_dataset \
--repo-type dataset \
--local-dir /disk/rl/data/libero4in1_latent3. Custom torch.utils.data.Dataset
import json, torch
from pathlib import Path
from torch.utils.data import Dataset
class LiberoLatentDataset(Dataset):
def __init__(self, cache_root, suite='libero_spatial'):
self.root = Path(cache_root) / suite / 'episodes'
with open(Path(cache_root) / suite / 'dataset_manifest.json') as f:
self.manifest = json.load(f)
self.episodes = sorted(self.root.glob('episode_*.pt'))
def __len__(self):
return len(self.episodes)
def __getitem__(self, idx):
return torch.load(self.episodes[idx], weights_only=True)4. Single-file random sampling
import random, torch
from pathlib import Path
ep = random.choice(
list(Path('/disk/rl/data/libero4in1_latent/libero_spatial/episodes').glob('*.pt'))
)
data = torch.load(ep, weights_only=True)
video = data['video'] # [T, C, H, W] float16
state = data['state'] # [T, D_state] float32
action = data['action'] # [T, D_action] float32Related Resources
- Policy checkpoint (Cosmos3-Edge action head, libero4in1 SFT): MangoGoes/Cosmos3-edge-generation-libero4in1
- Original LIBERO dataset (un-encoded): Lifelong-Robot-Learning/LIBERO
- VAE checkpoint: bundled with Cosmos3 project (
examples/checkpoints/wan22_vae/Wan2.2_VAE.pth)
Mirror
A mirror exists at the original model-typed repo (kept for historical reference; HF does not allow changing repo_type post-creation):
- https://huggingface.co/MangoGoes/libero4in1wan2.2vaelatentcosmosstyle
Files are identical between the two repos; please prefer this dataset-typed repo for new downloads.
Re-encoding Command
REPO_ROOT=/disk/rl/psm_wma
VAE_PATH="$REPO_ROOT/cosmos-framework/examples/checkpoints/wan22_vae/Wan2.2_VAE.pth"
OUTPUT_ROOT=/disk/rl/data/LIBERO_LeRobot_v3_cosmos_exact_window_shared_vae_v1
for shard in 0 1 2; do
"$REPO_ROOT/cosmos-framework/.venv/bin/python" \
"$REPO_ROOT/tools/g0/build_cosmos_libero_latent_dataset.py" \
--dataset-root "/disk/rl/data/LIBERO_LeRobot_v3/libero_spatial" \
--output-root "$OUTPUT_ROOT/libero_spatial" \
--vae-path "$VAE_PATH" \
--image-size 256 \
--device cuda \
--windowed \
--episode-shard "$shard" \
--num-shards 3
done