--- license: apache-2.0 library_name: mlx pipeline_tag: image-to-image base_model: hustvl/Moebius tags: - mlx - image-inpainting - inpainting - diffusion - moebius - ft_celebahq - q4 --- # Moebius ft_celebahq MLX q4 This folder contains a converted MLX version of the **ft_celebahq** Moebius checkpoint in **q4** form. `ft_celebahq` means the Moebius checkpoint fine-tuned on CelebA-HQ, for face and portrait inpainting. Original upstream model: [hustvl/Moebius](https://huggingface.co/hustvl/Moebius) Original source repository: [hustvl/Moebius](https://github.com/hustvl/Moebius) Moebius checkpoint fine-tuned on CelebA-HQ. This variant is intended for face and portrait inpainting distributions. ## Identity | Field | Value | |---|---| | Variant name | `ft_celebahq-q4` | | Checkpoint meaning | Fine-tuned on CelebA-HQ for face and portrait inpainting. | | Original Moebius checkpoint family | `ft_celebahq` | | Original checkpoint type | CelebA-HQ fine-tune | | Source PyTorch checkpoint | `Moebius-Models/ft_celebahq/diffusion_pytorch_model.bin` | | MLX precision / quantization label | `q4` | | Image size | 512 x 512 | | Latent size | 64 x 64 | | Latent channels | 4 | | Mask channels | 1 | | Conditioning IDs | 20 | | VAE scaling factor | 0.13025 | | Noise offset | 0.0357 | ## Quantization 4-bit MLX quantized export. The manifest selects a quantized UNet safetensors file. Standard q4 variants keep VAE encoder and decoder as regular f16 safetensors; special candidate variants can also select quantized VAE files and broader convolution packing. - UNet precision mode: `q4`. - MLX grouped quantization is used for supported linear layers; grouped quantized weights are loaded through the Moebius-MLX manifest/runtime. - Quantization config: 4 bits, group size 64, standard MLX quantized mode. - The VAE encoder and decoder remain regular f16 safetensors for this variant. ## Manifest-selected deployment files These are the files selected by `manifest.json` when the Moebius-MLX runtime loads this variant. | Component | File | Size | |---|---|---:| | UNet | `unet_quantized.safetensors` | 422.41 MB | | VAE encoder | `vae_encoder.safetensors` | 68.34 MB | | VAE decoder | `vae_decoder.safetensors` | 99.00 MB | ## Files in this folder - `unet.safetensors` - `unet_quantized.safetensors` (selected by manifest) - `vae_decoder.safetensors` (selected by manifest) - `vae_encoder.safetensors` (selected by manifest) - `manifest.json` (runtime metadata and file selection) A minimal runtime package needs `manifest.json` and the manifest-selected files above. Extra source or fallback files are optional and are not required for inference. ## Runtime expectations This is not a Transformers or Diffusers-native checkpoint. It is intended for the Swift/MLX runtime in [Moebius-MLX](https://github.com/kylehowells/Moebius-MLX). The runtime reads `manifest.json`, loads the selected safetensors files, builds the Moebius UNet and VAE modules, and runs the DDIM inpainting pipeline. Pipeline constants must match the manifest: - DDIM scheduler: `scaled_linear`, beta start 0.00085, beta end 0.012, 1000 train timesteps, clip sample false - 512 x 512 image resolution and 64 x 64 latent resolution - 9-channel UNet input: noisy latent, mask, and masked-image latent - VAE scaling factor 0.13025 ## Attribution Moebius was released by the original authors as [hustvl/Moebius](https://huggingface.co/hustvl/Moebius). This folder is a format conversion and/or quantized MLX packaging of the original PyTorch weights, not a newly trained model.