ONNX Model Zoo

Nooder/supertonic-2-coreml

By Nooder · ↓ 14 · ♥ 0 · Updated 2026-01-19

What's in this repo

This page lists the files in Nooder/supertonic-2-coreml, including duration_predictor.onnx, text_encoder.onnx.

  • 2 ONNX models (.onnx files)
  • 106 files, including 40 .json, 28 .mlmodel, 26 .bin, 5 .md, 2 .onnx, 1 .py
  • Last updated 2026-01-19

ONNX files

File Size Download
resources/onnx/duration_predictor.onnx — Download
resources/onnx/text_encoder.onnx — Download

How to use

These ONNX files can be loaded with ONNX Runtime. To inspect a model graph, upload the file to the Netron viewer. Download links point to the original files on Hugging Face.

README

Supertonic-2 CoreML

This repository provides CoreML exports of Supertonic 2 for macOS and iOS. It focuses on on-device inference with multiple >=8-bit quantization variants.

GitHub repo (code + demo app): https://github.com/Nooder/supertonic-2-coreml

Code & demo

The GitHub repo contains:

  • Swift demo app (CoreML pipeline + UI): supertonic2-coreml-ios-test/
  • CoreML tooling + tests: scripts/
  • Docs: docs/

What is included

  • models/: CoreML model packages by variant (>=8-bit only)
  • resources/: voice styles, embeddings, and text normalization assets
  • manifest.json: list of artifacts with checksums and sizes
  • SHA256SUMS: sha256 checksums for all files
  • tests/: smoke tests for CoreML model loading

Quickstart (iOS / macOS)

  1. Pick a variant from models/ (see the quant matrix in docs/quant-matrix.md).
  2. Bundle the corresponding CoreML packages and resources/ into your app.
  3. Use the Swift demo app in the GitHub repo supertonic-2-coreml as the reference implementation.

Required files (checklist)

Bundle the following into your app:

  • CoreML packages for your chosen variant:
    • duration_predictor_mlprogram.mlpackage
    • text_encoder_mlprogram.mlpackage
    • vector_estimator_mlprogram.mlpackage
    • vocoder_mlprogram.mlpackage
  • resources/voice_styles/
  • resources/embeddings/
  • resources/onnx/unicode_indexer.json
  • resources/onnx/tts.json

Minimal iOS integration

// Example usage (see demo app for full UI + playback)
let service = try TTSService(computeUnits: .all)
let result = try service.synthesize(
    text: "Hello from CoreML!",
    language: .en,
    voiceName: "F1",
    steps: 20,
    speed: 1.0,
    silenceSeconds: 0.3
)
print("WAV file:", result.url)

To select a specific variant, update the CoreML folder name in TTSService (the demo defaults to coreml_int8).

Example: iOS 18 int8_both

This variant uses int8 weights for multiple stages on iOS 18.

Bundle these files in your app:

Resources/
  coreml_ios18_int8_both/
    duration_predictor_mlprogram.mlpackage
    text_encoder_mlprogram.mlpackage
    vector_estimator_mlprogram.mlpackage
    vocoder_mlprogram.mlpackage
  voice_styles/
  embeddings/
  onnx/
    unicode_indexer.json
    tts.json

In the Swift demo app, update the CoreML folder name to point at coreml_ios18_int8_both (the app defaults to coreml_int8).

Choosing a variant

Use the folder naming to select the right artifact:

  • coreml_int8: faster, lower fidelity
  • coreml_compressed: smaller memory (linear8)
  • coreml_ios18_*: for iOS 18 CoreML runtime (>=8-bit only)

4-bit variants are intentionally excluded due to quality.

Variant matrix (quick view)

Variant folder Quantization (by name) Intended target Notes
coreml full precision (mixed) general baseline quality
coreml_int8 int8 (all stages) general faster, lower fidelity
coreml_compressed linear8 general smaller memory
coreml_ios18 full precision (mlprogram) iOS 18+ best quality on iOS 18
coreml_ios18_int8_vocoder_only int8 (vocoder only) iOS 18+ balanced
coreml_ios18_int8_both int8 (multiple stages) iOS 18+ fastest, more loss
coreml_compressed_ios18 linear8 iOS 18+ smallest memory

For deeper guidance, see docs/compatibility-matrix.md and docs/quant-matrix.md.

Steps vs. quality (quick guide)

Steps Speed Quality
10 fastest lowest
20 balanced good
30 slowest best

Troubleshooting

  • Missing resource error: Ensure resources/ folders are bundled and named exactly.
  • Model not found: Confirm the CoreML folder name (e.g., coreml_ios18_int8_both).
  • Fails to load on device: Check iOS deployment target matches your variant.

Tests

The tests/test_coreml_models.py script runs a simple smoke test that loads all stages (duration predictor, text encoder, vector estimator, vocoder) with dummy inputs.

Attribution and license

This CoreML export is derived from Supertone/supertonic-2. Model weights are licensed under OpenRAIL-M (see LICENSE). Sample code is MIT-licensed (see NOTICE and UPSTREAM.md).

Model info

text-to-speech supertonic
supertonic coreml onnx ios macos tts mlprogram text-to-speech en ko es pt
↓ 14 ♥ 0

Created: 2026-01-19

Updated: 2026-01-19

View on Hugging Face

Files (106)

