Home

Awesome

<p align="center"> <img height="256" src="https://github.com/MochiDiffusion/MochiDiffusion/raw/main/Mochi Diffusion/Resources/Assets.xcassets/AppIcon.appiconset/AppIcon.png" /> </p> <h1 align="center">Mochi Diffusion</h1> <p align="center">Run Stable Diffusion on Mac natively</p> <p align="center"> <a href="https://github.com/MochiDiffusion/MochiDiffusion/blob/main/README.md">English</a>, <a href="https://github.com/MochiDiffusion/MochiDiffusion/blob/main/README.ko.md">한국어</a>, <a href="https://github.com/MochiDiffusion/MochiDiffusion/blob/main/README.zh-Hans.md">中文</a> </p> <p align="center"> <a title="Discord" target="_blank" href="https://discord.gg/x2kartzxGv"><img src="https://img.shields.io/discord/1068185566782423092?color=blueviolet&label=discord"></a> <a title="Crowdin" target="_blank" href="https://crowdin.com/project/mochi-diffusion"><img src="https://badges.crowdin.net/mochi-diffusion/localized.svg"></a> <a title="License" target="_blank" href="https://github.com/MochiDiffusion/MochiDiffusion/blob/main/LICENSE"><img src="https://img.shields.io/github/license/MochiDiffusion/MochiDiffusion?color=blue"></a> </p>

Screenshot

Features

Downloads

Latest version

Community models

ControlNet models

Stable Diffusion 1.5 with ControlNet

When using a model for the very first time, it may take up to 2 minutes for the Neural Engine to compile a cached version. Afterwards, subsequent generations will be much faster.

Compute Unit

Depending on the option chosen, you will need to use the correct model version (see Models section for details).

Models

You will need to convert or download Core ML models in order to use Mochi Diffusion.

  1. Convert or download Core ML models
    • split_einsum version is compatible with all compute unit options including Neural Engine
    • original version is only compatible with CPU & GPU option
  2. By default, the app's model folder will be created under your home directory. This location can be customized under Settings
  3. In the model folder, create a new folder with the name you'd like displayed in the app then move or extract the converted models here
  4. Your directory structure should look like this:
<Home Directory>/
└── MochiDiffusion/
    └── models/
        ├── stable-diffusion-2-1_split-einsum_compiled/
        │   ├── merges.txt
        │   ├── TextEncoder.mlmodelc
        │   ├── Unet.mlmodelc
        │   ├── VAEDecoder.mlmodelc
        │   ├── VAEEncoder.mlmodelc
        │   └── vocab.json
        ├── ...
        └── ...

Compatibility

Privacy

All generation happens locally and absolutely nothing is sent to the cloud.

Contributing

Mochi Diffusion is always looking for contributions, whether it's through bug reports, code, or new translations.

Credits