Instructions to use MLXCreator/MLX-Creator with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use MLXCreator/MLX-Creator with MLX:
# Download the model from the Hub pip install huggingface_hub[hf_xet] huggingface-cli download --local-dir MLX-Creator MLXCreator/MLX-Creator
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
File size: 4,822 Bytes
115f0db 805b0fd 115f0db | 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 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 | ---
license: apache-2.0
tags:
- mlx
- mlx-creator
- apple-silicon
- text-to-image
- text-to-audio
- text-to-video
---
# MLX Creator — Models
Local generative-media studio for **Apple Silicon** — images, music, and video, fully
on-device via [MLX](https://github.com/ml-explore/mlx). No PyTorch at runtime, no cloud.
- **App / source:** https://github.com/rynky2436/MLX-Creator
- **These repos** (`MLXCreator/*`) host MLX-format weights the app downloads on first run.
---
## How to add or convert a model so it works in the app
The app loads models from its local `models/` folder. Each model lives in **its own
subfolder** with a small `mlxstudio.json` manifest that tells the app what it is and
which engine loads it. Drop a compatible folder in, and it appears in the right tab.
### 1. Is it already MLX format?
The app's **inference is torch-free** — it loads pre-converted MLX weights. The easy path:
- **Yes (drop-in):** weights already converted to MLX (e.g. from `mlx-community`, or any
`MLXCreator/*` repo here). Just add the manifest (step 3) — no conversion needed.
- **No (convert first):** the model only ships PyTorch/diffusers `safetensors`. Convert it
to MLX **once, offline**, then drop in the result. Conversion may use torch on another
machine/run; the app itself never needs it. Use the upstream MLX tool for that family:
- Flux: [`mlx-examples/flux`](https://github.com/ml-explore/mlx-examples/tree/main/flux)
- SD3 / SD3.5: [`DiffusionKit`](https://github.com/argmaxinc/DiffusionKit)
- Qwen-Image: [`mflux`](https://github.com/filipstrand/mflux)
- Language/planner models: `mlx_lm.convert`
### 2. Does the app already have an engine for that architecture?
A manifest only **routes** a model to an engine that already exists. So a model works if it
is **(a) MLX format** and **(b) one of the supported families** below:
| Modality | Engine (`engine`) | Architectures it loads | Drop-in source |
|---|---|---|---|
| `image` | `flux` | FLUX.1 schnell / dev | `mlx-community` Flux, `MLXCreator/MLXCreator-Flux-Schnell` |
| `image` | `sd35` | SD3 / SD3.5 (needs `SD3-encoders` companion) | `MLXCreator/MLXCreator-SD3.5-Large` |
| `image` | `qwen` | Qwen-Image (quantized MLX) | `MLXCreator/MLXCreator-QwenImage-4bit / -8bit` |
| `audio` | `ace_step` | ACE-Step 1.5 (needs an `acestep-*-lm` planner companion) | `MLXCreator/MLXCreator-ACEStep-1.5` |
| `video` | `wan` | Wan 2.2 TI2V (needs `umt5-xxl-tokenizer` companion) | `MLXCreator/MLXCreator-Wan2.2-TI2V-5B` |
A **brand-new architecture** (not in this list) needs a small new engine in the app — see
[CONTRIBUTING in the repo](https://github.com/rynky2436/MLX-Creator). A new *variant* of a
supported family just needs MLX weights + a manifest.
### 3. Write the manifest
Put `mlxstudio.json` in the model's folder:
```json
{
"modality": "image",
"engine": "flux",
"arch": "schnell",
"role": "model",
"display": "FLUX.1 schnell"
}
```
| Field | Required | Values |
|---|---|---|
| `modality` | yes | `image` · `audio` · `video` |
| `engine` | yes | `flux` · `sd35` · `qwen` · `ace_step` · `wan` |
| `arch` | flux only | `schnell` · `dev` |
| `role` | yes | `model` (selectable) · `companion` (shared encoder/tokenizer/planner, hidden) |
| `display` | optional | label shown in the UI (defaults to the folder name) |
The app also **auto-detects** common layouts and writes this file for you, but adding it
explicitly is the reliable way to register an unusual folder.
### 4. Install it — two ways
- **In-app (recommended):** open the **Models** tab, search Hugging Face, and install. The
browser filters for MLX-compatible repos and writes the manifest automatically.
- **Manual:** copy the folder into the app's `models/` directory (see the path in the
**Settings** tab). It shows up on next launch / refresh.
### 5. Publishing your own MLX model so the in-app browser finds it
When you upload converted weights to Hugging Face, tag them so MLX Creator's browser
surfaces them:
- `library_name: mlx` (or include `mlx` in `tags`)
- a `pipeline_tag` that matches the modality (`text-to-image`, `text-to-audio`, `text-to-video`)
- keep the upstream **license** and attribution in the model card
---
## Companions
Some engines share a heavy encoder/tokenizer/planner across models. These are marked
`"role": "companion"` and are **not** shown as selectable models — they're loaded behind the
scenes. Examples here: `SD3-encoders` (CLIP/T5 for `sd35`), `umt5-xxl-tokenizer` (for `wan`),
`acestep-5Hz-lm-0.6B` / `-4B` (the ACE-Step "thinking" planners).
---
*Each model repo here keeps its original source + license in its card. Apache-2.0 for the
Flux / ACE-Step / Wan / Qwen / umt5 weights; the SD3 / SD3.5 weights are under the Stability
AI Community License.*
|