Reza2kn commited on
Commit
4470132
·
1 Parent(s): a1e56c2

Replace v2 with unchunked AvaSanj-approved 50K model

Browse files
.gitattributes CHANGED
@@ -33,3 +33,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ *.wav filter=lfs diff=lfs merge=lfs -text
README.md CHANGED
@@ -19,75 +19,70 @@ pretty_name: Gooya RizehPizeh v2
19
 
20
  # Gooya RizehPizeh v2
21
 
22
- Persian (Farsi) single-speaker Piper/VITS2 voice fine-tuned on approved Gemini TTS Wikipedia audio. The model uses a case-sensitive Negara-style phonetic/Finglish frontend and produces 22,050 Hz mono audio.
23
 
24
- ## Selected checkpoint
25
 
26
- This release selects the checkpoint at **global step 50,000** (`val_mel = 0.3951`). Training continued to 100,000 global steps, but later validation was worse, so the terminal state is intentionally not promoted.
27
 
 
 
 
 
 
28
  - Generator parameters: approximately 23.7M
29
- - Full trainable checkpoint: `checkpoint/gooya-rizehpizeh-v2-step50000-val_mel0.3951.ckpt`
30
- - Checkpoint SHA-256: `0c2d22718894e20fb6361c7bf2d75ee54d61db3a167983ce5d843ff6ed438938`
31
- - Browser/Piper model: `gooya-rizehpizeh-v2.onnx`
32
- - Browser/Piper model SHA-256: `675c557524a325cc014e27acb7bb9f7eab584d3247216f934e8a378b709a2d3b`
33
  - Sample rate: 22,050 Hz
34
  - Speakers: 1
35
  - Phoneme type: `text`
36
  - Symbol inventory: 256 IDs
37
 
38
- ## Model lineage
39
 
40
- The original v1.5 production ONNX did not have a matching resumable checkpoint. A trainable hybrid checkpoint was reconstructed by copying all 350 inference-time generator tensors from the production ONNX into a compatible Mana Piper training checkpoint. Training-only branches absent from ONNX came from that Mana template.
41
 
42
- Before fine-tuning, a fresh ONNX round-trip matched the production model on 19/19 deterministic test rows:
 
 
 
 
 
 
 
 
 
43
 
44
- - Worst maximum absolute error: `1.0348856449127197e-05`
45
- - Minimum SNR: `110.0768 dB`
46
- - Minimum correlation: `0.999999999995`
47
 
48
- The complete recovery and parity receipts are under `training/`.
49
 
50
- ## Fine-tuning data
51
 
