Aller au contenu
ModelVérifiéExterne
Télécharger

Supertonic 3 Quant

Quantized ONNX derivative of Supertone/supertonic-3 for on-device TTS. Drop-in replacement for the official ONNX assets — same Python / C++ / Node SDK, smaller weights.

TypeAudio modelModèle de baseSupertone/supertonic-3VersionRevision d9bfd0aÉditeur@KyumdroidCClasse

Source du modèle

Type
Audio model, Text encoder
Taille du fichier
1,96–123 MB
Modèle de base
Supertone/supertonic-3
Version
vRevision d9bfd0a
Mis à jour
3 oct. 2026
Éditeur
@Kyumdroid
Téléchargements
0
Tâches
Audio
Source
Hugging Face

Description de la source

Supertonic-3 Quantized (ONNX)

Quantized ONNX derivative of Supertone/supertonic-3 for on-device TTS. Drop-in replacement for the official ONNX assets — same Python / C++ / Node SDK, smaller weights.

31 languages (en, ko, ja, ar, bg, cs, da, de, el, es, et, fi, fr, hi, hr, hu, id, it, lt, lv, nl, pl, pt, ro, ru, sk, sl, sv, tr, uk, vi).

Variants

FolderTotal sizeMethodQualityUse case
fp16/191 MBAll 4 models float16 (onnxruntime.transformers.float16)≈99% of fp32On-device desktop/mobile, ORT/CoreML/DirectML

voice_styles/ is shared and unchanged from upstream.

Why no int8 variant?

Tested dynamic int8 on vector_estimator (the largest model, a ConvNeXt-based diffusion U-Net) but the resulting model emits ConvInteger op nodes, which are not implemented in many ORT CPU builds:

  • Common error: NOT_IMPLEMENTED: Could not find an implementation for ConvInteger(10) node
  • Affects: onnxruntime-node, minimal builds, older ORT versions, some mobile builds

Restricting dynamic quantization to MatMul ops (skipping Conv) gives only ~6% size reduction because vector_estimator is Conv-dominated. Static int8 (QDQ) with calibration would work universally but requires capturing intermediate diffusion states — out of scope for this repo.

For now, fp16 is the recommended on-device variant: universal ORT compatibility, near-lossless quality, ~50% smaller than fp32.

Layout

fp16/onnx/
    text_encoder.onnx
    duration_predictor.onnx
    vector_estimator.onnx
    vocoder.onnx
    tts.json
    unicode_indexer.json

voice_styles/
    {F1,F2,F3,F4,F5,M1,M2,M3,M4,M5}.json
  • fp16/onnx/ — 4 ONNX weights + architecture config (tts.json) + tokenizer table (unicode_indexer.json).
  • voice_styles/ — voice embeddings, identical to upstream.

Download

hf download Kyumdroid/supertonic-3-quant \
  --include="fp16/onnx/**" --include="voice_styles/**" \
  --local-dir ./supertonic

Voice catalog

Display names from the official Supertonic demo Space:

FileNameDescription
M1.jsonAlexLively, upbeat male
M2.jsonJamesDeep, composed male
M3.jsonRobertPolished, authoritative male (demo default)
M4.jsonSamSoft, neutral, youthful male
M5.jsonDanielWarm, soothing male
F1.jsonSarahCalm, steady female
F2.jsonLilyBright, cheerful female
F3.jsonJessicaBroadcast-style female
F4.jsonOliviaCrisp, confident female
F5.jsonEmilyGentle, soothing female

Conversion

fp16/ was produced via onnxruntime.transformers.float16.convert_float_to_float16 with:

  • keep_io_types=True (fp32 IO for SDK compatibility)
  • op_block_list=['Cast'] (avoid Cast type mismatch)
  • ONNX shape_inference.infer_shapes_path applied to upstream fp32 first

Conversion script available in the project repository.

Performance (Apple Silicon CPU)

Short Korean utterance, ORT CPU EP only:

VariantSizeSynthesis time
fp32 baseline (upstream)380 MB~0.7 s
fp16191 MB~0.7 s

CPU EP performs fp16 as fp32 upcast, so wall-clock time is similar. Use CoreML EP (macOS) or DirectML EP (Windows) for fp16-native acceleration: 2-3× faster + ~50% lower RAM.

License

OpenRAIL-M, inherited from Supertone/supertonic-3. See LICENSE.