.gitattributes
LICENSE
NOTICE
README.md
SHA256SUMS
UPSTREAM.md
config.json
docs/compatibility-matrix.md
docs/quant-matrix.md
docs/release-checklist.md
manifest.json
models/coreml/duration_predictor_fixed.mlmodel
models/coreml/duration_predictor_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml/duration_predictor_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml/duration_predictor_mlprogram.mlpackage/Manifest.json
models/coreml/text_encoder_fixed.mlmodel
models/coreml/text_encoder_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml/text_encoder_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml/text_encoder_mlprogram.mlpackage/Manifest.json
models/coreml/vector_estimator_fixed.mlmodel
models/coreml/vector_estimator_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml/vector_estimator_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml/vector_estimator_mlprogram.mlpackage/Manifest.json
models/coreml/vocoder_fixed.mlmodel
models/coreml/vocoder_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml/vocoder_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml/vocoder_mlprogram.mlpackage/Manifest.json
models/coreml_compressed/vector_estimator_mlprogram_linear8.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_compressed/vector_estimator_mlprogram_linear8.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_compressed/vector_estimator_mlprogram_linear8.mlpackage/Manifest.json
models/coreml_compressed/vocoder_mlprogram_linear8.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_compressed/vocoder_mlprogram_linear8.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_compressed/vocoder_mlprogram_linear8.mlpackage/Manifest.json
models/coreml_compressed_ios18/vector_estimator_mlprogram_linear8.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_compressed_ios18/vector_estimator_mlprogram_linear8.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_compressed_ios18/vector_estimator_mlprogram_linear8.mlpackage/Manifest.json
models/coreml_compressed_ios18/vocoder_mlprogram_linear8.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_compressed_ios18/vocoder_mlprogram_linear8.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_compressed_ios18/vocoder_mlprogram_linear8.mlpackage/Manifest.json
models/coreml_int8/duration_predictor_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_int8/duration_predictor_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_int8/duration_predictor_mlprogram.mlpackage/Manifest.json
models/coreml_int8/text_encoder_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_int8/text_encoder_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_int8/text_encoder_mlprogram.mlpackage/Manifest.json
models/coreml_int8/vector_estimator_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_int8/vector_estimator_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_int8/vector_estimator_mlprogram.mlpackage/Manifest.json
models/coreml_int8/vocoder_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_int8/vocoder_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_int8/vocoder_mlprogram.mlpackage/Manifest.json
models/coreml_ios18/duration_predictor_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_ios18/duration_predictor_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_ios18/duration_predictor_mlprogram.mlpackage/Manifest.json
models/coreml_ios18/text_encoder_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_ios18/text_encoder_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_ios18/text_encoder_mlprogram.mlpackage/Manifest.json
models/coreml_ios18/vector_estimator_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_ios18/vector_estimator_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_ios18/vector_estimator_mlprogram.mlpackage/Manifest.json
models/coreml_ios18/vocoder_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_ios18/vocoder_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_ios18/vocoder_mlprogram.mlpackage/Manifest.json
models/coreml_ios18_int8_both/duration_predictor_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_ios18_int8_both/duration_predictor_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_ios18_int8_both/duration_predictor_mlprogram.mlpackage/Manifest.json
models/coreml_ios18_int8_both/text_encoder_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_ios18_int8_both/text_encoder_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_ios18_int8_both/text_encoder_mlprogram.mlpackage/Manifest.json
models/coreml_ios18_int8_both/vector_estimator_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_ios18_int8_both/vector_estimator_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_ios18_int8_both/vector_estimator_mlprogram.mlpackage/Manifest.json
models/coreml_ios18_int8_both/vocoder_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_ios18_int8_both/vocoder_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_ios18_int8_both/vocoder_mlprogram.mlpackage/Manifest.json
models/coreml_ios18_int8_vocoder_only/duration_predictor_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_ios18_int8_vocoder_only/duration_predictor_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_ios18_int8_vocoder_only/duration_predictor_mlprogram.mlpackage/Manifest.json
models/coreml_ios18_int8_vocoder_only/text_encoder_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_ios18_int8_vocoder_only/text_encoder_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_ios18_int8_vocoder_only/text_encoder_mlprogram.mlpackage/Manifest.json
models/coreml_ios18_int8_vocoder_only/vector_estimator_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_ios18_int8_vocoder_only/vector_estimator_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_ios18_int8_vocoder_only/vector_estimator_mlprogram.mlpackage/Manifest.json
models/coreml_ios18_int8_vocoder_only/vocoder_mlprogram.mlpackage/Data/com.apple.CoreML/model.mlmodel
models/coreml_ios18_int8_vocoder_only/vocoder_mlprogram.mlpackage/Data/com.apple.CoreML/weights/weight.bin
models/coreml_ios18_int8_vocoder_only/vocoder_mlprogram.mlpackage/Manifest.json
resources/embeddings/char_embedder_dp.fp32.bin
resources/embeddings/char_embedder_dp.shape.json
resources/embeddings/char_embedder_te.fp32.bin
resources/embeddings/char_embedder_te.shape.json
resources/onnx/duration_predictor.onnx ONNX
resources/onnx/text_encoder.onnx ONNX
resources/onnx/tts.json
resources/onnx/unicode_indexer.json
resources/voice_styles/F1.json
resources/voice_styles/F2.json
resources/voice_styles/F3.json
resources/voice_styles/F4.json
resources/voice_styles/F5.json
resources/voice_styles/M1.json
resources/voice_styles/M2.json
resources/voice_styles/M3.json
resources/voice_styles/M4.json
resources/voice_styles/M5.json
tests/test_coreml_models.py

Related models