Delete config.json
Browse files- config.json +0 -121
config.json
DELETED
|
@@ -1,121 +0,0 @@
|
|
| 1 |
-
{
|
| 2 |
-
"_comment": "Runtime config for the StyleTTS2 (LibriTTS) CoreML bundle. Values mirror yl4579/StyleTTS2 Configs/config_libritts.yml at the conversion commit. The host application (Swift/Python) owns the sampler loop, alignment construction, and bucket routing; this file just documents the contract between the host and the shipped mlpackages.",
|
| 3 |
-
|
| 4 |
-
"model_type": "styletts2",
|
| 5 |
-
"checkpoint": "yl4579/StyleTTS2-LibriTTS/Models/LibriTTS/epochs_2nd_00020.pth",
|
| 6 |
-
"library": "coreml",
|
| 7 |
-
"format_versions": ["mlpackage", "mlmodelc"],
|
| 8 |
-
"minimum_deployment_target": {
|
| 9 |
-
"ios": "17.0",
|
| 10 |
-
"macos": "14.0"
|
| 11 |
-
},
|
| 12 |
-
|
| 13 |
-
"audio": {
|
| 14 |
-
"sample_rate": 24000,
|
| 15 |
-
"n_fft": 2048,
|
| 16 |
-
"win_length": 1200,
|
| 17 |
-
"hop_length": 300,
|
| 18 |
-
"n_mels": 80
|
| 19 |
-
},
|
| 20 |
-
|
| 21 |
-
"tokenizer": {
|
| 22 |
-
"type": "espeak-ng-ipa",
|
| 23 |
-
"vocab_file": "constants/text_cleaner_vocab.json",
|
| 24 |
-
"n_tokens": 178,
|
| 25 |
-
"pad_token": "$",
|
| 26 |
-
"pad_id": 0
|
| 27 |
-
},
|
| 28 |
-
|
| 29 |
-
"model": {
|
| 30 |
-
"style_dim": 128,
|
| 31 |
-
"hidden_dim": 512,
|
| 32 |
-
"n_layer": 3,
|
| 33 |
-
"max_dur": 50,
|
| 34 |
-
"ref_s_dim": 256,
|
| 35 |
-
"_ref_s_split_comment": "ref_s is concat([acoustic_ref (128,), prosody_ref (128,)]) — same convention as upstream Inference_LibriTTS.ipynb"
|
| 36 |
-
},
|
| 37 |
-
|
| 38 |
-
"sampler": {
|
| 39 |
-
"type": "ADPM2",
|
| 40 |
-
"schedule": "karras",
|
| 41 |
-
"num_steps": 5,
|
| 42 |
-
"classifier_free_guidance": true,
|
| 43 |
-
"cfg_scale_default": 1.0,
|
| 44 |
-
"_comment": "Sampler loop runs in the host. Each step calls styletts2_diffusion_step_512.mlpackage."
|
| 45 |
-
},
|
| 46 |
-
|
| 47 |
-
"stages": [
|
| 48 |
-
{
|
| 49 |
-
"name": "text_predictor",
|
| 50 |
-
"packages": [
|
| 51 |
-
"styletts2_text_predictor_32.mlpackage",
|
| 52 |
-
"styletts2_text_predictor_64.mlpackage",
|
| 53 |
-
"styletts2_text_predictor_128.mlpackage",
|
| 54 |
-
"styletts2_text_predictor_256.mlpackage",
|
| 55 |
-
"styletts2_text_predictor_512.mlpackage"
|
| 56 |
-
],
|
| 57 |
-
"bucket_axis": "tokens",
|
| 58 |
-
"bucket_sizes": [32, 64, 128, 256, 512],
|
| 59 |
-
"compute_unit_recommended": "ANE",
|
| 60 |
-
"precision": "fp16",
|
| 61 |
-
"calls_per_utterance": 1,
|
| 62 |
-
"inputs": ["tokens (1, T_tok) int32"],
|
| 63 |
-
"outputs": ["d_en (1, T_dur, hidden)", "s_pred (1, 256)", "duration_logits"]
|
| 64 |
-
},
|
| 65 |
-
{
|
| 66 |
-
"name": "diffusion_step",
|
| 67 |
-
"packages": ["styletts2_diffusion_step_512.mlpackage"],
|
| 68 |
-
"bucket_axis": "bert_dur",
|
| 69 |
-
"bucket_sizes": [512],
|
| 70 |
-
"compute_unit_recommended": "CPU_AND_GPU",
|
| 71 |
-
"precision": "fp16",
|
| 72 |
-
"calls_per_utterance_default": 5,
|
| 73 |
-
"inputs": ["x", "sigma", "embedding (bert_dur)", "features (ref_s)"],
|
| 74 |
-
"outputs": ["x_next"]
|
| 75 |
-
},
|
| 76 |
-
{
|
| 77 |
-
"name": "f0n_energy",
|
| 78 |
-
"packages": ["styletts2_f0n_energy.mlpackage"],
|
| 79 |
-
"bucket_axis": null,
|
| 80 |
-
"bucket_sizes": null,
|
| 81 |
-
"compute_unit_recommended": "ANE",
|
| 82 |
-
"precision": "fp16",
|
| 83 |
-
"calls_per_utterance": 1,
|
| 84 |
-
"inputs": ["en (1, 512, T_mel)", "s (1, 128)"],
|
| 85 |
-
"outputs": ["F0", "N"]
|
| 86 |
-
},
|
| 87 |
-
{
|
| 88 |
-
"name": "decoder",
|
| 89 |
-
"packages": [
|
| 90 |
-
"styletts2_decoder_256.mlpackage",
|
| 91 |
-
"styletts2_decoder_512.mlpackage",
|
| 92 |
-
"styletts2_decoder_1024.mlpackage",
|
| 93 |
-
"styletts2_decoder_2048.mlpackage",
|
| 94 |
-
"styletts2_decoder_4096.mlpackage"
|
| 95 |
-
],
|
| 96 |
-
"bucket_axis": "mel_frames",
|
| 97 |
-
"bucket_sizes": [256, 512, 1024, 2048, 4096],
|
| 98 |
-
"compute_unit_recommended": "CPU_AND_GPU",
|
| 99 |
-
"precision": "fp32",
|
| 100 |
-
"_precision_comment": "fp32 is required end-to-end. SineGen accumulates phase via cumsum × 2π × hop=300, reaching ~4000 mid-frame; fp16 precision at that magnitude scrambles the sine output. See PHASE6_FP16_DECODER.md.",
|
| 101 |
-
"calls_per_utterance": 1,
|
| 102 |
-
"inputs": ["asr", "F0", "N", "ref (1, 128)"],
|
| 103 |
-
"outputs": ["waveform (1, T_audio) @ 24kHz"]
|
| 104 |
-
}
|
| 105 |
-
],
|
| 106 |
-
|
| 107 |
-
"bucket_routing": {
|
| 108 |
-
"_comment": "Round each variable-length input UP to the next bucket. Pad with zeros.",
|
| 109 |
-
"text_predictor.tokens": [32, 64, 128, 256, 512],
|
| 110 |
-
"diffusion_step.embedding": [512],
|
| 111 |
-
"decoder.asr": [256, 512, 1024, 2048, 4096]
|
| 112 |
-
},
|
| 113 |
-
|
| 114 |
-
"performance": {
|
| 115 |
-
"rtfx_warm_m_series": 4.32,
|
| 116 |
-
"log_mel_cosine_vs_pytorch_fp32": 0.9687,
|
| 117 |
-
"ecapa_tdnn_cosine_to_reference": 0.18,
|
| 118 |
-
"_pytorch_fp32_ecapa_baseline": 0.29,
|
| 119 |
-
"on_disk_size_gb": 1.4
|
| 120 |
-
}
|
| 121 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|