Core ML Stable Diffusion Mixed-Bit Palettization Resources

This repository contains resources related to the use of mixed-bit palettization techniques for Stable Diffusion. As explained in the original repo, this is an advanced compression technique that applies palettization using a varying number of bits per layer to keep quality above the desired threshold (as measured by the PSNR with respect to the original model). This can achieve strong space savings without resorting to learned quantization tables during fine-tuning.

The repository contains the following resources:

  • recipes/. JSON files with results from the analysis phase (Step 1 of the instructions) on three popular Stable Diffusion models:
    • Stable Diffusion 1.5
    • Stable Diffusion 2.1 base
    • Stable Diffusion XL 1.0 base

You can apply any of the available recipes on the appropriate model to experiment and compare results.

Recipe Effective bits UNet size (GB) Size reduction
recipe_3_41_bit_mixedpalette 3.41 1.1 77%
recipe_4_50_bit_mixedpalette 4.50 1.4 71%
recipe_6_55_bit_mixedpalette 6.55 2.0 58%

This repository was prepared by Apple and Hugging Face in July 2023, from experiments conducted using public beta versions of iOS 17.0, iPadOS 17.0 and macOS 14.0.

Downloads last month
7
Inference API
Unable to determine this model's library. Check the docs .

Collection including apple/coreml-stable-diffusion-mixed-bit-palettization