52
- The parent corpus came from approved rows in [`Reza2kn/Wikipedia-FA-EN-DeepSeek-V4-Flash-0731`](https://huggingface.co/datasets/Reza2kn/Wikipedia-FA-EN-DeepSeek-V4-Flash-0731).
53
 
54
- - Requested parent clips: 4,186 (`3,517` train, `669` sealed eval)
55
- - Successfully aligned parents: 4,116
56
- - Rejected during alignment: 70
57
- - Materialized segments: 30,965
58
- - Training segments consumed: 26,053
59
- - Sealed eval segments, not consumed by training: 4,912
60
- - Total materialized duration: 68.9853 hours
61
- - Segment duration: mean `8.0203s`, min `0.6307s`, max `21.6656s`
62
 
63
- Audio timing came from AvaSanj v1 CTC forced alignment. Training phoneme labels came from Negara v7.1. Parent-level train/eval boundaries were preserved.
64
 
65
- ## Training
66
 
67
- - Precision: BF16 mixed precision
68
- - Generator learning rate: `1e-5`
69
- - Discriminator learning rate: `5e-6`
70
- - Batch size: 1
71
- - Selected validation metric: `val_mel`
72
- - Selected checkpoint: global step 50,000, `val_mel = 0.3951`
73
 
74
- The 100K run was resumed from a successful 2K signal checkpoint. The sealed 669-parent eval split was not used for checkpoint selection.
 
 
 
 
75
 
76
- ## ONNX and browser validation
77
 
78
- The selected checkpoint was exported twice with Piper's ONNX exporter. Both exports were byte-identical. The published ONNX is self-contained and has no external tensor-data file.
79
 
80
- - File size: `63,516,051` bytes
81
- - Inputs: `input` (`int64`, `[batch, phonemes]`), `input_lengths` (`int64`, `[batch]`), `scales` (`float32`, `[3]`)
82
- - Output: `output` (`float32`, dynamic audio length)
83
- - ONNX Runtime CPU probes: 19/19 finite, positive-length outputs
84
- - Gouya.app `onnxruntime-web@1.27.0` WASM smoke test: passed using the application's real `rizehPhoneTextToIds` mapping
85
-
86
- Machine-readable receipts are in `browser/`.
87
-
88
- ## Inference and long-form use
89
-
90
- Input must already be case-sensitive Negara-compatible phonetic text. Example:
91
 
92
  ```bash
93
  echo "zurxAneye vahdat yek makAne varzeSi dar Sahre borujerd ast." | \
@@ -96,15 +91,14 @@ echo "zurxAneye vahdat yek makAne varzeSi dar Sahre borujerd ast." | \
96
  --output_file output.wav
97
  ```
98
 
99
- For long-form narration, do not send an article as one model input. Split at semantic sentence/clause boundaries into substantial spans, synthesize each span independently, trim quiet waveform edges, and join with boundary-aware pauses. The final output duration can be arbitrarily long even though each model invocation remains bounded.
100
 
101
  ## Limitations
102
 
103
- - Lower validation mel loss did not guarantee universally better pronunciation. Human listening found some words, including proper nouns, better at the earlier 2K checkpoint or the original v1.5 model.
104
  - G2P/Finglish quality remains the dominant source of pronunciation errors.
105
- - Very long single-pass phoneme sequences can collapse or omit content; use chunked synthesis.
106
- - Overly small chunks sound breathy and robotic. Prefer substantial semantic spans instead of fixed tiny fragments.
107
- - Browser export validation does not by itself constitute live Gouya.app promotion; the deployed consumer path must still be tested after rollout.
108
 
109
  ## License
110
 
 
19
 
20
  # Gooya RizehPizeh v2
21
 
22
+ Persian single-speaker Piper/VITS2 voice trained on full, unchunked Wikipedia recordings whose audio/transcript agreement passed AvaSanj. It uses a case-sensitive Negara-style phonetic/Finglish frontend and produces 22,050 Hz mono audio.
23
 
24
+ ## Current release
25
 
26
+ This revision replaces the earlier segmented-data v2 model with the user-selected unchunked/AvaSanj-approved 50K run.
27
 
28
+ - Full checkpoint: `checkpoint/gooya-rizehpizeh-v2-unchunked-avasanj-step50000-val_mel0.4138.ckpt`
29
+ - Checkpoint SHA-256: `8b52b3b6060b4698aba0c8bbd2f9b338aa6ba811d28a620e5f492c0fa1ae4d2b`
30
+ - Piper/browser model: `gooya-rizehpizeh-v2.onnx`
31
+ - ONNX SHA-256: `3f85f450fc21415e1eddaa0aa894c667e76d14aa9a342c4e77f1f9009b96f170`
32
+ - ONNX config SHA-256: `981770210ac1aea618cb8134597127911051deabf9900824df3388f209a884fa`
33
  - Generator parameters: approximately 23.7M
 
 
 
 
34
  - Sample rate: 22,050 Hz
35
  - Speakers: 1
36
  - Phoneme type: `text`
37
  - Symbol inventory: 256 IDs
38
 
39
+ ## Training data
40
 
41
+ The parent corpus comes from the approved Persian rows in [`Reza2kn/Wikipedia-FA-EN-DeepSeek-V4-Flash-0731`](https://huggingface.co/datasets/Reza2kn/Wikipedia-FA-EN-DeepSeek-V4-Flash-0731).
42
 
43
+ - Train: 1,290 full recordings, 21.1455 hours
44
+ - Parent-disjoint validation: 100 full recordings, 1.6445 hours
45
+ - Untouched sealed-eval agreement slice: 253 recordings, 4.1080 hours
46
+ - Recording duration: 38.68–95.96 seconds; mean 58.94 seconds
47
+ - Phoneme IDs per recording: 1,711–3,423; mean 2,174.65
48
+ - AvaSanj compact CER threshold: `<= 0.12`
49
+ - Train/validation/sealed-eval parent overlap: zero
50
+ - Audio transform: none
51
+ - Silence trimming: disabled
52
+ - Segmentation/chunking: none
53
 
54
+ The 253-row sealed-eval agreement slice was not consumed by training or checkpoint selection. The complete selection and hash receipt is in `training/unchunked-avasanj-agree-report.json`.
 
 
55
 
56
+ ## Lineage and training
57
 
58
+ The original v1.5 production ONNX had no matching resumable checkpoint. Its 350 inference-time generator tensors were reconstructed into a compatible trainable Piper checkpoint; training-only branches absent from the ONNX came from the compatible Mana template. Recovery receipts remain under `training/`.
59
 
60
+ The promoted run resumed from that recovered v1.5 state and used:
61
 
62
+ - BF16 mixed precision
63
+ - Batch size 1
64
+ - Generator learning rate `5e-6`
65
+ - Discriminator learning rate `2.5e-6`
66
+ - Configured limit: 50,000 optimizer steps
67
+ - Final/best validation mel: `0.4138`
 
 
68
 
69
+ The exact continuation script is `training/train_unchunked_avasanj_agree_full50k.sh`.
70
 
71
+ ## Validation
72
 
73
+ The published ONNX is self-contained and has no external tensor file. Direct ONNX Runtime CPU inference passed on both the canonical and long colloquial probes with finite, positive-length output. The same WAVs used for human listening are included under `samples/`.
 
 
 
 
 
74
 
75
+ - Inputs: `input`, `input_lengths`, `scales`
76
+ - Output: `output`
77
+ - File size: 63,516,051 bytes
78
+ - Canonical sample: 4.7137 seconds
79
+ - Long colloquial sample: 12.6084 seconds
80
 
81
+ Machine-readable receipts are under `browser/` and `training/`.
82
 
83
+ ## Inference
84
 
85
+ Input must already be case-sensitive Negara-compatible phonetic text:
 
 
 
 
 
 
 
 
 
 
86
 
87
  ```bash
88
  echo "zurxAneye vahdat yek makAne varzeSi dar Sahre borujerd ast." | \
 
91
  --output_file output.wav
92
  ```
93
 
94
+ For long-form narration, split at semantic sentence or clause boundaries into substantial spans and join them with boundary-aware pauses. Tiny fixed chunks tend to sound breathy and robotic.
95
 
96
  ## Limitations
97
 
 
98
  - G2P/Finglish quality remains the dominant source of pronunciation errors.
99
+ - The approved training labels are flat Negara phoneme sequences; existing internal punctuation was not available in those labels.
100
+ - Very long single-pass phoneme sequences can still collapse or omit content; use substantial semantic spans.
101
+ - Proper nouns may require corrected phonetic input.
102
 
103
  ## License
104
 
browser/browser-wasm-smoke-report.json DELETED
@@ -1,19 +0,0 @@
1
- {
2
- "duration_seconds": 2.9373242630385485,
3
- "finite": true,
4
- "input_ids": 131,
5
- "model_sha256": "675c557524a325cc014e27acb7bb9f7eab584d3247216f934e8a378b709a2d3b",
6
- "output_dims": [
7
- 1,
8
- 1,
9
- 1,
10
- 64768
11
- ],
12
- "output_samples": 64768,
13
- "peak": 0.7937009930610657,
14
- "provider": "wasm",
15
- "runtime": "onnxruntime-web@1.27.0",
16
- "schema_version": "gooya.rizehpizeh-v2-browser-smoke/v1",
17
- "status": "accepted",
18
- "test_phone_text": "zurxAneye vahdat yek makAne varzeSi dar Sahre borujerd ast."
19
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
browser/onnx-export-report.json DELETED
@@ -1,314 +0,0 @@
1
- {
2
- "bytes": 63516051,
3
- "config_sha256": "981770210ac1aea618cb8134597127911051deabf9900824df3388f209a884fa",
4
- "deterministic_scales": [
5
- 0.0,
6
- 1.0,
7
- 0.0
8
- ],
9
- "external_data": false,
10
- "inputs": [
11
- {
12
- "name": "input",
13
- "shape": [
14
- "batch_size",
15
- "phonemes"
16
- ],
17
- "type": "tensor(int64)"
18
- },
19
- {
20
- "name": "input_lengths",
21
- "shape": [
22
- "batch_size"
23
- ],
24
- "type": "tensor(int64)"
25
- },
26
- {
27
- "name": "scales",
28
- "shape": [
29
- 3
30
- ],
31
- "type": "tensor(float)"
32
- }
33
- ],
34
- "ir_version": 8,
35
- "onnx_sha256": "675c557524a325cc014e27acb7bb9f7eab584d3247216f934e8a378b709a2d3b",
36
- "opsets": [
37
- {
38
- "domain": "",
39
- "version": 15
40
- }
41
- ],
42
- "outputs": [
43
- {
44
- "name": "output",
45
- "shape": [
46
- "batch_size",
47
- 1,
48
- 1,
49
- "Unsqueezeoutput_dim_3"
50
- ],
51
- "type": "tensor(float)"
52
- }
53
- ],
54
- "providers": [
55
- "CPUExecutionProvider"
56
- ],
57
- "rows": [
58
- {
59
- "finite": true,
60
- "output_shape": [
61
- 1,
62
- 1,
63
- 1,
64
- 137728
65
- ],
66
- "peak": 0.8556598424911499,
67
- "phone_ids": 321,
68
- "samples": 137728,
69
- "utterance": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/audio/eval/wiki-fa-0014-11c7af4978b2--000.flac"
70
- },
71
- {
72
- "finite": true,
73
- "output_shape": [
74
- 1,
75
- 1,
76
- 1,
77
- 133888
78
- ],
79
- "peak": 0.7498155236244202,
80
- "phone_ids": 319,
81
- "samples": 133888,
82
- "utterance": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/audio/eval/wiki-fa-0014-11c7af4978b2--001.flac"
83
- },
84
- {
85
- "finite": true,
86
- "output_shape": [
87
- 1,
88
- 1,
89
- 1,
90
- 136448
91
- ],
92
- "peak": 0.8162416219711304,
93
- "phone_ids": 287,
94
- "samples": 136448,
95
- "utterance": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/audio/eval/wiki-fa-0014-11c7af4978b2--002.flac"
96
- },
97
- {
98
- "finite": true,
99
- "output_shape": [
100
- 1,
101
- 1,
102
- 1,
103
- 129280
104
- ],
105
- "peak": 0.7922796010971069,
106
- "phone_ids": 325,
107
- "samples": 129280,
108
- "utterance": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/audio/eval/wiki-fa-0014-11c7af4978b2--003.flac"
109
- },
110
- {
111
- "finite": true,
112
- "output_shape": [
113
- 1,
114
- 1,
115
- 1,
116
- 141312
117
- ],
118
- "peak": 0.8399786353111267,
119
- "phone_ids": 217,
120
- "samples": 141312,
121
- "utterance": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/audio/eval/wiki-fa-0014-11c7af4978b2--004.flac"
122
- },
123
- {
124
- "finite": true,
125
- "output_shape": [
126
- 1,
127
- 1,
128
- 1,
129
- 147456
130
- ],
131
- "peak": 0.839239776134491,
132
- "phone_ids": 253,
133
- "samples": 147456,
134
- "utterance": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/audio/eval/wiki-fa-0014-11c7af4978b2--005.flac"
135
- },
136
- {
137
- "finite": true,
138
- "output_shape": [
139
- 1,
140
- 1,
141
- 1,
142
- 62464
143
- ],
144
- "peak": 0.8430166244506836,
145
- "phone_ids": 113,
146
- "samples": 62464,
147
- "utterance": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/audio/eval/wiki-fa-0014-11c7af4978b2--006.flac"
148
- },
149
- {
150
- "finite": true,
151
- "output_shape": [
152
- 1,
153
- 1,
154
- 1,
155
- 150016
156
- ],
157
- "peak": 0.8254867792129517,
158
- "phone_ids": 407,
159
- "samples": 150016,
160
- "utterance": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/audio/eval/wiki-fa-0020-badd7f9a1cf9--000.flac"
161
- },
162
- {
163
- "finite": true,
164
- "output_shape": [
165
- 1,
166
- 1,
167
- 1,
168
- 84480
169
- ],
170
- "peak": 0.8269263505935669,
171
- "phone_ids": 197,
172
- "samples": 84480,
173
- "utterance": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/audio/eval/wiki-fa-0020-badd7f9a1cf9--001.flac"
174
- },
175
- {
176
- "finite": true,
177
- "output_shape": [
178
- 1,
179
- 1,
180
- 1,
181
- 135680
182
- ],
183
- "peak": 0.7935409545898438,
184
- "phone_ids": 301,
185
- "samples": 135680,
186
- "utterance": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/audio/eval/wiki-fa-0020-badd7f9a1cf9--002.flac"
187
- },
188
- {
189
- "finite": true,
190
- "output_shape": [
191
- 1,
192
- 1,
193
- 1,
194
- 122880
195
- ],
196
- "peak": 0.8605506420135498,
197
- "phone_ids": 235,
198
- "samples": 122880,
199
- "utterance": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/audio/eval/wiki-fa-0020-badd7f9a1cf9--003.flac"
200
- },
201
- {
202
- "finite": true,
203
- "output_shape": [
204
- 1,
205
- 1,
206
- 1,
207
- 122624
208
- ],
209
- "peak": 0.7984231114387512,
210
- "phone_ids": 289,
211
- "samples": 122624,
212
- "utterance": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/audio/eval/wiki-fa-0020-badd7f9a1cf9--004.flac"
213
- },
214
- {
215
- "finite": true,
216
- "output_shape": [
217
- 1,
218
- 1,
219
- 1,
220
- 142336
221
- ],
222
- "peak": 0.8614963293075562,
223
- "phone_ids": 321,
224
- "samples": 142336,
225
- "utterance": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/audio/eval/wiki-fa-0020-badd7f9a1cf9--005.flac"
226
- },
227
- {
228
- "finite": true,
229
- "output_shape": [
230
- 1,
231
- 1,
232
- 1,
233
- 48384
234
- ],
235
- "peak": 0.8291678428649902,
236
- "phone_ids": 99,
237
- "samples": 48384,
238
- "utterance": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/audio/eval/wiki-fa-0020-badd7f9a1cf9--006.flac"
239
- },
240
- {
241
- "finite": true,
242
- "output_shape": [
243
- 1,
244
- 1,
245
- 1,
246
- 118784
247
- ],
248
- "peak": 0.7483747005462646,
249
- "phone_ids": 305,
250
- "samples": 118784,
251
- "utterance": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/audio/eval/wiki-fa-0021-d0f01be99058--000.flac"
252
- },
253
- {
254
- "finite": true,
255
- "output_shape": [
256
- 1,
257
- 1,
258
- 1,
259
- 141056
260
- ],
261
- "peak": 0.8492122888565063,
262
- "phone_ids": 323,
263
- "samples": 141056,
264
- "utterance": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/audio/eval/wiki-fa-0021-d0f01be99058--001.flac"
265
- },
266
- {
267
- "finite": true,
268
- "output_shape": [
269
- 1,
270
- 1,
271
- 1,
272
- 151552
273
- ],
274
- "peak": 0.7924327254295349,
275
- "phone_ids": 277,
276
- "samples": 151552,
277
- "utterance": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/audio/eval/wiki-fa-0021-d0f01be99058--002.flac"
278
- },
279
- {
280
- "finite": true,
281
- "output_shape": [
282
- 1,
283
- 1,
284
- 1,
285
- 133120
286
- ],
287
- "peak": 0.8153193593025208,
288
- "phone_ids": 291,
289
- "samples": 133120,
290
- "utterance": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/audio/eval/wiki-fa-0021-d0f01be99058--003.flac"
291
- },
292
- {
293
- "finite": true,
294
- "output_shape": [
295
- 1,
296
- 1,
297
- 1,
298
- 118528
299
- ],
300
- "peak": 0.7740210890769958,
301
- "phone_ids": 267,
302
- "samples": 118528,
303
- "utterance": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/audio/eval/wiki-fa-0021-d0f01be99058--004.flac"
304
- }
305
- ],
306
- "schema_version": "gooya.rizehpizeh-v2-onnx-export/v1",
307
- "source_checkpoint_sha256": "0c2d22718894e20fb6361c7bf2d75ee54d61db3a167983ce5d843ff6ed438938",
308
- "status": "accepted",
309
- "summary": {
310
- "finite_rows": 19,
311
- "positive_length_rows": 19,
312
- "rows": 19
313
- }
314
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
browser/onnx-runtime-smoke-report.json ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "schema_version": "gooya.rizehpizeh-v2-unchunked-onnx-smoke/v1",
3
+ "model_sha256": "3f85f450fc21415e1eddaa0aa894c667e76d14aa9a342c4e77f1f9009b96f170",
4
+ "config_sha256": "981770210ac1aea618cb8134597127911051deabf9900824df3388f209a884fa",
5
+ "bytes": 63516051,
6
+ "onnxruntime_version": "1.23.2",
7
+ "providers": ["CPUExecutionProvider"],
8
+ "inputs": [
9
+ {"name": "input", "type": "tensor(int64)", "shape": ["batch_size", "phonemes"]},
10
+ {"name": "input_lengths", "type": "tensor(int64)", "shape": ["batch_size"]},
11
+ {"name": "scales", "type": "tensor(float)", "shape": [3]}
12
+ ],
13
+ "outputs": [
14
+ {"name": "output", "type": "tensor(float)", "shape": ["batch_size", 1, 1, "Unsqueezeoutput_dim_3"]}
15
+ ],
16
+ "scales": [0.667, 1, 0.8],
17
+ "rows": [
18
+ {"name": "canonical", "phone_ids": 181, "output_shape": [1, 1, 1, 99328], "samples": 99328, "finite": true, "peak": 0.8139110207557678},
19
+ {"name": "long_colloquial", "phone_ids": 571, "output_shape": [1, 1, 1, 283136], "samples": 283136, "finite": true, "peak": 0.8082336783409119}
20
+ ],
21
+ "passed": true
22
+ }
checkpoint/{gooya-rizehpizeh-v2-step50000-val_mel0.3951.ckpt → gooya-rizehpizeh-v2-unchunked-avasanj-step50000-val_mel0.4138.ckpt} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:0c2d22718894e20fb6361c7bf2d75ee54d61db3a167983ce5d843ff6ed438938
3
- size 845890322
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8b52b3b6060b4698aba0c8bbd2f9b338aa6ba811d28a620e5f492c0fa1ae4d2b
3
+ size 845890386
gooya-rizehpizeh-v2.onnx CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:675c557524a325cc014e27acb7bb9f7eab584d3247216f934e8a378b709a2d3b
3
  size 63516051
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3f85f450fc21415e1eddaa0aa894c667e76d14aa9a342c4e77f1f9009b96f170
3
  size 63516051
release-manifest.json CHANGED
@@ -1,73 +1,48 @@
1
  {
2
- "files": [
3
- {
4
- "bytes": 1519,
5
- "path": ".gitattributes",
6
- "sha256": "11ad7efa24975ee4b0c3c3a38ed18737f0658a5f75a0a96787b576a78a023361"
7
- },
8
- {
9
- "bytes": 1064,
10
- "path": "LICENSE",
11
- "sha256": "beacc839712cc8db59ad2997b52edb77946461593219d82276e39ba7e404f7ef"
12
- },
13
- {
14
- "bytes": 4933,
15
- "path": "README.md",
16
- "sha256": "8699cb2c567fb8c0c4a52ea9e0edb691bbd79c7f44d81b1b52f75bdaf10e3439"
17
- },
18
- {
19
- "bytes": 510,
20
- "path": "browser/browser-wasm-smoke-report.json",
21
- "sha256": "ce1202b0675cf3c72944334bb1fbd61997af34e7ddc2d15166fd35b617cd54a0"
22
- },
23
- {
24
- "bytes": 7588,
25
- "path": "browser/onnx-export-report.json",
26
- "sha256": "e1812cdfd6dd31768245b90f13e47b6785346e9f1b09083cb6bfd57b7d093d0f"
27
- },
28
- {
29
- "bytes": 845890322,
30
- "path": "checkpoint/gooya-rizehpizeh-v2-step50000-val_mel0.3951.ckpt",
31
- "sha256": "0c2d22718894e20fb6361c7bf2d75ee54d61db3a167983ce5d843ff6ed438938"
32
- },
33
- {
34
- "bytes": 3642,
35
- "path": "config/negara-phoneme-id-map.json",
36
- "sha256": "6e67148a46b9bf5a3529c97cc1fa60a10f477d0bd80e61a1fb1a24ad59eefe83"
37
- },
38
- {
39
  "bytes": 63516051,
40
- "path": "gooya-rizehpizeh-v2.onnx",
41
- "sha256": "675c557524a325cc014e27acb7bb9f7eab584d3247216f934e8a378b709a2d3b"
42
  },
43
- {
44
  "bytes": 5000,
45
- "path": "gooya-rizehpizeh-v2.onnx.json",
46
  "sha256": "981770210ac1aea618cb8134597127911051deabf9900824df3388f209a884fa"
47
  },
48
- {
49
- "bytes": 1903,
50
- "path": "training/alignment-report.json",
51
- "sha256": "b8dff1be540f03404b05d552eac009f5ca1781c5190898622851331ac44de325"
52
  },
53
- {
54
- "bytes": 9626,
55
- "path": "training/base-onnx-roundtrip-parity.json",
56
- "sha256": "1e1346518a1cd72c7b8d9368845c89206ba026d78417af753a32f9c41fdaef59"
 
 
57
  },
58
- {
59
- "bytes": 82458,
60
- "path": "training/checkpoint-recovery-report.json",
61
- "sha256": "ec0bb47bbf07c5bfeff92ab68ec57e1099d94cd5172d087f8f6694e5ce20e178"
62
  },
63
- {
64
- "bytes": 2913,
65
- "path": "training/train_rizeh_full_100k.sh",
66
- "sha256": "3b7a08aee6af72a787000a62b209fdf70c8726a65a8a5e66176c4106158f392c"
67
  }
68
- ],
69
- "schema_version": "gooya.rizehpizeh-v2-release/v1",
70
- "selected_global_step": 50000,
71
- "selected_val_mel": 0.3951,
72
- "status": "checkpoint-and-browser-onnx-ready"
 
 
 
 
 
 
 
73
  }
 
1
  {
2
+ "schema_version": "gooya.rizehpizeh-v2-release/v2",
3
+ "release": "unchunked-avasanj-agree-50k",
4
+ "model_repo": "Reza2kn/Gooya-RizehPizeh-v2",
5
+ "sample_rate": 22050,
6
+ "files": {
7
+ "checkpoint/gooya-rizehpizeh-v2-unchunked-avasanj-step50000-val_mel0.4138.ckpt": {
8
+ "bytes": 845890386,
9
+ "sha256": "8b52b3b6060b4698aba0c8bbd2f9b338aa6ba811d28a620e5f492c0fa1ae4d2b"
10
+ },
11
+ "gooya-rizehpizeh-v2.onnx": {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12
  "bytes": 63516051,
13
+ "sha256": "3f85f450fc21415e1eddaa0aa894c667e76d14aa9a342c4e77f1f9009b96f170"
 
14
  },
15
+ "gooya-rizehpizeh-v2.onnx.json": {
16
  "bytes": 5000,
 
17
  "sha256": "981770210ac1aea618cb8134597127911051deabf9900824df3388f209a884fa"
18
  },
19
+ "samples/canonical-intro.wav": {
20
+ "bytes": 207916,
21
+ "sha256": "d9978de38d5d9db03aa2dcedbaa357bd88c4fd2ec8ede8b3ac8c088e50682713"
 
22
  },
23
+ "samples/long-colloquial.wav": {
24
+ "bytes": 556076,
25
+ "sha256": "cc0c864c5b4d414f7b35d9506dacc120d2fafc15fd9c29f9be55c60e5525aa6d"
26
+ },
27
+ "config/negara-phoneme-id-map.json": {
28
+ "sha256": "6e67148a46b9bf5a3529c97cc1fa60a10f477d0bd80e61a1fb1a24ad59eefe83"
29
  },
30
+ "training/unchunked-avasanj-agree-report.json": {
31
+ "sha256": "e03203d01d94421a08e65c64806f40d084085714d8e260982f0e8e7a888c3ee6"
 
 
32
  },
33
+ "training/train_unchunked_avasanj_agree_full50k.sh": {
34
+ "sha256": "d4c08c3cec513bd6cb829b91ed111bc8656283d47a482bd8fe850c590f7c571a"
 
 
35
  }
36
+ },
37
+ "training": {
38
+ "train_parents": 1290,
39
+ "validation_parents": 100,
40
+ "sealed_eval_agree_parents": 253,
41
+ "parent_overlap": 0,
42
+ "audio_chunking": false,
43
+ "trim_silence": false,
44
+ "avasanj_compact_cer_max_inclusive": 0.12,
45
+ "max_optimizer_steps": 50000,
46
+ "best_val_mel": 0.4137682318687439
47
+ }
48
  }
samples/canonical-intro.wav ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d9978de38d5d9db03aa2dcedbaa357bd88c4fd2ec8ede8b3ac8c088e50682713
3
+ size 207916
samples/long-colloquial.wav ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:cc0c864c5b4d414f7b35d9506dacc120d2fafc15fd9c29f9be55c60e5525aa6d
3
+ size 556076
training/alignment-report.json DELETED
@@ -1,48 +0,0 @@
1
- {
2
- "models": {
3
- "avasanj_model_sha256": "c7ea4f6c1e510e4c23bbc1856c290787f20a730d14c4d95de45c03259d5dd07c",
4
- "mana_config_sha256": "df13724ca155a8699d8c42d47d5748dee98ec8057cafdaed8b1455fc85798753",
5
- "mana_phoneme_map_sha256": "ba38263aec458bca093a0e60629a442dfb365bd7ef79e70be58c311ba886f868",
6
- "negara_model_sha256": "2d89883abe07082cfb291203c1e5609f8974e71ca04d6c3e73bf2d32f8b715cf",
7
- "negara_overlay_sha256": "9e063c2f26db4f56f6a93fef33f1f2a25423318ff7073b9954fddf4c4085412f",
8
- "negara_runtime_map_sha256": "6e67148a46b9bf5a3529c97cc1fa60a10f477d0bd80e61a1fb1a24ad59eefe83"
9
- },
10
- "outputs": {
11
- "eval_metadata_sha256": "587ff471a78e61f471d524435f9bbe9c750378861185bf27b88656d27d41652d",
12
- "segments_sha256": "f7fd2abb87bd73b4e80dc8a5cd23acb9a8fafd480d56ab9d500bacbbb7b5d4ed",
13
- "train_metadata_sha256": "3077e23e86a97454b36c1d5c7d2b34108b332752b3f600811418714af8928320"
14
- },
15
- "parent_manifest": "/home/rezo/gooya-bozorg-v15-gemini-approved-20260829/training_manifest.jsonl",
16
- "parent_manifest_sha256": "d285458025385945d10e733bdea74080f544c4aa3c621454686d6ffe7678f345",
17
- "parent_rows_requested": 4186,
18
- "parent_split_counts": {
19
- "eval": 669,
20
- "train": 3517
21
- },
22
- "parent_status_counts": {
23
- "complete": 4116,
24
- "rejected": 70
25
- },
26
- "schema_version": "gooya.piper-wikipedia-aligned/v1",
27
- "segment_duration_seconds": {
28
- "max": 21.665583333333334,
29
- "mean": 8.020255083696643,
30
- "min": 0.6307083333333333
31
- },
32
- "segment_hours": 68.98533296296293,
33
- "segment_rows": 30965,
34
- "segment_split_counts": {
35
- "eval": 4912,
36
- "train": 26053
37
- },
38
- "segmentation": {
39
- "audio_timing_source": "AvaSanj v1 CTC forced alignment",
40
- "edge_padding_seconds": 0.08,
41
- "maximum_seconds": 12.0,
42
- "minimum_seconds": 2.0,
43
- "parent_split_preserved": true,
44
- "target_seconds": 8.0,
45
- "training_label_source": "Negara v7.1"
46
- },
47
- "status": "complete"
48
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
training/train_rizeh_full_100k.sh DELETED
@@ -1,82 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -euo pipefail
3
-
4
- root=/home/rezo/piper-wikipedia-approved-20260830
5
- data="${root}/data/aligned-full-v1"
6
- signal_run="${root}/runs/rizeh-recovered-approved-signal-2000"
7
- run="${root}/runs/rizeh-recovered-approved-full-100k"
8
- resume_checkpoint="${signal_run}/lightning_logs/version_1/checkpoints/last.ckpt"
9
-
10
- [[ -s "${resume_checkpoint}" ]]
11
- [[ "$(jq -r .status "${data}/report.json")" == complete ]]
12
- mkdir -p "${run}"
13
-
14
- cd "${root}/src/piper1-gpl"
15
- "${root}/venv/bin/python" -m piper.train fit \
16
- --trainer.accelerator gpu \
17
- --trainer.devices 1 \
18
- --trainer.precision bf16-mixed \
19
- --trainer.max_steps 100000 \
20
- --trainer.num_sanity_val_steps 0 \
21
- --trainer.val_check_interval 500 \
22
- --trainer.limit_val_batches 25 \
23
- --trainer.log_every_n_steps 10 \
24
- --trainer.enable_progress_bar false \
25
- --trainer.default_root_dir "${run}" \
26
- --model.sample_rate 22050 \
27
- --model.num_speakers 1 \
28
- --model.warmstart_ckpt null \
29
- --model.learning_rate 0.00001 \
30
- --model.learning_rate_d 0.000005 \
31
- --model.mos_metric null \
32
- --data.voice_name gooya-rizehpizeh-wikipedia-kore-full-100k \
33
- --data.csv_path "${data}/metadata-train.csv" \
34
- --data.audio_dir / \
35
- --data.cache_dir "${root}/cache/aligned-full-v1" \
36
- --data.config_path "${signal_run}/model.onnx.json" \
37
- --data.batch_size 1 \
38
- --data.validation_split 0.01 \
39
- --data.num_test_examples 0 \
40
- --data.num_workers 2 \
41
- --data.trim_silence false \
42
- --data.phoneme_type text \
43
- --data.dataset_type phoneme_ids \
44
- --data.phonemes_path "${data}/negara-phoneme-id-map.json" \
45
- --data.espeak_voice fa \
46
- --data.num_symbols 256 \
47
- --ckpt_path "${resume_checkpoint}"
48
-
49
- last_checkpoint=$(find "${run}" -name last.ckpt -type f -printf '%T@ %p\n' | sort -nr | head -1 | cut -d' ' -f2-)
50
- best_checkpoint=$("${root}/venv/bin/python" - "${run}" <<'PY'
51
- import re
52
- import sys
53
- from pathlib import Path
54
-
55
- run = Path(sys.argv[1])
56
- candidates = []
57
- for path in run.glob("lightning_logs/version_*/checkpoints/*val_mel=*.ckpt"):
58
- match = re.search(r"val_mel=([0-9.]+)\.ckpt$", path.name)
59
- if match:
60
- candidates.append((float(match.group(1)), str(path)))
61
- if not candidates:
62
- raise SystemExit("No validation checkpoint found")
63
- print(min(candidates)[1])
64
- PY
65
- )
66
- [[ -s "${last_checkpoint}" ]]
67
- [[ -s "${best_checkpoint}" ]]
68
-
69
- "${root}/venv/bin/python" -m piper.train.export_onnx \
70
- --checkpoint "${best_checkpoint}" \
71
- --output-file "${run}/model-best.onnx"
72
-
73
- printf '%s\n' 'zurxAneye vahdat yek makAne varzeSi dar Sahre borujerd ast.' | \
74
- "${root}/venv/bin/python" -m piper \
75
- -m "${run}/model-best.onnx" \
76
- -f "${run}/zurxane-full-100k-best.wav" \
77
- --length-scale 1.15
78
-
79
- sha256sum "${last_checkpoint}" "${best_checkpoint}" "${run}/model-best.onnx" \
80
- "${run}/model-best.onnx.json" "${run}/zurxane-full-100k-best.wav" \
81
- > "${run}/sha256sums.txt"
82
- echo "full_complete_utc=$(date -u +%FT%TZ) last=${last_checkpoint} best=${best_checkpoint}"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
training/train_unchunked_avasanj_agree_full50k.sh ADDED
@@ -0,0 +1,81 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+
4
+ root=/home/rezo/piper-wikipedia-approved-20260830
5
+ data="${root}/data/unchunked-avasanj-agree-v1"
6
+ run="${root}/runs/rizeh-unchunked-avasanj-agree-gate500"
7
+ cache="${root}/cache/unchunked-avasanj-agree-v1"
8
+ resume="${run}/lightning_logs/version_0/checkpoints/last.ckpt"
9
+
10
+ exec 9>"${root}/runs/rizeh-unchunked-avasanj-agree-full50k.lock"
11
+ flock -n 9 || { echo "full50k is already running" >&2; exit 73; }
12
+
13
+ [[ "$(jq -r .status "${data}/report.json")" == complete ]]
14
+ [[ "$(jq -r .rows.train "${data}/report.json")" == 1290 ]]
15
+ [[ "$(jq -r .rows.validation "${data}/report.json")" == 100 ]]
16
+ [[ "$(jq -r '.parent_overlap.train.validation' "${data}/report.json")" == 0 ]]
17
+ [[ "$(wc -l < "${data}/metadata-fit-parent-disjoint.csv")" == 1390 ]]
18
+ [[ -s "${resume}" ]]
19
+ [[ -s "${run}/model.onnx.json" ]]
20
+
21
+ cd "${root}/src/piper1-gpl"
22
+ export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
23
+ "${root}/venv/bin/python" -m piper.train fit \
24
+ --ckpt_path "${resume}" \
25
+ --trainer.accelerator gpu \
26
+ --trainer.devices 1 \
27
+ --trainer.precision bf16-mixed \
28
+ --trainer.max_steps 50000 \
29
+ --trainer.num_sanity_val_steps 0 \
30
+ --trainer.val_check_interval 500 \
31
+ --trainer.limit_val_batches 25 \
32
+ --trainer.log_every_n_steps 10 \
33
+ --trainer.enable_progress_bar false \
34
+ --trainer.default_root_dir "${run}" \
35
+ --model.sample_rate 22050 \
36
+ --model.num_speakers 1 \
37
+ --model.warmstart_ckpt "${root}/models/rizeh-onnx-recovery/rizehpizeh-epoch4-recovered-trainable.ckpt" \
38
+ --model.learning_rate 0.000005 \
39
+ --model.learning_rate_d 0.0000025 \
40
+ --model.mos_metric null \
41
+ --data.voice_name gooya-rizehpizeh-unchunked-avasanj-agree-full50k \
42
+ --data.csv_path "${data}/metadata-fit-parent-disjoint.csv" \
43
+ --data.audio_dir / \
44
+ --data.cache_dir "${cache}" \
45
+ --data.config_path "${run}/model.onnx.json" \
46
+ --data.batch_size 1 \
47
+ --data.validation_split 0.07194244604316546 \
48
+ --data.num_test_examples 0 \
49
+ --data.num_workers 2 \
50
+ --data.trim_silence false \
51
+ --data.phoneme_type text \
52
+ --data.dataset_type phoneme_ids \
53
+ --data.phonemes_path "${root}/data/aligned-full-v1/negara-phoneme-id-map.json" \
54
+ --data.espeak_voice fa \
55
+ --data.num_symbols 256
56
+
57
+ checkpoint=$(find "${run}" -name last.ckpt -type f -printf '%T@ %p\n' | sort -nr | head -1 | cut -d' ' -f2-)
58
+ [[ -s "${checkpoint}" ]]
59
+ "${root}/venv/bin/python" -m piper.train.export_onnx \
60
+ --checkpoint "${checkpoint}" \
61
+ --output-file "${run}/model-step50000.onnx"
62
+ cp "${run}/model.onnx.json" "${run}/model-step50000.onnx.json"
63
+
64
+ printf '%s\n' 'salAm! man guyA hastam va in sedA haminjA dAxele morurare SomA sAxte Sode ast.' | \
65
+ "${root}/venv/bin/python" -m piper \
66
+ -m "${run}/model-step50000.onnx" \
67
+ -f "${run}/canonical-intro-step50000.wav" \
68
+ --length-scale 1.0
69
+
70
+ printf '%s\n' 'salAm az beyne dostAn kasi sAyte rAyegAne tabdile matn be goftAr besurate xodemuni va mohAverei be zabAne fArsi bege miSnAse moQarrefi kone takid mikonam xorujiye fAyl be surate moddat zamAne tulAni mixAham mahdudiyyate moddate zamAn nadASte bASe.' | \
71
+ "${root}/venv/bin/python" -m piper \
72
+ -m "${run}/model-step50000.onnx" \
73
+ -f "${run}/long-colloquial-step50000.wav" \
74
+ --length-scale 1.0
75
+
76
+ sha256sum "${checkpoint}" "${run}/model-step50000.onnx" \
77
+ "${run}/model-step50000.onnx.json" \
78
+ "${run}/canonical-intro-step50000.wav" \
79
+ "${run}/long-colloquial-step50000.wav" \
80
+ > "${run}/sha256sums-step50000.txt"
81
+ echo "full50k_complete_utc=$(date -u +%FT%TZ) checkpoint=${checkpoint}"
training/unchunked-avasanj-agree-report.json ADDED
@@ -0,0 +1,68 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "duration_seconds": {
3
+ "max": 95.96,
4
+ "mean": 58.93640900791231,
5
+ "min": 38.68
6
+ },
7
+ "excluded_reasons": {
8
+ "avasanj_not_agree": 2473,
9
+ "parent_alignment_not_complete": 70
10
+ },
11
+ "hours": {
12
+ "sealed_eval_agree": 4.107966666666665,
13
+ "train": 21.145477777777785,
14
+ "validation": 1.6444777777777777
15
+ },
16
+ "inputs": {
17
+ "mana_phoneme_map": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/mana-phoneme-id-map.json",
18
+ "mana_phoneme_map_sha256": "ba38263aec458bca093a0e60629a442dfb365bd7ef79e70be58c311ba886f868",
19
+ "manifest": "/home/rezo/gooya-bozorg-v15-gemini-approved-20260829/training_manifest.jsonl",
20
+ "manifest_sha256": "d285458025385945d10e733bdea74080f544c4aa3c621454686d6ffe7678f345",
21
+ "parents": "/home/rezo/piper-wikipedia-approved-20260830/data/aligned-full-v1/parents.jsonl",
22
+ "parents_sha256": "09f49adf75bc6000b82a81c956555ec00c5a1f2d7a77f6d1ea3d989a2658129a"
23
+ },
24
+ "original_manifest_splits": {
25
+ "eval": 669,
26
+ "train": 3517
27
+ },
28
+ "outputs": {
29
+ "excluded-parents.jsonl": "e508a4ecc721d3b7604c118cc2bdd32990e1c9e0ab93facb4af8d307136f43eb",
30
+ "metadata-fit-parent-disjoint.csv": "39b38a8de0ec8296d60a94c4060e151918e84d91484fa2a0f454a0c1e6828dbd",
31
+ "metadata-sealed_eval_agree.csv": "6bfa808cba6208939bb8fbe61429a8af7a2baab0471ec632bffab1c392527358",
32
+ "metadata-train.csv": "84376168ab6f6aa989604776a2d59b4d8b68a07fdd328d2e0545c556bf855437",
33
+ "metadata-validation.csv": "9c0f873fdd78f67a06c000c2bf4b8543f0ed32dc67e95e72ae7e7c95afaa0517",
34
+ "selected-parents.jsonl": "65e4559957bcdcb301238a04a09681a7070083d854e7546e80fc7949b7ab12b7"
35
+ },
36
+ "parent_overlap": {
37
+ "sealed_eval_agree": {
38
+ "train": 0,
39
+ "validation": 0
40
+ },
41
+ "train": {
42
+ "sealed_eval_agree": 0,
43
+ "validation": 0
44
+ },
45
+ "validation": {
46
+ "sealed_eval_agree": 0,
47
+ "train": 0
48
+ }
49
+ },
50
+ "phoneme_id_count": {
51
+ "max": 3423,
52
+ "mean": 2174.6494217894096,
53
+ "min": 1711
54
+ },
55
+ "rows": {
56
+ "sealed_eval_agree": 253,
57
+ "train": 1290,
58
+ "validation": 100
59
+ },
60
+ "schema_version": "gooya.piper-unchunked-avasanj-agree/v1",
61
+ "selection": {
62
+ "audio_transform": "none",
63
+ "internal_punctuation": "not_present_in_existing_flat_Negara_v7.1_labels",
64
+ "max_avasanj_compact_cer_inclusive": 0.12,
65
+ "terminal_punctuation": "preserved_from_source_when_present_else_period"
66
+ },
67
+ "status": "complete"
68
+ }