File size: 5,154 Bytes
f256f36
 
821b708
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
d6274e0
 
 
 
 
 
15c33d3
36343dd
4232236
 
 
821b708
 
 
5fae621
f256f36
bb76836
562b5a3
bb76836
562b5a3
 
 
bb76836
562b5a3
bb76836
562b5a3
 
 
 
 
 
 
 
 
 
 
 
 
3a80a76
562b5a3
3a80a76
 
 
 
 
 
 
 
 
 
 
 
 
 
bb76836
562b5a3
bb76836
562b5a3
 
bb76836
562b5a3
bb76836
562b5a3
bb76836
 
562b5a3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3a80a76
562b5a3
 
 
3a80a76
562b5a3
3a80a76
bb76836
 
562b5a3
 
 
 
 
 
 
 
aa50b70
bb76836
562b5a3
 
 
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
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
---
license: openrail
language:
- en
- es
- fr
- pl
- el
- id
- zh
- ja
- ru
- tr
- da
- et
- hr
- pt
- vi
- sl
- cs
- it
- uk
- ko
- sv
- lv
- hu
- fi
- ar
- nl
- sk
- bg
- hi
- de
- lt
base_model:
- Supertone/supertonic-3
pipeline_tag: text-to-speech
library_name: executorch
---

# supertonic

This repository hosts the **supertonic** models exported for the
[React Native ExecuTorch](https://www.npmjs.com/package/react-native-executorch)
library as ExecuTorch `.pte` programs, ready to run on device.

## Variants

| Path | Component | Backend | Precision |
| --- | --- | --- | --- |
| `mlx/duration_predictor_mlx_fp32.pte` | duration_predictor | mlx | fp32 |
| `mlx/text_encoder_mlx_fp32.pte` | text_encoder | mlx | fp32 |
| `mlx/vector_estimator_mlx_fp32.pte` | vector_estimator | mlx | fp32 |
| `mlx/vocoder_mlx_fp32.pte` | vocoder | mlx | fp32 |
| `vulkan/duration_predictor_vulkan_fp16.pte` | duration_predictor | vulkan | fp16 |
| `vulkan/text_encoder_vulkan_fp16.pte` | text_encoder | vulkan | fp16 |
| `vulkan/vector_estimator_vulkan_fp16.pte` | vector_estimator | vulkan | fp16 |
| `vulkan/vocoder_vulkan_fp16.pte` | vocoder | vulkan | fp16 |
| `xnnpack/duration_predictor_xnnpack_fp32.pte` | duration_predictor | xnnpack | fp32 |
| `xnnpack/text_encoder_xnnpack_fp32.pte` | text_encoder | xnnpack | fp32 |
| `xnnpack/vector_estimator_xnnpack_fp32.pte` | vector_estimator | xnnpack | fp32 |
| `xnnpack/vector_estimator_xnnpack_int8.pte` | vector_estimator | xnnpack | int8 |
| `xnnpack/vocoder_xnnpack_fp32.pte` | vocoder | xnnpack | fp32 |
| `xnnpack/vocoder_xnnpack_int8.pte` | vocoder | xnnpack | int8 |

## XNNPACK int8

`xnnpack/vector_estimator_xnnpack_int8.pte` and `xnnpack/vocoder_xnnpack_int8.pte` are 8da8w
(int8 dynamic activations, int8 per-channel weights) on the Linear layers, with the ConvNeXt
pointwise convs moved onto Linears. The int8 set reuses the fp32 duration predictor and text
encoder. LibriSpeech test-clean texts, voice F1, 8 steps, WER of a whisper base.en round trip:

| | WER (57 short) | WER (8 long) |
| --- | --- | --- |
| fp32 | 3.36 | 3.32 |
| fp32, other noise seed | 3.26 | 3.80 |
| int8 | 3.74 | 3.01 |

## Unshipped backends

A backend directory carrying a `NOTES.md` and no `.pte` was exported and
not published. Its note records what went wrong.

- `coreml` ([why](https://huggingface.co/software-mansion/react-native-executorch-supertonic/blob/main/coreml/NOTES.md))

## Repository structure

```
config.json                                  32 B
coreml/NOTES.md                              879 B
mlx/config.json                              6.7 kB
mlx/duration_predictor_mlx_fp32.pte          3.4 MB
mlx/text_encoder_mlx_fp32.pte                34.4 MB
mlx/vector_estimator_mlx_fp32.pte            244 MB
mlx/vocoder_mlx_fp32.pte                     96.7 MB
unicode_indexer.json                         271 kB
voice_styles/F1.json                         285 kB
voice_styles/F2.json                         286 kB
voice_styles/F3.json                         284 kB
voice_styles/F4.json                         285 kB
voice_styles/F5.json                         285 kB
voice_styles/M1.json                         285 kB
voice_styles/M2.json                         285 kB
voice_styles/M3.json                         283 kB
voice_styles/M4.json                         285 kB
voice_styles/M5.json                         285 kB
voices/F1.bin                                50.5 kB
voices/F2.bin                                50.5 kB
voices/F3.bin                                50.5 kB
voices/F4.bin                                50.5 kB
voices/F5.bin                                50.5 kB
voices/M1.bin                                50.5 kB
voices/M2.bin                                50.5 kB
voices/M3.bin                                50.5 kB
voices/M4.bin                                50.5 kB
voices/M5.bin                                50.5 kB
vulkan/config.json                           4.1 kB
vulkan/duration_predictor_vulkan_fp16.pte    1.7 MB
vulkan/text_encoder_vulkan_fp16.pte          17.3 MB
vulkan/vector_estimator_vulkan_fp16.pte      122 MB
vulkan/vocoder_vulkan_fp16.pte               48.4 MB
xnnpack/config.json                          13.1 kB
xnnpack/duration_predictor_xnnpack_fp32.pte  3.4 MB
xnnpack/text_encoder_xnnpack_fp32.pte        34.5 MB
xnnpack/vector_estimator_xnnpack_fp32.pte    245 MB
xnnpack/vector_estimator_xnnpack_int8.pte    62.9 MB
xnnpack/vocoder_xnnpack_fp32.pte             96.7 MB
xnnpack/vocoder_xnnpack_int8.pte             36.8 MB
```

## Compatibility

These files are published for the **ExecuTorch v1.4.1** runtime. ExecuTorch
gives no forward compatibility guarantee, so an older runtime may fail to load
them.

To use them in React Native ExecuTorch, pass the model constant shipped in the
library's model registry to the corresponding task pipeline. See the
[documentation](https://docs.swmansion.com/react-native-executorch/docs/fundamentals/downloading-models).

To load these files in your own ExecuTorch runtime, read the
[compatibility note](https://github.com/pytorch/executorch/blob/main/runtime/COMPATIBILITY.md)
first.