coreml-zoo / README.md
mlboydaisuke's picture
Link the card back to its collection and the request box
a3d12de verified
|
Raw
History Blame Contribute Delete
11.1 kB
---
license: other
license_name: mixed-per-model
license_link: https://huggingface.co/mlboydaisuke/coreml-zoo#licenses
library_name: coreml
tags:
- coreml
- core-ml
- ios
- macos
- apple
- on-device
- model-zoo
- coremltools
- mlpackage
- arxiv:1808.00897
- arxiv:2009.09960
- arxiv:2101.04061
- arxiv:2107.10833
- arxiv:2109.07161
- arxiv:2204.00964
- arxiv:2211.08553
- arxiv:2212.11613
- arxiv:2303.14535
- arxiv:2303.15343
- arxiv:2306.07691
- arxiv:2306.14289
- arxiv:2310.13025
- arxiv:2311.06242
- arxiv:2311.14760
- arxiv:2312.01479
- arxiv:2401.17270
- arxiv:2404.13686
- arxiv:2405.14458
- arxiv:2501.14677
- arxiv:2503.07465
- arxiv:2505.08175
- arxiv:2507.02546
- arxiv:2511.09554
- arxiv:2511.10647
---
# Core ML Models Zoo
31 PyTorch models converted to Core ML (`.mlpackage`) for on-device inference on iPhone, iPad and Mac β€” detection, segmentation, depth, matting, diffusion, TTS, source separation and more. 6.96 GB of packages in one repo.
Every model here has a matching, readable conversion script and β€” for most of them β€” a standalone SwiftUI sample app in the [CoreML-Models](https://github.com/john-rocky/CoreML-Models) repo.
This repo is also the backing store for the [Models Zoo app](https://apps.apple.com/app/id6762083207) on the App Store, which downloads and runs any of these models on device without writing code. `models.json` is that app's manifest β€” treat it as machine-owned.
Each model also has its own repo with a model card, a demo image and the unzipped `.mlpackage` β€” the **Model** column links there. The **In this repo** column is the zipped copy the app downloads.
## Models
| Model | Task | Packages | Size | License | Upstream | In this repo |
|---|---|---:|---:|---|---|---|
| [Face Parsing](https://huggingface.co/mlboydaisuke/Face-Parsing-CoreML) | image segmentation | 1 | 47 MB | MIT | [zllrunning/face-parsing.PyTorch](https://github.com/zllrunning/face-parsing.PyTorch) | [zip](./faceparsing) |
| [MobileSAM](https://huggingface.co/mlboydaisuke/MobileSAM-CoreML) | mask generation | 1 | 19 MB | Apache-2.0 | [ChaoningZhang/MobileSAM](https://github.com/ChaoningZhang/MobileSAM) | [zip](./mobilesam) |
| [RMBG-1.4](https://huggingface.co/mlboydaisuke/RMBG-1.4-CoreML) | image segmentation | 1 | 37 MB | Bria RMBG-1.4 License | [briaai/RMBG-1.4](https://huggingface.co/briaai/RMBG-1.4) | [zip](./rmbg) |
| [DDColor Tiny](https://huggingface.co/mlboydaisuke/DDColor-Tiny-CoreML) | image to image | 1 | 203 MB | Apache-2.0 | [piddnad/DDColor](https://github.com/piddnad/DDColor) | [zip](./ddcolor) |
| [Pixelization](https://huggingface.co/mlboydaisuke/Pixelization-CoreML) | image to image | 1 | 35 MB | Research use only | [WuZongWei6/Pixelization](https://github.com/WuZongWei6/Pixelization) | [zip](./pixelization) |
| [Real-ESRGAN 4x](https://huggingface.co/mlboydaisuke/Real-ESRGAN-x4-CoreML) | image to image | 1 | 59 MB | BSD-3-Clause | [xinntao/Real-ESRGAN](https://github.com/xinntao/Real-ESRGAN) | [zip](./realesrgan) |
| [SinSR](https://huggingface.co/mlboydaisuke/SinSR-CoreML) | image to image | 3 | 517 MB | CC BY-NC-SA 4.0 | [wyf0912/SinSR](https://github.com/wyf0912/SinSR) | [zip](./sinsr) |
| [RF-DETR Nano](https://huggingface.co/mlboydaisuke/RF-DETR-Nano-CoreML) | object detection | 1 | 95 MB | Apache-2.0 | [roboflow/rf-detr](https://github.com/roboflow/rf-detr) | [zip](./rfdetr) |
| [YOLO-World](https://huggingface.co/mlboydaisuke/YOLO-World-V2-S-CoreML) | zero shot object detection | 2 | 134 MB | GPL-3.0 | [AILab-CVC/YOLO-World](https://github.com/AILab-CVC/YOLO-World) | [zip](./yoloworld) |
| [YOLO11s](https://huggingface.co/mlboydaisuke/YOLO11s-CoreML) | object detection | 1 | 17 MB | AGPL-3.0 | [ultralytics/ultralytics](https://github.com/ultralytics/ultralytics) | [zip](./yolov9) |
| [YOLO26s](https://huggingface.co/mlboydaisuke/YOLO26s-CoreML) | object detection | 1 | 17 MB | AGPL-3.0 | [ultralytics/ultralytics](https://github.com/ultralytics/ultralytics) | [zip](./yolo26) |
| [YOLOv10n](https://huggingface.co/mlboydaisuke/YOLOv10n-CoreML) | object detection | 1 | 4 MB | AGPL-3.0 | [THU-MIG/yolov10](https://github.com/THU-MIG/yolov10) | [zip](./yolov10) |
| [Depth Anything 3 Base (504Γ—504)](https://huggingface.co/mlboydaisuke/Depth-Anything-3-Base-CoreML) | depth estimation | 1 | 173 MB | Apache-2.0 | [ByteDance-Seed/Depth-Anything-3](https://github.com/ByteDance-Seed/Depth-Anything-3) | [zip](./depth_anything_v3) |
| [Depth Anything 3 Small (504Γ—504)](https://huggingface.co/mlboydaisuke/Depth-Anything-3-Small-CoreML) | depth estimation | 1 | 44 MB | Apache-2.0 | [ByteDance-Seed/Depth-Anything-3](https://github.com/ByteDance-Seed/Depth-Anything-3) | [zip](./depth_anything_v3) |
| [MoGe-2 ViT-B (504Γ—504)](https://huggingface.co/mlboydaisuke/MoGe-2-ViT-B-CoreML) | depth estimation | 1 | 184 MB | MIT | [microsoft/MoGe](https://github.com/microsoft/MoGe) | [zip](./moge2) |
| [Florence-2](https://huggingface.co/mlboydaisuke/Florence-2-base-CoreML) | image text to text | 3 | 229 MB | MIT | [microsoft/Florence-2](https://huggingface.co/microsoft/Florence-2-base) | [zip](./florence2) |
| [SigLIP](https://huggingface.co/mlboydaisuke/SigLIP-base-patch16-224-CoreML) | zero shot image classification | 2 | 358 MB | Apache-2.0 | [google-research/big_vision](https://github.com/google-research/big_vision) | [zip](./siglip) |
| [3DDFA V2](https://huggingface.co/mlboydaisuke/3DDFA-V2-CoreML) | keypoint detection | 1 | 6 MB | MIT | [cleardusk/3DDFA_V2](https://github.com/cleardusk/3DDFA_V2) | [zip](./face3d) |
| [Hyper-SD (1-Step)](https://huggingface.co/mlboydaisuke/Hyper-SD-1step-CoreML) | text to image | 4 | 905 MB | OpenRAIL-M | [ByteDance/Hyper-SD](https://huggingface.co/ByteDance/Hyper-SD) | [zip](./hypersd) |
| [Nitro-E (4-Step)](https://huggingface.co/mlboydaisuke/Nitro-E-CoreML) | text to image | 3 | 987 MB | MIT (Nitro-E) + Llama 3.2 Community License (text encoder) | [amd/Nitro-E](https://huggingface.co/amd/Nitro-E) | [zip](./nitroe) |
| [MatAnyone](https://huggingface.co/mlboydaisuke/MatAnyone-CoreML) | image segmentation | 5 | 83 MB | S-Lab License 1.0 | [pq-yang/MatAnyone](https://github.com/pq-yang/MatAnyone) | [zip](./matanyone) |
| [HTDemucs](https://huggingface.co/mlboydaisuke/HTDemucs-CoreML) | audio to audio | 1 | 75 MB | MIT | [adefossez/demucs](https://github.com/adefossez/demucs) | [zip](./demucs) |
| [OpenVoice V2](https://huggingface.co/mlboydaisuke/OpenVoice-V2-CoreML) | audio to audio | 2 | 58 MB | MIT | [myshell-ai/OpenVoice](https://github.com/myshell-ai/OpenVoice) | [zip](./openvoice) |
| [Pyannote Diarization](https://huggingface.co/mlboydaisuke/pyannote-segmentation-3.0-CoreML) | voice activity detection | 1 | 5 MB | MIT | [pyannote/pyannote-audio](https://github.com/pyannote/pyannote-audio) | [zip](./diarization) |
| [Kokoro-82M](https://huggingface.co/mlboydaisuke/Kokoro-82M-CoreML) | text to speech | 4 | 724 MB | Apache-2.0 | [hexgrad/Kokoro-82M](https://huggingface.co/hexgrad/Kokoro-82M) | [zip](./kokoro) |
| [Stable Audio Open](https://huggingface.co/mlboydaisuke/Stable-Audio-Open-Small-CoreML) | text to audio | 4 | 1.41 GB | Stability AI Community License | [stabilityai/stable-audio-open-small](https://huggingface.co/stabilityai/stable-audio-open-small) | [zip](./stableaudio) |
| [LaMa](https://huggingface.co/mlboydaisuke/LaMa-CoreML) | image to image | 1 | 187 MB | Apache-2.0 | [advimman/lama](https://github.com/advimman/lama) | [zip](./lama) |
| [GFPGAN](https://huggingface.co/mlboydaisuke/GFPGAN-CoreML) | image to image | 1 | 298 MB | Apache-2.0 | [TencentARC/GFPGAN](https://github.com/TencentARC/GFPGAN) | [zip](./gfpgan) |
| [AdaFace IR-18](https://huggingface.co/mlboydaisuke/AdaFace-IR18-CoreML) † | face recognition | 1 | 42 MB | MIT | [mk-minchul/AdaFace](https://github.com/mk-minchul/AdaFace) | [zip](./adaface) |
| [EfficientAD (MVTec bottle)](https://huggingface.co/mlboydaisuke/EfficientAD-CoreML) † | anomaly detection | 1 | 14 MB | MIT | [openvinotoolkit/anomalib](https://github.com/openvinotoolkit/anomalib) | [zip](./efficientad) |
| [YOLOE-S](https://huggingface.co/mlboydaisuke/YOLOE-S-CoreML) † | zero shot object detection + segmentation | 3 | 133 MB | AGPL-3.0 | [THU-MIG/yoloe](https://github.com/THU-MIG/yoloe) | [zip](./yoloe) |
† Downloadable here, but not yet selectable inside the Models Zoo app β€” the shipped app build has no UI template for them.
### Also in the Models Zoo app (hosted in separate repos)
| Model | Repo |
|---|---|
| Gemma 4 E2B | [mlboydaisuke/gemma-4-E2B-coreml](https://huggingface.co/mlboydaisuke/gemma-4-E2B-coreml) |
| Gemma 4 E4B | [mlboydaisuke/gemma-4-E4B-coreml](https://huggingface.co/mlboydaisuke/gemma-4-E4B-coreml) |
| Qwen3-VL 2B | [mlboydaisuke/qwen3-vl-2b-coreml](https://huggingface.co/mlboydaisuke/qwen3-vl-2b-coreml) |
| Qwen3.5 0.8B | [mlboydaisuke/qwen3.5-0.8B-CoreML](https://huggingface.co/mlboydaisuke/qwen3.5-0.8B-CoreML) |
| Qwen3.5 2B | [mlboydaisuke/qwen3.5-2B-CoreML](https://huggingface.co/mlboydaisuke/qwen3.5-2B-CoreML) |
## Download
Each model lives in its own directory and ships as a zipped `.mlpackage`.
```bash
hf download mlboydaisuke/coreml-zoo --include "moge2/*" --local-dir ./moge2
unzip './moge2/moge2/*.zip' -d ./moge2
```
```bash
# everything (large)
hf download mlboydaisuke/coreml-zoo --local-dir ./coreml-zoo
```
## Use in Swift
```swift
import CoreML
let config = MLModelConfiguration()
config.computeUnits = .cpuAndNeuralEngine // see each model's card
let compiled = try await MLModel.compileModel(at: mlpackageURL)
let model = try MLModel(contentsOf: compiled, configuration: config)
```
Two things that bite on real devices, both documented per model in [`docs/coreml_conversion_notes.md`](https://github.com/john-rocky/CoreML-Models/blob/master/docs/coreml_conversion_notes.md):
1. **Compute units are load-bearing.** Several models are converted for a specific backend (FP32 + `.cpuOnly` where FP16 attention overflows, `.cpuOnly` where the iOS GPU hits the MPS singleton-slice bug). Switching them is not free.
2. **`MLMultiArray.dataPointer` is not contiguous on the Neural Engine.** ANE pads rows for SIMD alignment β€” always read through `array.strides`.
## Licenses
Licenses are **per model** and inherited from upstream. Several are non-commercial (MatAnyone: S-Lab 1.0, SinSR: CC BY-NC-SA 4.0, RMBG-1.4: Bria RMBG license, Pixelization: research use only) and the YOLO models are AGPL-3.0 / GPL-3.0. Check the table above and the upstream repo before shipping anything commercially.
## Credits
Conversions by john-rocky (Daisuke Majima). Upstream authors are credited per model above.
<!-- funnel:v1 -->
---
**More models in this format:** [Core ML Model Zoo](https://huggingface.co/collections/mlboydaisuke/core-ml-model-zoo-6a7078dc888e7b13efd35631) β€” 46 models, each with the recipe that produced it.
**Want a different model on-device?** [Open a request](https://github.com/john-rocky/on-device-requests) β€” free, open weights only; the export and its measured numbers get published publicly.
<!-- /funnel:v1 -->