Praxis-1 DROID NVFP4
runwayml/praxis-1-droid (single-arm DROID policy) fine-tuned for 5,000 more steps
with NVFP4 quantization-aware training (QAT) on the routed MoE expert layers.
Everything else (dense layers, shared experts, routers, action expert) is
trained and served in bf16.
| Base checkpoint | runwayml/praxis-1-droid |
| QAT | NVFP4 on routed experts: FP4 E2M1 values in blocks of 16, E4M3 block scales, one FP32 scale per expert matrix (amax / 2688); weights and activations |
| Embodiment | single arm, cameras exterior + wrist (same as the base checkpoint) |
| Weights | bf16 (QAT keeps bf16 master weights), 54.4 GB, 17 safetensors shards (model.safetensors.index.json) |
| Config | config.json, identical to runwayml/praxis-1-droid |
Files
config.json: praxis model config (model_type: praxis,format_version: 2)model-000NN-of-00017.safetensors+model.safetensors.index.json: sharded weightsSHA256SUMS: checksums for every file above
Usage
from huggingface_hub import snapshot_download
path = snapshot_download("runwayml/praxis-1-droid-nvfp4")
Load path with runwayml/praxis-1-oss
(serve it with configs/serve_droid.yaml). It loads in bf16 like the base checkpoint.
To run the routed experts in NVFP4 (experimental, SM120 GPUs only: RTX 5090,
RTX PRO 6000 Blackwell), install the nvfp4 extra (pip install -e '.[nvfp4]')
and set model.routed_precision: nvfp4 (for example
--set model.routed_precision=nvfp4). The routed experts are packed to NVFP4
from these bf16 files at load time, so the full 54.4 GB is downloaded either
way; in memory the policy shrinks from 54.4 GB to 17.5 GB. Set
model.nvfp4_cache to keep the packed experts (14.4 GB) between loads. See
"Optional routed NVFP4 inference" in the code's README.
License
Apache License 2.0. The frozen dependencies (Wan2.2 VAE, Qwen/Qwen3.5-2B)
are distributed separately under their own licenses.
- Downloads last month
- 30