File size: 2,075 Bytes
e4881a6 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | # Provenance
## Exact checkpoint
- Creator: KandooAI / RunDiffusion
- Civitai model: Juggernaut XL (133005)
- Civitai version: Jugg_XI_Lightning_by_RD (920957)
- File: `juggernautXL_juggXILightningByRD.safetensors`
- Size: `7,105,348,616` bytes
- SHA-256: `609fde646e7fc60a259ad67351e02258ac7929a0a1f5040049dfec6a15f37b1a`
- Tensor validation: 2,515 tensors; no NaN or Infinity values
## Architecture configuration
The checkpoint is a single-file SDXL model. Only architecture configuration
and tokenizer assets were taken from the creator reference repository:
- Repository: `RunDiffusion/Juggernaut-XL-Lightning`
- Revision: `9c35e7ca1112b7e567ae7b24400b83935909916d`
- Config snapshot manifest SHA-256:
`4b05f6a337bcdf1a319054b9ad4493021993aea6d2760c774b7944e865d59481`
All learned UNet, VAE, text encoder 1, and text encoder 2 tensors came from the
authenticated Civitai checkpoint above. No learned weights were copied from
the different checkpoint hosted in the reference repository.
## Reproducible conversion
- Apple converter: `apple/ml-stable-diffusion`
- Converter revision: `e12202c1f6405b83918b58a5d097cd61e3e1f702`
- LocalMuse wrappers: `Tools/CoreML/convert_sdxl_unet.py` and
`Tools/CoreML/convert_sdxl_text_encoders.py`
- Resolution: 1024×1024 (`128×128` latent)
- UNet: 6-bit palettized, `SPLIT_EINSUM`, two chunks
- Text encoder 1: FP16
- Text encoder 2: 8-bit palettized
- VAE encoder/decoder: checkpoint-specific FP16 weights
- Minimum target: iOS 17
Conversion parity checks (PSNR): VAE decoder 106.3 dB, VAE encoder 101.5 dB,
FP16 Core ML UNet 47.4 dB, text encoder 1 78.9 dB, text encoder 2 75.4 dB.
All exceeded the 35 dB acceptance threshold. Every compiled component was
loaded sequentially with Core ML using `CPU_ONLY` after compilation.
## Tensor contracts
- UNet input: `[2, 4, 128, 128]`
- UNet output: `[2, 4, 128, 128]`
- VAE encoder input: `[1, 3, 1024, 1024]`
- VAE encoder output: `[1, 8, 128, 128]`
- VAE decoder input: `[1, 4, 128, 128]`
- VAE decoder output: `[1, 3, 1024, 1024]`
- Text encoder token input: `[1, 77]`
|