Use restrictions (Attachment A) apply: no impersonation/deepfakes without consent, no AI-generated content without disclosure, no medical advice, no illegal activities, etc.

Credits

  • Original model: Supertone/supertonic-3 by Supertone Inc.
  • Quantization (this repo): fp16 ONNX for Electron / desktop on-device deployment

Sources

1 source
Hugging FacePrincipalVersion d9bfd0a9384b42a76f9256eafdd3d8a5cc4706ba
huggingface.co/Kyumdroid/supertonic-3-quant/tree/d9bfd0a9384b42a76f9256eafdd3d8a5cc4706ba

Vérifié 3 oct.

Artefacts du modèle

4 artefacts

fp16/onnx/duration_predictor.onnx

onnx · 1,96 MB · SHA-256 6782d75542f8…93b8 · Hugging Face

Télécharger

fp16/onnx/text_encoder.onnx

onnx · 17,7 MB · SHA-256 5357a4a9f92c…bd03 · Hugging Face

Télécharger

fp16/onnx/vector_estimator.onnx

onnx · 123 MB · SHA-256 bcfaae9a48f1…1567 · Hugging Face

Télécharger

fp16/onnx/vocoder.onnx

onnx · 48,4 MB · SHA-256 008622408167…446e · Hugging Face

Télécharger

Extraits de sources

3 extraits

--- license: openrail base_model: Supertone/supertonic-3 base_model_relation: quantized language: - en - ko - ja - ar - bg - cs - da - de - el - es - et - fi - fr - hi - hr - hu - id - it - lt - lv - nl - pl - pt - ro - ru - sk - sl - sv - tr - uk - vi pipeline_tag: text-to-speech library_name: supertonic tags: - text-to-speech - tts - speech-synthesis - onnx - quantized - fp16 - supertonic - multilingual - on-device - diffusion - flow-matching --- # Supertonic-3 Quantized (ONNX) Quantized ONNX derivative of [Supertone/supertonic-3](https://huggingface.co/Supertone/supertonic-3) for on-device TTS. Drop-in replacement for the official ONNX assets — same Python / C++ / Node SDK, smaller weights. 31 languages (en, ko, ja, ar, bg, cs, da, de, el, es, et, fi, fr, hi, hr, hu, id, it, lt, lv, nl, pl, pt, ro, ru, sk, sl, sv, tr, uk, vi). ## Variants | Folder | Total size | Method | Quality | Use case | |--------|---:|---|---|---| | **`fp16/`** | **191 MB** | All 4 models float16 (`onnxruntime.transformers.float16`) | ≈99% of fp32 | On-device desktop/mobile, ORT/CoreML/DirectML | `voice_styles/` is shared and unchanged from upstream. ### Why no int8 variant? Tested dynamic int8 on `vector_estimator` (the largest model, a ConvNeXt-based diffusion U-Net) but the resulting model emits `ConvInteger` op nodes, which are **not implemented in many ORT CPU builds**: - Common error: `NOT_IMPLEMENTED: Could not find an implementation for ConvInteger(10) node` - Affects: `onnxruntime-node`, minimal builds, older ORT versions, some mobile builds Restricting dynamic quantization to MatMul ops (skipping Conv) gives only ~6% size reduction because `vector_estimator` is Conv-dominated. Static int8 (QDQ) with calibration would work universally but requires capturing intermediate diffusion states — out of scope for this repo. For now, `fp16` is the recommended on-device variant: universal ORT compatibility, near-lossless quality, ~50% smaller than fp32. ## Layout ``` fp16/onnx/ text_encoder.onnx duration_predictor.onnx vector_estimator.onnx vocoder.onnx tts.json unicode_indexer.json voice_styles/ {F1,F2,F3,F4,F5,M1,M2,M3,M4,M5}.json ``` - **`fp16/onnx/`** — 4 ONNX weights + architecture config (`tts.json`) + tokenizer table (`unicode_indexer.json`). - **`voice_styles/`** — voice embeddings, identical to upstream. ## Download ```bash hf download Kyumdroid/supe...

Source context: 0 downloads · 0 likes · Pipeline text-to-speech · Library supertonic · Repo Kyumdroid/supertonic-3-quant

Source context: 0 downloads · 0 likes · Pipeline text-to-speech · Library supertonic · Repo Kyumdroid/supertonic-3-quant