Practical overview
When it fits
Use Persist when you need a codebase for action-conditioned voxel-world generation or experiments with long-horizon 3D state prediction, and can work with its CUDA-based self-hosted setup.
Who it is for
- Researchers exploring world models and persistent 3D state.
- Developers prototyping interactive voxel-world simulations or action-conditioned visual rollouts.
- Model trainers working with voxel, pixel and camera prediction components.
Documented uses
- Generate long visual rollouts from an initial scene and camera pose.
- Predict how voxel-world state, camera pose and rendered observations change in response to player actions.
- Train individual VAE, denoiser and camera-model components using the repository's scripts.
Requirements & limits
The codebase is public and MIT-licensed. The documented model setup is self-hosted and uses CUDA; pretrained weights and a sample evaluation dataset are retrieved from the PERSIST-team Hugging Face hub.
- The generation pipeline predicts voxel state, camera pose and pixel observations in distinct stages.
- The repository documents PERSIST-S and PERSIST-XL inference configurations.
- The recommended inference installation uses CUDA 12.6, uv and nvdiffrast v0.3.3.
- Generating new datasets requires optional Craftium dependencies; training diffuser components expects pre-encoded latents.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Prepare Persist for inference
Install the documented inference and training Python environment before running a model.
Before you start
- Linux setup; installation instructions are tested for Ubuntu 22.04.
- CUDA 12.6 and the listed system libraries.
- uv and the nvdiffrast v0.3.3 extension.
Steps
Install the listed Ubuntu system libraries, CUDA 12.6 and uv; set CUDA_HOME to the CUDA 12.6 installation.
Clone the Persist repository and initialize its submodules.
Run uv sync --group cu and activate the project virtual environment.
Install nvdiffrast at tag v0.3.3 using the documented no-build-isolation command.
Expected outcome
The repository's documented CUDA Python environment is installed and ready for the next inference stage.
Guide limitations
- This setup recipe does not run inference.
- The instructions are tested for Ubuntu 22.04; the README warns that CUDA or package-version mismatches can cause generation artifacts.
Run the sample inference configuration
Generate a 256-frame rollout using the documented PERSIST-S configuration and sample evaluation dataset.
Before you start
- Persist's documented inference environment is installed.
- The pretrained weights and sample evaluation dataset are downloaded from the PERSIST-team Hugging Face hub by the inference command.
Steps
From the repository environment, run the documented scripts.run_inference command with --pipeline-variant S.
Use the PERSIST-team checkpoint namespace, PERSIST-team/persist-eval-sample dataset, --num-frames 256 and --output-dir outputs/rollouts.
Expected outcome
The command is configured to write inference output to outputs/rollouts.
Guide limitations
- The repository warns that CUDA or package-version mismatches can cause generation artifacts.
- The README also documents multi-GPU inference, but this recipe covers the single-command sample configuration only.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 12 October 2026
- Original website title
- francelico/PERSIST · Official homepage title · retained in its source language

