Matcha Vi-En
Single-speaker Vietnamese-first Matcha acoustic model with a Vocos ISTFT decoder. weights/matcha-acoustic.pt is the selected epoch-26 checkpoint; weights/vocos-istft.ckpt is the selected step-4912 decoder. The 244-token grapheme vocabulary is phoneme_vocab.json. Audio was generated at 22.05 kHz. English pronunciation is imperfect; evaluate for your intended use.
Training recipe
The private dataset provides 60,000 source WAVs and the exact 58,937 accepted alignments. The original 48 kHz audio must be resampled to 22.05 kHz and 80-band mels computed before training. scripts/prepare_upstream_matcha.py implements this step; it requires a checkout of the Vietnamese Matcha fork and the published base checkpoint. scripts/bootstrap_matcha_source.sh pins fork commit dd75df84f7216c88c08c649208f1e7fda9a62f61 and applies the local patches. The base model revision is 53697a7eee45e377eb6e9e5a8486f0b3933f78d2. Install a CUDA-capable PyTorch build and requirements-matcha-training.txt in a Python environment, then run bash scripts/bootstrap_matcha_source.sh. In that environment, run python -m scripts.matcha_hf_materialize --dataset /path/to/dataset-checkout and python -m scripts.matcha_hf_restore. The first command reconstructs the accepted 22.05 kHz WAVs and normalized mels from the shards and saved alignments. The second installs the retained start checkpoints and the separate 280-item evaluation inputs. Run python -m scripts.matcha_hf_infer --text 'Xin chào bạn.' --output sample.wav to render selected weights. The accepted grapheme pilot checkpoint is the start of full-corpus epochs 19-26; python -m scripts.prepare_matcha_grapheme_full and bash scripts/run_matcha_grapheme_full.sh continue training. The Vocos recipe starts from provenance/vocos-highband-x10-step1500.ckpt, with fixed lower frequency rows. After full materialization and restore, run python -m scripts.prepare_vocos_headband_full select, python -m scripts.prepare_vocos_headband_full generate, then python -m scripts.train_vocos_headband_full. Its selection, loss code and recorded calibration are under scripts/ and provenance/vocos/. These are training sources, not a claim that rerunning GPU training is bitwise deterministic.
The code fork declares MIT licensing; transcript source terms are described in the dataset repository. This private model repository is not assigned a blanket redistribution license.
CPU serving bundle
weights/cpu-onnx/ contains the selected CPU serving export used by the Troly v2 speech service:
matcha_encoder.onnxmatcha_decoder.onnxvocos_spectrum.onnxphoneme_vocab.jsonmodel.jsonwith file hashes and the frontend contract
The bundle uses the original Vietnamese grapheme frontend (vi_grapheme_original_v1) and the deterministic ONNX spectrum/ISTFT Vocos path. It is intended for CPU inference; the PyTorch checkpoints at weights/ remain the training and continuation artifacts.