Instructions to use mlx-community/RestoreFormerPlusPlus-fp32 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use mlx-community/RestoreFormerPlusPlus-fp32 with MLX:
# Download the model from the Hub pip install huggingface_hub[hf_xet] huggingface-cli download --local-dir RestoreFormerPlusPlus-fp32 mlx-community/RestoreFormerPlusPlus-fp32
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
| license: apache-2.0 | |
| library_name: mlx | |
| tags: | |
| - mlx | |
| - face-restoration | |
| - image-restoration | |
| - vqgan | |
| - restoreformer | |
| base_model: wzhouxiff/RestoreFormerPlusPlus | |
| # RestoreFormerPlusPlus-fp32 (MLX) | |
| [RestoreFormer++](https://github.com/wzhouxiff/RestoreFormerPlusPlus) (TPAMI 2023) blind | |
| face restoration converted to MLX NHWC safetensors for Apple Silicon. 73,472,579 | |
| parameters (441 tensors), fp32. | |
| - **Architecture:** `VQVAEGANMultiHeadTransformer` — VQ-GAN encoder/decoder over a | |
| 1024×256 ROHQD codebook, multi-scale multi-head cross-attention (enc attn @16, dec | |
| @[16, 32]). 512×512 aligned face crops, RGB in [-1, 1]. Fully deterministic. | |
| - **Source:** the author's official `RestoreFormer++.ckpt` (v1.0.0 GitHub release); | |
| `vqvae.*` state re-exported through the instantiated architecture. | |
| - **Layout:** MLX NHWC. Conv `(O,kH,kW,I)`; GroupNorm vectors, biases, and the codebook | |
| embedding pass through. Keys mirror the upstream state dict (prefix stripped). | |
| - **dtype:** fp32. Measured alternatives: fp16 50.1 dB vs the fp32 golden (viable), bf16 | |
| 38.6 dB (mantissa-bound — fp16 beats bf16 here). Late-decoder activations reach ±14k. | |
| ## License | |
| Apache-2.0 — upstream is plain Apache-2.0 with no third-party carve-outs. Trained on FFHQ | |
| (dataset compilation CC-BY-NC-SA — the standard unsettled dataset-to-weights question). | |
| ## Consume | |
| Swift (Apple Silicon): `mlx-restoreformer-swift` — | |
| `RestoreFormerMLXCore.RestoreFormer` + `MLXRestoreFormer.RestoreFormerRestorePackage` | |
| (MLXEngine `imageRestore`, Vision-based detect/align/paste). | |
| Parity vs the PyTorch reference: key contract 441/441 tensors; per-stage taps 40/40 | |
| ≤ 5e-4 relative (fp32, CPU stream); codebook indices 256/256 exact. | |