spybyscript commited on
Commit
86bbe7a
·
verified ·
1 Parent(s): 497346d

Scylla's Band v2-20261006

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. README.md +14 -14
  2. SHA256SUMS.json +44 -272
  3. coreai/assets/fixed_references.json +0 -0
  4. coreai/assets/g2p/export_config.json +0 -33
  5. coreai/assets/g2p/language_map.json +0 -47
  6. coreai/assets/g2p/normalization.json +0 -40
  7. coreai/assets/g2p/phoneme_dict.json +0 -9
  8. coreai/assets/g2p/pronunciation_overrides.json +0 -4
  9. coreai/assets/g2p/tokenizer.json +0 -517
  10. coreai/assets/languages.json +0 -30
  11. coreai/assets/phone_vocab.json +0 -111
  12. coreai/assets/voices.json +0 -42
  13. coreai/coreai/duration_predictor.aimodel/main.hash +0 -1
  14. coreai/coreai/duration_predictor.aimodel/main.mlirb +0 -3
  15. coreai/coreai/duration_predictor.aimodel/metadata.json +0 -5
  16. coreai/coreai/g2p.aimodel/main.hash +0 -1
  17. coreai/coreai/g2p.aimodel/main.mlirb +0 -3
  18. coreai/coreai/g2p.aimodel/metadata.json +0 -5
  19. coreai/coreai/vector_context_encoder.aimodel/main.hash +0 -1
  20. coreai/coreai/vector_context_encoder.aimodel/main.mlirb +0 -3
  21. coreai/coreai/vector_context_encoder.aimodel/metadata.json +0 -5
  22. coreai/coreai/vector_estimator.aimodel/main.hash +0 -1
  23. coreai/coreai/vector_estimator.aimodel/main.mlirb +0 -3
  24. coreai/coreai/vector_estimator.aimodel/metadata.json +0 -5
  25. coreai/coreai/vocoder.aimodel/main.hash +0 -1
  26. coreai/coreai/vocoder.aimodel/main.mlirb +0 -3
  27. coreai/coreai/vocoder.aimodel/metadata.json +0 -5
  28. coreai/manifest.json +0 -1003
  29. coreml/assets/fixed_references.json +0 -0
  30. coreml/assets/g2p/export_config.json +0 -33
  31. coreml/assets/g2p/language_map.json +0 -47
  32. coreml/assets/g2p/normalization.json +0 -40
  33. coreml/assets/g2p/phoneme_dict.json +0 -9
  34. coreml/assets/g2p/pronunciation_overrides.json +0 -4
  35. coreml/assets/g2p/tokenizer.json +0 -517
  36. coreml/assets/languages.json +0 -30
  37. coreml/assets/phone_vocab.json +0 -111
  38. coreml/assets/voices.json +0 -42
  39. coreml/coreml/duration_predictor.mlmodelc/analytics/coremldata.bin +0 -3
  40. coreml/coreml/duration_predictor.mlmodelc/coremldata.bin +0 -3
  41. coreml/coreml/duration_predictor.mlmodelc/model.mil +0 -0
  42. coreml/coreml/duration_predictor.mlmodelc/weights/weight.bin +0 -3
  43. coreml/coreml/g2p.mlmodelc/analytics/coremldata.bin +0 -3
  44. coreml/coreml/g2p.mlmodelc/coremldata.bin +0 -3
  45. coreml/coreml/g2p.mlmodelc/model.mil +0 -0
  46. coreml/coreml/g2p.mlmodelc/weights/weight.bin +0 -3
  47. coreml/coreml/vector_context_encoder.mlmodelc/analytics/coremldata.bin +0 -3
  48. coreml/coreml/vector_context_encoder.mlmodelc/coremldata.bin +0 -3
  49. coreml/coreml/vector_context_encoder.mlmodelc/model.mil +0 -267
  50. coreml/coreml/vector_context_encoder.mlmodelc/weights/weight.bin +0 -3
README.md CHANGED
@@ -3,14 +3,14 @@ license: apache-2.0
3
  language: [en, es, it, fr, de, vi]
4
  library_name: litert
5
  pipeline_tag: text-to-speech
6
- tags: [text-to-speech, tts, litert, onnx, coreml, coreai, pytorch, multilingual, expressive-tts, duration-flow, whisper]
7
  ---
8
 
9
  # Scylla's Band v2
10
 
11
- Release **`v2-20261005`**. The [Scylla's Band runtime](https://github.com/lowkeytea/scyllasband) supports this release. Tag `v2-20261005-apple` adds Core ML and Core AI bundles of the same model; the runtime downloads from that tag.
12
 
13
- The model exposes **energy, tension, valence and assertiveness** on **0–4 scales with neutral at 2**, plus **binary whisper**. Combining the controls changes the generated delivery; a request is not a guarantee of a particular perceived emotion or exact external scorer value.
14
 
15
  ## Quick start
16
 
@@ -19,8 +19,8 @@ Install the [runtime](https://github.com/lowkeytea/scyllasband) (`pip install -e
19
  ```bash
20
  python -m scyllasband download --yes
21
  python -m scyllasband speak --voice ariadne --language en_us \
22
- --delivery energy=2.3,tension=1.7,valence=2.6,assertiveness=2,whisper=off \
23
- --sampler heun --steps 8 -o hello.wav "It is a pleasure to meet you."
24
  ```
25
 
26
  The default download is the Core ML bundle on an Apple silicon Mac and the LiteRT bundle elsewhere, installed under `scyllasband/models/<bundle>`. A Mac that can build apps for iOS, iPadOS or visionOS 27 is also offered the Core AI bundle those apps use. `--flavor coreml`, `--flavor coreai`, `--flavor litert` or `--flavor onnx` choose explicitly. Downloads pin a release tag. The manifest declares graph contract `scyllasband_measured_delivery_v2`; runtimes written for earlier releases cannot run these graphs.
@@ -30,7 +30,6 @@ The default download is the Core ML bundle on an Apple silicon Mac and the LiteR
30
  | Input | Values | Default |
31
  | --- | --- | --- |
32
  | Energy, tension, valence, assertiveness | 0–4 or unspecified | 2 each |
33
- | Whisper | on/off or unspecified | off |
34
 
35
  With every control at 2, the default, voices speak in a calm, conversational delivery with a neutral tone. Raising or lowering a control changes the delivery:
36
 
@@ -41,8 +40,6 @@ With every control at 2, the default, voices speak in a calm, conversational del
41
  | Valence | Flatter, more downcast pitch | Livelier pitch, a little quicker, shorter pauses |
42
  | Assertiveness | More pauses between phrases | Faster and clipped with fewer pauses; the strongest control over pace |
43
 
44
- Whisper on gives quieter, breathy speech.
45
-
46
  The model learned delivery mostly from settings between about 1.7 and 2.8 for energy, 1.9 and 3.0 for valence, 1.8 and 2.7 for assertiveness, and 1.0 and 3.1 for tension. The controls are most reliable inside those ranges; further out, voices can sound strained or a style can become ambiguous.
47
 
48
  Combining the controls gives familiar deliveries:
@@ -53,14 +50,13 @@ Combining the controls gives familiar deliveries:
53
  | Assertive and quick | `energy=2.6,tension=2.4,valence=2.1,assertiveness=2.8` |
54
  | Joyful | `energy=2.4,tension=2,valence=2.8,assertiveness=2.2` |
55
  | Angry | `energy=2.7,tension=3.1,valence=1.3,assertiveness=2.5` |
56
- | Sad | `energy=1.7,tension=1.7,valence=1.8,assertiveness=2` |
57
- | Whispered | `whisper=on` |
58
 
59
- Angry takes valence a little below the trained range so that it separates clearly from joyful. These are moderate styles; how strongly each comes through varies with voice, language and text. The [voice gallery](https://lowkeytea.github.io/scyllasband/#delivery) plays each of them for all ten voices.
60
 
61
  `--delivery auto` omits all coordinates. A per-axis `auto` omits just that coordinate; other unspecified fields in a partial request use neutral defaults. Omission is represented by a separate mask, not by the value 2. It is not an automatic text-to-performance planner.
62
 
63
- The graph receives `(rating - 2) / 4` for the four continuous axes and 0/1 for whisper, plus five presence bits. The public interface accepts the original 0–4 values. Expressiveness is an auxiliary training target, not an inference axis.
64
 
65
  Controls are **global within each request**. This release does not support control curves, singing, or trained automatic variation over a multi-sentence passage.
66
 
@@ -75,11 +71,14 @@ Controls are **global within each request**. This release does not support contr
75
  | Duration model | Hidden size 320; 8 layers; reads the neighbouring text as context |
76
  | Vector model | Hidden size 512; 12 layers; adaptive layer normalization and QK normalization |
77
  | Maximum graph phones per sentence | 512 |
 
78
  | Latent buckets | 128, 256, 384, 512, 768, 1024 frames |
79
- | Reference sampler | Heun, 8 steps |
80
  | Voice conditioning | Fixed per-voice/per-locale identity and prosody references embedded in the graphs |
81
  | Text frontend | Trained Scylla's Band G2P with its matched tokenizer and vocabulary |
82
 
 
 
83
  Long text is spoken as passages within the trained target lengths (64 to 420 latent frames, about 1.4 to 9 seconds): a short first passage so audio starts quickly, then passages as long as the text allows, cut at a sentence end, else a clause, else between words, and measured with the requested delivery. Each passage sees the surrounding text as context and continues from the acoustics of the one before it, and consecutive passages are decoded as one continuous waveform. Durations are predicted deterministically; different controls can alter them.
84
 
85
  ## Voices and language coverage
@@ -92,7 +91,7 @@ All ten have Spanish (`es`), Italian (`it`), French (`fr`), German (`de`) and Vi
92
 
93
  - `litert/` (164 MB): LiteRT bundle; default download. Transformer and vocoder weights are dynamic-range INT8; each size bucket is a signature of one model file, sharing weights.
94
  - `coreai/` (155 MB): Core AI bundle for apps on iOS, iPadOS and visionOS 27 (`.aimodel` assets); it also runs on macOS 27, where the runtime uses the Core ML bundle by default. INT8 weights per output channel with FP16 compute; size buckets are functions of one asset sharing weights. The flow also runs accurately on the Neural Engine (`controls.coreai.neural_engine_assets`), which is the placement for apps that speak in the background; the GPU is the default.
95
- - `coreml/` (142 MB): Core ML bundle for Apple silicon with iOS 18 / macOS 15 and later (compiled `.mlmodelc` assets), with INT8 weights and FP16 compute; GPU by default, CPU in background apps.
96
  - `onnx/`: ONNX Runtime bundle with dynamic INT8 transformer weights; the vocoder stays in full precision.
97
  - `pytorch/`: duration, vector, adapter/vocoder and G2P weights (no training state), with the release configuration assets.
98
  - `SHA256SUMS.json`: published-file hashes.
@@ -104,6 +103,7 @@ Every runtime bundle includes the G2P model in a matching precision. The Apple b
104
  Release validation separates graph accuracy, frontend/timing behaviour and perceived speech quality:
105
 
106
  - Component comparisons against PyTorch during export, and end-to-end comparison of full passages against the PyTorch reference path.
 
107
  - Quantized bundles compared with full precision on real sentences: identical phonemes, phone durations and generated latents within small tolerances, followed by listening across all ten voices.
108
  - G2P conversions compared with the full-precision G2P on multilingual text.
109
  - Core ML and Core AI bundles compared with the PyTorch model on every graph and on real passages, on each compute unit they are used with (GPU, CPU, and for Core AI the Neural Engine): identical phonemes apart from two near-tie stress marks also seen in FP16, fewer changed phone durations than the LiteRT bundle, and smaller latent and spectral differences. The Apple exports rewrite three computations into equivalent forms that FP16 and the Neural Engine evaluate exactly (span pooling, the modifier bit decoding, the duration model's combined phone/segment index), and scale the flow's residual stream; in FP32 the rewritten graphs are bit-identical to the trained ones.
 
3
  language: [en, es, it, fr, de, vi]
4
  library_name: litert
5
  pipeline_tag: text-to-speech
6
+ tags: [text-to-speech, tts, litert, onnx, coreml, coreai, pytorch, multilingual, expressive-tts, duration-flow]
7
  ---
8
 
9
  # Scylla's Band v2
10
 
11
+ Release **`v2-20261006`**. The [Scylla's Band runtime](https://github.com/lowkeytea/scyllasband) supports this release. Tag `v2-20261006-apple` adds Core ML and Core AI bundles of the same model; the runtime downloads from that tag.
12
 
13
+ The model exposes **energy, tension, valence and assertiveness** on **0–4 scales with neutral at 2**. Combining the controls changes the generated delivery; a request is not a guarantee of a particular perceived emotion or exact external scorer value.
14
 
15
  ## Quick start
16
 
 
19
  ```bash
20
  python -m scyllasband download --yes
21
  python -m scyllasband speak --voice ariadne --language en_us \
22
+ --delivery energy=2.3,tension=1.7,valence=2.6,assertiveness=2 \
23
+ -o hello.wav "It is a pleasure to meet you."
24
  ```
25
 
26
  The default download is the Core ML bundle on an Apple silicon Mac and the LiteRT bundle elsewhere, installed under `scyllasband/models/<bundle>`. A Mac that can build apps for iOS, iPadOS or visionOS 27 is also offered the Core AI bundle those apps use. `--flavor coreml`, `--flavor coreai`, `--flavor litert` or `--flavor onnx` choose explicitly. Downloads pin a release tag. The manifest declares graph contract `scyllasband_measured_delivery_v2`; runtimes written for earlier releases cannot run these graphs.
 
30
  | Input | Values | Default |
31
  | --- | --- | --- |
32
  | Energy, tension, valence, assertiveness | 0–4 or unspecified | 2 each |
 
33
 
34
  With every control at 2, the default, voices speak in a calm, conversational delivery with a neutral tone. Raising or lowering a control changes the delivery:
35
 
 
40
  | Valence | Flatter, more downcast pitch | Livelier pitch, a little quicker, shorter pauses |
41
  | Assertiveness | More pauses between phrases | Faster and clipped with fewer pauses; the strongest control over pace |
42
 
 
 
43
  The model learned delivery mostly from settings between about 1.7 and 2.8 for energy, 1.9 and 3.0 for valence, 1.8 and 2.7 for assertiveness, and 1.0 and 3.1 for tension. The controls are most reliable inside those ranges; further out, voices can sound strained or a style can become ambiguous.
44
 
45
  Combining the controls gives familiar deliveries:
 
50
  | Assertive and quick | `energy=2.6,tension=2.4,valence=2.1,assertiveness=2.8` |
51
  | Joyful | `energy=2.4,tension=2,valence=2.8,assertiveness=2.2` |
52
  | Angry | `energy=2.7,tension=3.1,valence=1.3,assertiveness=2.5` |
53
+ | Sad | `energy=1.7,tension=1.5,valence=1.4,assertiveness=2` |
 
54
 
55
+ Angry and sad take valence a little below the trained range so that they separate clearly from joyful and calm. These are moderate styles; how strongly each comes through varies with voice, language and text. The [voice gallery](https://lowkeytea.github.io/scyllasband/#delivery) plays each of them for all ten voices.
56
 
57
  `--delivery auto` omits all coordinates. A per-axis `auto` omits just that coordinate; other unspecified fields in a partial request use neutral defaults. Omission is represented by a separate mask, not by the value 2. It is not an automatic text-to-performance planner.
58
 
59
+ The graph receives `(rating - 2) / 4` for the four continuous axes plus presence bits. Its fifth delivery input, whisper, was a training axis; it is not supported, and the runtimes always send it off. The public interface accepts the original 0–4 values. Expressiveness is an auxiliary training target, not an inference axis.
60
 
61
  Controls are **global within each request**. This release does not support control curves, singing, or trained automatic variation over a multi-sentence passage.
62
 
 
71
  | Duration model | Hidden size 320; 8 layers; reads the neighbouring text as context |
72
  | Vector model | Hidden size 512; 12 layers; adaptive layer normalization and QK normalization |
73
  | Maximum graph phones per sentence | 512 |
74
+ | Trained target length | 64–420 latent frames (about 1.4–9 s) per pass |
75
  | Latent buckets | 128, 256, 384, 512, 768, 1024 frames |
76
+ | Sampler | Euler, 4 steps (default) |
77
  | Voice conditioning | Fixed per-voice/per-locale identity and prosody references embedded in the graphs |
78
  | Text frontend | Trained Scylla's Band G2P with its matched tokenizer and vocabulary |
79
 
80
+ The flow is distilled for few-step sampling: it was trained to reproduce the base flow's 32-step Heun output, so Euler with 4 steps, four model evaluations per passage, is the default. Heun with 8 steps costs four times as much and sounds slightly sharper.
81
+
82
  Long text is spoken as passages within the trained target lengths (64 to 420 latent frames, about 1.4 to 9 seconds): a short first passage so audio starts quickly, then passages as long as the text allows, cut at a sentence end, else a clause, else between words, and measured with the requested delivery. Each passage sees the surrounding text as context and continues from the acoustics of the one before it, and consecutive passages are decoded as one continuous waveform. Durations are predicted deterministically; different controls can alter them.
83
 
84
  ## Voices and language coverage
 
91
 
92
  - `litert/` (164 MB): LiteRT bundle; default download. Transformer and vocoder weights are dynamic-range INT8; each size bucket is a signature of one model file, sharing weights.
93
  - `coreai/` (155 MB): Core AI bundle for apps on iOS, iPadOS and visionOS 27 (`.aimodel` assets); it also runs on macOS 27, where the runtime uses the Core ML bundle by default. INT8 weights per output channel with FP16 compute; size buckets are functions of one asset sharing weights. The flow also runs accurately on the Neural Engine (`controls.coreai.neural_engine_assets`), which is the placement for apps that speak in the background; the GPU is the default.
94
+ - `coreml/` (142 MB): Core ML bundle for Apple silicon with iOS 18 / visionOS 2 / macOS 15 and later (compiled `.mlmodelc` assets), with INT8 weights and FP16 compute; GPU by default, CPU in background apps.
95
  - `onnx/`: ONNX Runtime bundle with dynamic INT8 transformer weights; the vocoder stays in full precision.
96
  - `pytorch/`: duration, vector, adapter/vocoder and G2P weights (no training state), with the release configuration assets.
97
  - `SHA256SUMS.json`: published-file hashes.
 
103
  Release validation separates graph accuracy, frontend/timing behaviour and perceived speech quality:
104
 
105
  - Component comparisons against PyTorch during export, and end-to-end comparison of full passages against the PyTorch reference path.
106
+ - The distilled flow at 4 Euler steps compared with the base flow at 8 Heun steps on the same passages, seeds and noise: equal distance to the 32-step output, confirmed by listening across all ten voices.
107
  - Quantized bundles compared with full precision on real sentences: identical phonemes, phone durations and generated latents within small tolerances, followed by listening across all ten voices.
108
  - G2P conversions compared with the full-precision G2P on multilingual text.
109
  - Core ML and Core AI bundles compared with the PyTorch model on every graph and on real passages, on each compute unit they are used with (GPU, CPU, and for Core AI the Neural Engine): identical phonemes apart from two near-tie stress marks also seen in FP16, fewer changed phone durations than the LiteRT bundle, and smaller latent and spectral differences. The Apple exports rewrite three computations into equivalent forms that FP16 and the Neural Engine evaluate exactly (span pooling, the modifier bit decoding, the duration model's combined phone/segment index), and scale the flow's residual stream; in FP32 the rewritten graphs are bit-identical to the trained ones.
SHA256SUMS.json CHANGED
@@ -4,241 +4,13 @@
4
  "bytes": 11357
5
  },
6
  "README.md": {
7
- "sha256": "4f2d6c847adb1718666fca546eb0f6730b4177a2b7ca117aa165a2a83ca3b572",
8
- "bytes": 9591
9
  },
10
  "THIRD_PARTY_NOTICES.md": {
11
  "sha256": "3b793b8ee250cc711e4012ee42e9625a8a7e788bf12cab85a1abbd17b17644ca",
12
  "bytes": 2818
13
  },
14
- "coreai/assets/fixed_references.json": {
15
- "sha256": "d3c26e7e90d90fa719254ff1ff05dc4b391cd47231b7556c3c2ed5f63547925b",
16
- "bytes": 1115042
17
- },
18
- "coreai/assets/g2p/export_config.json": {
19
- "sha256": "0ec5ea81f346521f3a5c9c4a90b939c6b5143b1a11cc5e74b9902969db56e568",
20
- "bytes": 928
21
- },
22
- "coreai/assets/g2p/language_map.json": {
23
- "sha256": "b3db2048b492799f8746b43001e0f7411eb5d359e17cabc6bfce4a7bccbfdd99",
24
- "bytes": 844
25
- },
26
- "coreai/assets/g2p/normalization.json": {
27
- "sha256": "f9ca4fe4e4eca5e02b6f2874f5da6ede8b44b25c71c3c6ac00f96d7397024de6",
28
- "bytes": 1090
29
- },
30
- "coreai/assets/g2p/phoneme_dict.json": {
31
- "sha256": "9cfb40b2fd31d7a32351c33f90230062554a4dc0a44e89f722de211d42ed1875",
32
- "bytes": 93
33
- },
34
- "coreai/assets/g2p/pronunciation_overrides.json": {
35
- "sha256": "a1f311379b76cb44719a2242a93a4046ff5f344cdac613374288234c2817eb59",
36
- "bytes": 80
37
- },
38
- "coreai/assets/g2p/tokenizer.json": {
39
- "sha256": "4843d57a422b0a6045bbc6fc9a99afa329126a6742ff95ebcefcda660f3ee474",
40
- "bytes": 7769
41
- },
42
- "coreai/assets/languages.json": {
43
- "sha256": "f2af2233d0a1c0dbb6e6236fd57592d12da84262fdd1a336ead1ee83a657e2ae",
44
- "bytes": 289
45
- },
46
- "coreai/assets/phone_vocab.json": {
47
- "sha256": "83e6457a69948edbd9a94b404c22fd408c263eb0d0b5acaafa4926e994587721",
48
- "bytes": 1793
49
- },
50
- "coreai/assets/voices.json": {
51
- "sha256": "db9aa57e3d5f9f34fed283fb8e79f4c38e218647d33bc4a5c71ea3e8338c1a56",
52
- "bytes": 433
53
- },
54
- "coreai/coreai/duration_predictor.aimodel/main.hash": {
55
- "sha256": "ec1450950c5c92a8567b91acb3999a9d53ebcfae92401c4c9893a3ab780020af",
56
- "bytes": 32
57
- },
58
- "coreai/coreai/duration_predictor.aimodel/main.mlirb": {
59
- "sha256": "4243d405361c9ebc82a0e233a3cb1bd5d64b5389a96ddd58947f14fb84b3c949",
60
- "bytes": 10884924
61
- },
62
- "coreai/coreai/duration_predictor.aimodel/metadata.json": {
63
- "sha256": "3b825889dba08f532b2e922b099aff707fdefc53cf86716392f5867f1b667999",
64
- "bytes": 105
65
- },
66
- "coreai/coreai/g2p.aimodel/main.hash": {
67
- "sha256": "300a60ae5cd565c7207ff5877dfa8427af6868a14fb6ccfa195ca17fe0e50a3f",
68
- "bytes": 32
69
- },
70
- "coreai/coreai/g2p.aimodel/main.mlirb": {
71
- "sha256": "e7426aa159702a859176420d0c34b493da7d3dd97fa74fdeedb2ee4c4f0dce18",
72
- "bytes": 28377271
73
- },
74
- "coreai/coreai/g2p.aimodel/metadata.json": {
75
- "sha256": "07542e963b0d178a540fa3a7927bd54ac3050c4ccc959dc38defe42e33fe7066",
76
- "bytes": 105
77
- },
78
- "coreai/coreai/vector_context_encoder.aimodel/main.hash": {
79
- "sha256": "0dfa623d5496abf0b862e73ed8adc2a4e8bf5f4249b1c209543ca44312cdc5f3",
80
- "bytes": 32
81
- },
82
- "coreai/coreai/vector_context_encoder.aimodel/main.mlirb": {
83
- "sha256": "9dca40e4aa2ce1cf2099c7c4ee34bbea72f2594d88459210cfa06dfc9592f135",
84
- "bytes": 8029277
85
- },
86
- "coreai/coreai/vector_context_encoder.aimodel/metadata.json": {
87
- "sha256": "2adcb7092d18dc35b8686fc8b5a6075c09b852ce0353899bc1459cdbbfb3f6ba",
88
- "bytes": 105
89
- },
90
- "coreai/coreai/vector_estimator.aimodel/main.hash": {
91
- "sha256": "eddcebf2eca499422d841f257a6c270866151ee1b5f082ad375dda29264176c3",
92
- "bytes": 32
93
- },
94
- "coreai/coreai/vector_estimator.aimodel/main.mlirb": {
95
- "sha256": "4dc8e41c5c9de01f2d3a9fd847a30df8b27ceec9aa0894b235f49181dcd664d2",
96
- "bytes": 63149068
97
- },
98
- "coreai/coreai/vector_estimator.aimodel/metadata.json": {
99
- "sha256": "e90fa086d07ef39797bce9b6d6c82429d84b17a5ebb77380d71d94d44eb630f7",
100
- "bytes": 105
101
- },
102
- "coreai/coreai/vocoder.aimodel/main.hash": {
103
- "sha256": "62fae3f0d6ca6e5cb648e1c54d47c243d919bdb9e93e89e53f786eb318f90003",
104
- "bytes": 32
105
- },
106
- "coreai/coreai/vocoder.aimodel/main.mlirb": {
107
- "sha256": "0e0d07b91327322c55da5081c7e3301565e92c5298dd9a5dfb74b71ee6074669",
108
- "bytes": 43811030
109
- },
110
- "coreai/coreai/vocoder.aimodel/metadata.json": {
111
- "sha256": "d1169c91caecc862135efebf9a832fd956459929050ca29415db3e41197ef6b2",
112
- "bytes": 105
113
- },
114
- "coreai/manifest.json": {
115
- "sha256": "a2a3b2c822673e98ae44af5280ab3b71039609ea913d1c50392faf37ed97c19d",
116
- "bytes": 21685
117
- },
118
- "coreml/assets/fixed_references.json": {
119
- "sha256": "d3c26e7e90d90fa719254ff1ff05dc4b391cd47231b7556c3c2ed5f63547925b",
120
- "bytes": 1115042
121
- },
122
- "coreml/assets/g2p/export_config.json": {
123
- "sha256": "0ec5ea81f346521f3a5c9c4a90b939c6b5143b1a11cc5e74b9902969db56e568",
124
- "bytes": 928
125
- },
126
- "coreml/assets/g2p/language_map.json": {
127
- "sha256": "b3db2048b492799f8746b43001e0f7411eb5d359e17cabc6bfce4a7bccbfdd99",
128
- "bytes": 844
129
- },
130
- "coreml/assets/g2p/normalization.json": {
131
- "sha256": "f9ca4fe4e4eca5e02b6f2874f5da6ede8b44b25c71c3c6ac00f96d7397024de6",
132
- "bytes": 1090
133
- },
134
- "coreml/assets/g2p/phoneme_dict.json": {
135
- "sha256": "9cfb40b2fd31d7a32351c33f90230062554a4dc0a44e89f722de211d42ed1875",
136
- "bytes": 93
137
- },
138
- "coreml/assets/g2p/pronunciation_overrides.json": {
139
- "sha256": "a1f311379b76cb44719a2242a93a4046ff5f344cdac613374288234c2817eb59",
140
- "bytes": 80
141
- },
142
- "coreml/assets/g2p/tokenizer.json": {
143
- "sha256": "4843d57a422b0a6045bbc6fc9a99afa329126a6742ff95ebcefcda660f3ee474",
144
- "bytes": 7769
145
- },
146
- "coreml/assets/languages.json": {
147
- "sha256": "f2af2233d0a1c0dbb6e6236fd57592d12da84262fdd1a336ead1ee83a657e2ae",
148
- "bytes": 289
149
- },
150
- "coreml/assets/phone_vocab.json": {
151
- "sha256": "83e6457a69948edbd9a94b404c22fd408c263eb0d0b5acaafa4926e994587721",
152
- "bytes": 1793
153
- },
154
- "coreml/assets/voices.json": {
155
- "sha256": "db9aa57e3d5f9f34fed283fb8e79f4c38e218647d33bc4a5c71ea3e8338c1a56",
156
- "bytes": 433
157
- },
158
- "coreml/coreml/duration_predictor.mlmodelc/analytics/coremldata.bin": {
159
- "sha256": "953e274e93c3abfae6f04977436816dc28223ef61d4e91e4191f67837740a2e8",
160
- "bytes": 243
161
- },
162
- "coreml/coreml/duration_predictor.mlmodelc/coremldata.bin": {
163
- "sha256": "c090d28d8df68312410867a49963b5fbda00f5883178969df17b1b0c86e7eff2",
164
- "bytes": 554
165
- },
166
- "coreml/coreml/duration_predictor.mlmodelc/model.mil": {
167
- "sha256": "b342ee3bcc2acb6b8bd0de42bebfc6c3d83b40e5512156fb26f909fa9ae3d608",
168
- "bytes": 138985
169
- },
170
- "coreml/coreml/duration_predictor.mlmodelc/weights/weight.bin": {
171
- "sha256": "5383e19195d6807cf6632d2c82b51b86aaa947ba51d8042434f73b5039c70ea4",
172
- "bytes": 10562880
173
- },
174
- "coreml/coreml/g2p.mlmodelc/analytics/coremldata.bin": {
175
- "sha256": "61936fdfe11637e628b2134025bea29d673c98e93ce6f01c05e7b5da124563b8",
176
- "bytes": 243
177
- },
178
- "coreml/coreml/g2p.mlmodelc/coremldata.bin": {
179
- "sha256": "f5fc8bee0186f33fa14d35a59a58ec3393676d07bdf03802a3836d806662cd03",
180
- "bytes": 377
181
- },
182
- "coreml/coreml/g2p.mlmodelc/model.mil": {
183
- "sha256": "d464334a231d99b9a3764d50c28657d1720e25eaa45e39fa4daa401bb89452a1",
184
- "bytes": 388409
185
- },
186
- "coreml/coreml/g2p.mlmodelc/weights/weight.bin": {
187
- "sha256": "045da2991ed2a42ba027aaa6b83813054f410b6eedfdce82f2ab287ec4ca74e2",
188
- "bytes": 27346752
189
- },
190
- "coreml/coreml/vector_context_encoder.mlmodelc/analytics/coremldata.bin": {
191
- "sha256": "f89405fefad88549b521a819805c5c1781e0c930c03b8f670b1e1539aafe88c6",
192
- "bytes": 243
193
- },
194
- "coreml/coreml/vector_context_encoder.mlmodelc/coremldata.bin": {
195
- "sha256": "d031d4ef221bc846aec129114aec7366fcb6126dacae44c24c4b344c54dc6c5a",
196
- "bytes": 476
197
- },
198
- "coreml/coreml/vector_context_encoder.mlmodelc/model.mil": {
199
- "sha256": "c3c0df163512f0ed8ab4dbb927054f2cb627980c734419bd96e341540660d372",
200
- "bytes": 44809
201
- },
202
- "coreml/coreml/vector_context_encoder.mlmodelc/weights/weight.bin": {
203
- "sha256": "7120be9d216af8b1021ad92a4d3d0d136881d55e48debfb348197f12da2a21d6",
204
- "bytes": 7572352
205
- },
206
- "coreml/coreml/vector_estimator.mlmodelc/analytics/coremldata.bin": {
207
- "sha256": "4cd08db9de17f4e62caab8acf50c3c28909c28b945acb105f35e45820366621a",
208
- "bytes": 243
209
- },
210
- "coreml/coreml/vector_estimator.mlmodelc/coremldata.bin": {
211
- "sha256": "d22410a5a41fc0aae79224588c2da505cd4abae60526d06fd989749001741762",
212
- "bytes": 3647
213
- },
214
- "coreml/coreml/vector_estimator.mlmodelc/model.mil": {
215
- "sha256": "48c7230b2cee7088f5431117ea54758e6a37e5f55faa8cdea3aa7fdd34010831",
216
- "bytes": 1469007
217
- },
218
- "coreml/coreml/vector_estimator.mlmodelc/weights/weight.bin": {
219
- "sha256": "135922d329c47a98942f1ce104c3e62f9ccc6578b6866d57482839172c9bf1be",
220
- "bytes": 60754048
221
- },
222
- "coreml/coreml/vocoder.mlmodelc/analytics/coremldata.bin": {
223
- "sha256": "c8c3075b62c159b4773c0d721e911570449783db5e493eb53e2a0a78049e717e",
224
- "bytes": 243
225
- },
226
- "coreml/coreml/vocoder.mlmodelc/coremldata.bin": {
227
- "sha256": "04bf9f9de7edfc6ce58e5928a0a1d6669d09095ebc03cb5ca24dd85a416653df",
228
- "bytes": 1190
229
- },
230
- "coreml/coreml/vocoder.mlmodelc/model.mil": {
231
- "sha256": "e7b28b62c2ce75b56bb284333542585cf4abe4ebda50ce72322cbea88dcea53c",
232
- "bytes": 969259
233
- },
234
- "coreml/coreml/vocoder.mlmodelc/weights/weight.bin": {
235
- "sha256": "8d1aa1e85be960d5ad32f751b602c38601bc9517a951be5bd42c991449d3bccc",
236
- "bytes": 31043584
237
- },
238
- "coreml/manifest.json": {
239
- "sha256": "3519f7fe3c8c98e8672a99451e44ff7ef60ed35317031e82669adbb1b5acf3a0",
240
- "bytes": 21577
241
- },
242
  "litert/assets/fixed_references.json": {
243
  "sha256": "d3c26e7e90d90fa719254ff1ff05dc4b391cd47231b7556c3c2ed5f63547925b",
244
  "bytes": 1115042
@@ -288,11 +60,11 @@
288
  "bytes": 28626144
289
  },
290
  "litert/litert/vector_context_encoder.tflite": {
291
- "sha256": "e7aec27b796beae5185623a58d990595ec43493fe830f15c0c037231e43968d9",
292
  "bytes": 7763584
293
  },
294
  "litert/litert/vector_estimator.tflite": {
295
- "sha256": "d7bf4cd3ee19eaa3c48d02c45e36f725960856226260b6c235f38f00655d5200",
296
  "bytes": 76550528
297
  },
298
  "litert/litert/vocoder.tflite": {
@@ -300,8 +72,8 @@
300
  "bytes": 38613392
301
  },
302
  "litert/manifest.json": {
303
- "sha256": "02a4b847ecba4794bed236e383f626c67d7b49415e9d3fb7aa08764cd58ee3f0",
304
- "bytes": 20194
305
  },
306
  "onnx/assets/fixed_references.json": {
307
  "sha256": "d3c26e7e90d90fa719254ff1ff05dc4b391cd47231b7556c3c2ed5f63547925b",
@@ -344,76 +116,76 @@
344
  "bytes": 433
345
  },
346
  "onnx/manifest.json": {
347
- "sha256": "3634ce563b3cf151fed03277f35fff6f26d3b6ec03e54b42665720049d40f356",
348
- "bytes": 20596
349
  },
350
  "onnx/onnx/components/duration_predictor.onnx": {
351
- "sha256": "e25b1fc20cbf3244e47906880066227b604367e878e885aa76dda7245bfd0f3e",
352
  "bytes": 285227
353
  },
354
  "onnx/onnx/components/shared_weights.bin": {
355
- "sha256": "b057e6452a4f77b9890846d88fd5e9617e61c7b5aa9963829f3d29fc0c16661c",
356
  "bytes": 208219968
357
  },
358
  "onnx/onnx/components/shared_weights.json": {
359
- "sha256": "715523e14b61aa4a2fc1478aa5e1857ec3cde3621b89674674c78105461a0d24",
360
- "bytes": 990255
361
  },
362
  "onnx/onnx/components/vector_context_encoder.onnx": {
363
- "sha256": "e9dcf409e702918dc5cde68319f4623a81169fdad24bc4dde03863aeb578edfd",
364
- "bytes": 66367
365
  },
366
  "onnx/onnx/components/vector_estimator.onnx": {
367
- "sha256": "a4fe5493d896783c1aeb809647cd292ae339393eebf38d96d301d85d27c84cf1",
368
- "bytes": 2800854
369
  },
370
  "onnx/onnx/components/vector_estimator_128.onnx": {
371
- "sha256": "98df7cfe1127f5d32f3ef964c99022c50ab5ac5156bc656f425266d28f3c9617",
372
- "bytes": 915665
373
  },
374
  "onnx/onnx/components/vector_estimator_256.onnx": {
375
- "sha256": "743a851bc0257867ed399903ccce3be074dc3fc71ea4d94bf1f8f9e5b804b297",
376
- "bytes": 1184977
377
  },
378
  "onnx/onnx/components/vector_estimator_384.onnx": {
379
- "sha256": "5721b591ffb2c3fe65953b5b5cc82b93af528e4396aea81344ea67d214e3d366",
380
- "bytes": 1454289
381
  },
382
  "onnx/onnx/components/vector_estimator_512.onnx": {
383
- "sha256": "ffe9b0943dc1efc8d664b2132bb2dc33b09705f7fb5fc4ad218d573d523ba492",
384
- "bytes": 1723601
385
  },
386
  "onnx/onnx/components/vector_estimator_768.onnx": {
387
- "sha256": "46d0a28b69ea30be1611207d89eb8f51ea4146c0a66f9d5f9723f5353ae98ede",
388
- "bytes": 2262226
389
  },
390
  "onnx/onnx/components/vocoder.onnx": {
391
- "sha256": "979eca5c81bc924e744f5dc89f357f8d4e4f4fe8b7694862b9b4bca2fc86b211",
392
- "bytes": 122562
393
  },
394
  "onnx/onnx/components/vocoder_128.onnx": {
395
- "sha256": "16d00b5aeededb5554596a6ca9b3b5e86037dcc1b25b0f8ae76d03463744e220",
396
- "bytes": 122562
397
  },
398
  "onnx/onnx/components/vocoder_256.onnx": {
399
- "sha256": "421536076699f671dcdf9850546da08557de527f3c2b11d696df8239bfeebbed",
400
- "bytes": 122561
401
  },
402
  "onnx/onnx/components/vocoder_384.onnx": {
403
- "sha256": "67067eb4a5b9fbe106e99c15248a97bebe43084c6e8b1b0780c01577a0cd8b32",
404
- "bytes": 122562
405
  },
406
  "onnx/onnx/components/vocoder_512.onnx": {
407
- "sha256": "f0023ddcf2f3b2822fabcef8ac2a252e7ffb5d4ab4b94ef9bd7e1a0f1ab25204",
408
- "bytes": 122562
409
  },
410
  "onnx/onnx/components/vocoder_768.onnx": {
411
- "sha256": "9d29088f5bb05692aa9099e55cc83987b11777a306a44675a7796e1a76a7e497",
412
- "bytes": 122563
413
  },
414
  "onnx/onnx/g2p/model.onnx": {
415
- "sha256": "548446f22c8b2150804f3009112be3aeeb8c781dea7d07e90e1aaa2f208fbd6a",
416
- "bytes": 40412599
417
  },
418
  "onnx/onnx/g2p/phoneme_dict.json": {
419
  "sha256": "9cfb40b2fd31d7a32351c33f90230062554a4dc0a44e89f722de211d42ed1875",
@@ -436,7 +208,7 @@
436
  "bytes": 786473
437
  },
438
  "pytorch/g2p.pt": {
439
- "sha256": "0085f558837c85cdf570337f7af37742b6158551a2c7f5078edcd35c6e84f7db",
440
  "bytes": 119207485
441
  },
442
  "pytorch/phone_vocab.json": {
@@ -444,11 +216,11 @@
444
  "bytes": 1793
445
  },
446
  "pytorch/release_config.json": {
447
- "sha256": "08612d7403dcb42e5061508acf59cd16e9ac1855d69a1b665fcf388ba01d84fb",
448
- "bytes": 841
449
  },
450
  "pytorch/vector_estimator.pt": {
451
- "sha256": "b5e0e57e4aae30d7d877121fa8b526f3f5105e5e97d5a0bab55e4bcba2a67b49",
452
  "bytes": 267318145
453
  },
454
  "pytorch/vocoder.pt": {
 
4
  "bytes": 11357
5
  },
6
  "README.md": {
7
+ "sha256": "a01cb02c74bcedd0072fc82b50bf0c5a9571b2d0e04800e9247756e67387f1c5",
8
+ "bytes": 10066
9
  },
10
  "THIRD_PARTY_NOTICES.md": {
11
  "sha256": "3b793b8ee250cc711e4012ee42e9625a8a7e788bf12cab85a1abbd17b17644ca",
12
  "bytes": 2818
13
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
14
  "litert/assets/fixed_references.json": {
15
  "sha256": "d3c26e7e90d90fa719254ff1ff05dc4b391cd47231b7556c3c2ed5f63547925b",
16
  "bytes": 1115042
 
60
  "bytes": 28626144
61
  },
62
  "litert/litert/vector_context_encoder.tflite": {
63
+ "sha256": "a7d653507b92d8a5102f4281361e8ee8f03cf001b6889e1434ad1e760fbcf057",
64
  "bytes": 7763584
65
  },
66
  "litert/litert/vector_estimator.tflite": {
67
+ "sha256": "51f6ce100d8565fa7979718ca34ad0b19d1e14f6525c41c46112dfbd1d5b30cd",
68
  "bytes": 76550528
69
  },
70
  "litert/litert/vocoder.tflite": {
 
72
  "bytes": 38613392
73
  },
74
  "litert/manifest.json": {
75
+ "sha256": "7462b9d6ee715d8c44400994d4065b8eb635b724b6bc29ed8cbdf668e662a444",
76
+ "bytes": 20172
77
  },
78
  "onnx/assets/fixed_references.json": {
79
  "sha256": "d3c26e7e90d90fa719254ff1ff05dc4b391cd47231b7556c3c2ed5f63547925b",
 
116
  "bytes": 433
117
  },
118
  "onnx/manifest.json": {
119
+ "sha256": "544760ec2d22c47666d687f5f162d531a038222ac33fb8aed81042ea8ad06703",
120
+ "bytes": 20550
121
  },
122
  "onnx/onnx/components/duration_predictor.onnx": {
123
+ "sha256": "7f30552820354c976ba585691ab3c9d94f272df15125b36ef695343801bf6259",
124
  "bytes": 285227
125
  },
126
  "onnx/onnx/components/shared_weights.bin": {
127
+ "sha256": "e39b8dbc01078e6d7629057ec3a092fe17a40a090fb0d2839fbbd7dbaee7fbed",
128
  "bytes": 208219968
129
  },
130
  "onnx/onnx/components/shared_weights.json": {
131
+ "sha256": "3acfa38030535361101703f2e124ee62061d89ff11c41af1055eeea4cca67765",
132
+ "bytes": 990204
133
  },
134
  "onnx/onnx/components/vector_context_encoder.onnx": {
135
+ "sha256": "79b04221744e831c80516cfee5120b024b43fba573b9ab943fe2bd89376a0dfd",
136
+ "bytes": 66364
137
  },
138
  "onnx/onnx/components/vector_estimator.onnx": {
139
+ "sha256": "5dd555761629826c32fea6aa5e3b25aae937cbe827336b8545efb3cd39d98811",
140
+ "bytes": 2800846
141
  },
142
  "onnx/onnx/components/vector_estimator_128.onnx": {
143
+ "sha256": "ae45282a20cadac7663d30d2e754a60b9164a15e5fbb390a6ec21f9ab4e3d33a",
144
+ "bytes": 915657
145
  },
146
  "onnx/onnx/components/vector_estimator_256.onnx": {
147
+ "sha256": "007f094ad391f1d444131f84fd09aaf31c9e3a2ab2d3a70af157f9cdc9fd0c95",
148
+ "bytes": 1184969
149
  },
150
  "onnx/onnx/components/vector_estimator_384.onnx": {
151
+ "sha256": "dcd1337c9024c6bdcba4698f4c93a13d51fed56c5b55fced6fcefe2f6196de4a",
152
+ "bytes": 1454281
153
  },
154
  "onnx/onnx/components/vector_estimator_512.onnx": {
155
+ "sha256": "8d4c522cfc7d2167dbc7ec4017e14757878b52aedebf7fd522e7a0cfe0a19096",
156
+ "bytes": 1723593
157
  },
158
  "onnx/onnx/components/vector_estimator_768.onnx": {
159
+ "sha256": "dc186567046dc1eb017329f38f11419efc31f6749b1344fca8abb55c49b6b516",
160
+ "bytes": 2262218
161
  },
162
  "onnx/onnx/components/vocoder.onnx": {
163
+ "sha256": "9f2343d201977fec1ca729de290ae969ff3457d6fa14bc3daa91dbee6d0088db",
164
+ "bytes": 122563
165
  },
166
  "onnx/onnx/components/vocoder_128.onnx": {
167
+ "sha256": "44b23f50ed8cd49cbff3a43e435fc35780e3cb63f5169ff5f9613b31869c15e4",
168
+ "bytes": 122563
169
  },
170
  "onnx/onnx/components/vocoder_256.onnx": {
171
+ "sha256": "6ad741f17902a63aa17d474ad6862cdcfeba796a19f40a892f008cf4f623d884",
172
+ "bytes": 122562
173
  },
174
  "onnx/onnx/components/vocoder_384.onnx": {
175
+ "sha256": "2fc1a749fd557d17ca352a269dacf042f4ca1da750ef74bc5e4982d2a8f9f533",
176
+ "bytes": 122563
177
  },
178
  "onnx/onnx/components/vocoder_512.onnx": {
179
+ "sha256": "b7cc541079751236d3612f457c25c45748d986d715e836293cffa23336f31b80",
180
+ "bytes": 122563
181
  },
182
  "onnx/onnx/components/vocoder_768.onnx": {
183
+ "sha256": "4725a2e9b599a5dd393e5454413282974856224e7913aa3701b6629134bb544c",
184
+ "bytes": 122564
185
  },
186
  "onnx/onnx/g2p/model.onnx": {
187
+ "sha256": "b733b7cedef6ec1c1822771f8b5d7ce430fdc7b4c4d7aac0617044419d0e3296",
188
+ "bytes": 40420257
189
  },
190
  "onnx/onnx/g2p/phoneme_dict.json": {
191
  "sha256": "9cfb40b2fd31d7a32351c33f90230062554a4dc0a44e89f722de211d42ed1875",
 
208
  "bytes": 786473
209
  },
210
  "pytorch/g2p.pt": {
211
+ "sha256": "c1aff82582456abc7667cf471a045ebaea3296a6b74240cc5e40b4686f643950",
212
  "bytes": 119207485
213
  },
214
  "pytorch/phone_vocab.json": {
 
216
  "bytes": 1793
217
  },
218
  "pytorch/release_config.json": {
219
+ "sha256": "b8e900aad0ec09e4b2e96f0d93542df14e271ea7e57c603c542acdef0f80cc6c",
220
+ "bytes": 842
221
  },
222
  "pytorch/vector_estimator.pt": {
223
+ "sha256": "556caf9f64a97329679ca99b3e6b59e1ecfb8ae312ad2321d10e7ba1e979b1da",
224
  "bytes": 267318145
225
  },
226
  "pytorch/vocoder.pt": {
coreai/assets/fixed_references.json DELETED
The diff for this file is too large to render. See raw diff
 
coreai/assets/g2p/export_config.json DELETED
@@ -1,33 +0,0 @@
1
- {
2
- "batch_dynamic": true,
3
- "format": "scyllasband_g2p",
4
- "input_granularity": "phrase",
5
- "languages": [
6
- "de",
7
- "en_gb",
8
- "en_us",
9
- "es",
10
- "fr",
11
- "it",
12
- "vi"
13
- ],
14
- "model_type": "transformer",
15
- "onnx_export_batch_size": 4,
16
- "onnx_export_layout": "batch_first",
17
- "onnx_export_max_batch_size": 256,
18
- "onnx_exporter": "dynamo",
19
- "onnx_fp32_model": "model.onnx",
20
- "onnx_model": "model.onnx",
21
- "onnx_padded_output": "ctc_blank",
22
- "onnx_quantization": "none",
23
- "onnx_quantized_parity_tolerance": 3.0,
24
- "opset": 18,
25
- "phoneme_token_mode": "char",
26
- "phrase_rows_per_language": 200000,
27
- "preserve_commas": true,
28
- "punctuation_silence_target": "explicit_silence",
29
- "release_role": "fp32_bundle_frontend",
30
- "source_checkpoint": "output/deepphonemizer_multilingual/model_v10_7lang/checkpoints/model_step_250k.pt",
31
- "training_mix": "phrase_word_chunked_clean",
32
- "word_rows_per_language": 200000
33
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
coreai/assets/g2p/language_map.json DELETED
@@ -1,47 +0,0 @@
1
- {
2
- "american": "en_us",
3
- "american_english": "en_us",
4
- "british": "en_gb",
5
- "british_english": "en_gb",
6
- "de": "de",
7
- "de_de": "de",
8
- "deu": "de",
9
- "en": "en_us",
10
- "en-gb": "en_gb",
11
- "en-uk": "en_gb",
12
- "en-us": "en_us",
13
- "en_gb": "en_gb",
14
- "en_uk": "en_gb",
15
- "en_us": "en_us",
16
- "eng": "en_us",
17
- "eng_gb": "en_gb",
18
- "eng_us": "en_us",
19
- "english": "en_us",
20
- "english_gb": "en_gb",
21
- "english_uk": "en_gb",
22
- "english_us": "en_us",
23
- "es": "es",
24
- "es_es": "es",
25
- "es_mx": "es",
26
- "fr": "fr",
27
- "fr_fr": "fr",
28
- "fra": "fr",
29
- "fre": "fr",
30
- "french": "fr",
31
- "gb": "en_gb",
32
- "ger": "de",
33
- "german": "de",
34
- "it": "it",
35
- "it_it": "it",
36
- "ita": "it",
37
- "italian": "it",
38
- "spa": "es",
39
- "spanish": "es",
40
- "uk": "en_gb",
41
- "us": "en_us",
42
- "vi": "vi",
43
- "vi_hn": "vi",
44
- "vi_vn": "vi",
45
- "vie": "vi",
46
- "vietnamese": "vi"
47
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
coreai/assets/g2p/normalization.json DELETED
@@ -1,40 +0,0 @@
1
- {
2
- "contract": {
3
- "colon_semicolon_classes": "preserved",
4
- "dot_runs_two_or_more": "ellipsis_three_dots",
5
- "homogeneous_terminal_runs": "single_mark",
6
- "lexical_hyphen": "space_no_pause",
7
- "mixed_question_exclamation": "leading_mark",
8
- "non_acoustic_modifiers": [
9
- "stress",
10
- "length",
11
- "unicode_combining"
12
- ],
13
- "ok_spoken_form": "okay",
14
- "punctuation_silence_target": "explicit_silence",
15
- "syntactic_dash": "em_dash_pause",
16
- "training_phone_source": "espeak",
17
- "version": "scyllasband_spoken_text_v2_2026_08_05"
18
- },
19
- "contract_sha256": "d8fd1b2415d0d100d1c70237a4469117ee6b73d0e4da703e4654c83192779cc4",
20
- "contract_version": "scyllasband_spoken_text_v2_2026_08_05",
21
- "expand_currency": true,
22
- "expand_dates": true,
23
- "expand_numbers": true,
24
- "expand_ordinals": true,
25
- "expand_percentages": true,
26
- "expand_times": true,
27
- "languages": [
28
- "en",
29
- "en_us",
30
- "en_gb",
31
- "es",
32
- "it",
33
- "fr",
34
- "de",
35
- "vi"
36
- ],
37
- "normalize_at_sign": true,
38
- "normalize_punctuation": true,
39
- "normalizer": "SpokenTextNormalizer"
40
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
coreai/assets/g2p/phoneme_dict.json DELETED
@@ -1,9 +0,0 @@
1
- {
2
- "de": {},
3
- "en_gb": {},
4
- "en_us": {},
5
- "es": {},
6
- "fr": {},
7
- "it": {},
8
- "vi": {}
9
- }
 
 
 
 
 
 
 
 
 
 
coreai/assets/g2p/pronunciation_overrides.json DELETED
@@ -1,4 +0,0 @@
1
- {
2
- "format": "scyllasband_g2p_pronunciation_overrides_v1",
3
- "languages": {}
4
- }
 
 
 
 
 
coreai/assets/g2p/tokenizer.json DELETED
@@ -1,517 +0,0 @@
1
- {
2
- "format": "deepphonemizer_forward_ctc",
3
- "languages": [
4
- "de",
5
- "en_gb",
6
- "en_us",
7
- "es",
8
- "fr",
9
- "it",
10
- "vi"
11
- ],
12
- "char_repeats": 4,
13
- "lowercase": true,
14
- "phoneme_token_mode": "char",
15
- "text_symbols": {
16
- "_": 0,
17
- "<de>": 1,
18
- "<en_gb>": 2,
19
- "<en_us>": 3,
20
- "<es>": 4,
21
- "<fr>": 5,
22
- "<it>": 6,
23
- "<vi>": 7,
24
- "<end>": 8,
25
- "\b": 9,
26
- " ": 10,
27
- "!": 11,
28
- "\"": 12,
29
- "#": 13,
30
- "$": 14,
31
- "%": 15,
32
- "&": 16,
33
- "'": 17,
34
- "(": 18,
35
- ")": 19,
36
- "*": 20,
37
- "+": 21,
38
- ",": 22,
39
- "-": 23,
40
- ".": 24,
41
- "/": 25,
42
- "0": 26,
43
- "1": 27,
44
- "2": 28,
45
- "3": 29,
46
- "4": 30,
47
- "5": 31,
48
- "6": 32,
49
- "7": 33,
50
- "8": 34,
51
- "9": 35,
52
- ":": 36,
53
- ";": 37,
54
- "<": 38,
55
- "=": 39,
56
- ">": 40,
57
- "?": 41,
58
- "@": 42,
59
- "A": 43,
60
- "B": 44,
61
- "C": 45,
62
- "D": 46,
63
- "E": 47,
64
- "F": 48,
65
- "G": 49,
66
- "H": 50,
67
- "I": 51,
68
- "J": 52,
69
- "K": 53,
70
- "L": 54,
71
- "M": 55,
72
- "N": 56,
73
- "O": 57,
74
- "P": 58,
75
- "Q": 59,
76
- "R": 60,
77
- "S": 61,
78
- "T": 62,
79
- "U": 63,
80
- "V": 64,
81
- "W": 65,
82
- "X": 66,
83
- "Y": 67,
84
- "Z": 68,
85
- "[": 69,
86
- "\\": 70,
87
- "]": 71,
88
- "^": 72,
89
- "`": 73,
90
- "a": 74,
91
- "b": 75,
92
- "c": 76,
93
- "d": 77,
94
- "e": 78,
95
- "f": 79,
96
- "g": 80,
97
- "h": 81,
98
- "i": 82,
99
- "j": 83,
100
- "k": 84,
101
- "l": 85,
102
- "m": 86,
103
- "n": 87,
104
- "o": 88,
105
- "p": 89,
106
- "q": 90,
107
- "r": 91,
108
- "s": 92,
109
- "t": 93,
110
- "u": 94,
111
- "v": 95,
112
- "w": 96,
113
- "x": 97,
114
- "y": 98,
115
- "z": 99,
116
- "{": 100,
117
- "|": 101,
118
- "}": 102,
119
- "~": 103,
120
- "¡": 104,
121
- "¢": 105,
122
- "£": 106,
123
- "¥": 107,
124
- "§": 108,
125
- "ª": 109,
126
- "«": 110,
127
- "­": 111,
128
- "®": 112,
129
- "°": 113,
130
- "±": 114,
131
- "²": 115,
132
- "³": 116,
133
- "´": 117,
134
- "¶": 118,
135
- "·": 119,
136
- "¹": 120,
137
- "º": 121,
138
- "»": 122,
139
- "¼": 123,
140
- "½": 124,
141
- "¾": 125,
142
- "¿": 126,
143
- "À": 127,
144
- "Á": 128,
145
- "Â": 129,
146
- "Ä": 130,
147
- "Å": 131,
148
- "Æ": 132,
149
- "Ç": 133,
150
- "È": 134,
151
- "É": 135,
152
- "Ê": 136,
153
- "Í": 137,
154
- "Ï": 138,
155
- "Ñ": 139,
156
- "Ó": 140,
157
- "Ô": 141,
158
- "Ö": 142,
159
- "×": 143,
160
- "Ù": 144,
161
- "Ú": 145,
162
- "Ü": 146,
163
- "Ý": 147,
164
- "Þ": 148,
165
- "ß": 149,
166
- "à": 150,
167
- "á": 151,
168
- "â": 152,
169
- "ã": 153,
170
- "ä": 154,
171
- "å": 155,
172
- "æ": 156,
173
- "ç": 157,
174
- "è": 158,
175
- "é": 159,
176
- "ê": 160,
177
- "ë": 161,
178
- "ì": 162,
179
- "í": 163,
180
- "î": 164,
181
- "ï": 165,
182
- "ð": 166,
183
- "ñ": 167,
184
- "ò": 168,
185
- "ó": 169,
186
- "ô": 170,
187
- "õ": 171,
188
- "ö": 172,
189
- "ø": 173,
190
- "ù": 174,
191
- "ú": 175,
192
- "û": 176,
193
- "ü": 177,
194
- "ý": 178,
195
- "þ": 179,
196
- "ÿ": 180,
197
- "ā": 181,
198
- "Ă": 182,
199
- "ă": 183,
200
- "ą": 184,
201
- "ć": 185,
202
- "č": 186,
203
- "Đ": 187,
204
- "đ": 188,
205
- "ē": 189,
206
- "ė": 190,
207
- "ę": 191,
208
- "ğ": 192,
209
- "ġ": 193,
210
- "ĩ": 194,
211
- "ī": 195,
212
- "ļ": 196,
213
- "ł": 197,
214
- "ń": 198,
215
- "Ō": 199,
216
- "ō": 200,
217
- "Œ": 201,
218
- "œ": 202,
219
- "ŕ": 203,
220
- "ś": 204,
221
- "ş": 205,
222
- "š": 206,
223
- "ŧ": 207,
224
- "ũ": 208,
225
- "ū": 209,
226
- "ŭ": 210,
227
- "ů": 211,
228
- "ű": 212,
229
- "ż": 213,
230
- "Ž": 214,
231
- "ž": 215,
232
- "ſ": 216,
233
- "Ơ": 217,
234
- "ơ": 218,
235
- "Ư": 219,
236
- "ư": 220,
237
- "ǁ": 221,
238
- "ǂ": 222,
239
- "ǐ": 223,
240
- "ǘ": 224,
241
- "ǧ": 225,
242
- "ș": 226,
243
- "Ȝ": 227,
244
- "ȝ": 228,
245
- "ȟ": 229,
246
- "ɛ": 230,
247
- "ʰ": 231,
248
- "ˆ": 232,
249
- "ˈ": 233,
250
- "ˢ": 234,
251
- "̃": 235,
252
- "̍": 236,
253
- "̣": 237,
254
- "̱": 238,
255
- "͈": 239,
256
- "α": 240,
257
- "β": 241,
258
- "γ": 242,
259
- "δ": 243,
260
- "ε": 244,
261
- "η": 245,
262
- "κ": 246,
263
- "μ": 247,
264
- "ξ": 248,
265
- "π": 249,
266
- "ς": 250,
267
- "σ": 251,
268
- "χ": 252,
269
- "ψ": 253,
270
- "а": 254,
271
- "д": 255,
272
- "е": 256,
273
- "з": 257,
274
- "и": 258,
275
- "к": 259,
276
- "л": 260,
277
- "о": 261,
278
- "п": 262,
279
- "р": 263,
280
- "с": 264,
281
- "т": 265,
282
- "ч": 266,
283
- "ь": 267,
284
- "ง": 268,
285
- "ย": 269,
286
- "า": 270,
287
- "่": 271,
288
- "ည": 272,
289
- "လ": 273,
290
- "း": 274,
291
- "်": 275,
292
- "ᵈ": 276,
293
- "ᵗ": 277,
294
- "ḅ": 278,
295
- "ḍ": 279,
296
- "ḳ": 280,
297
- "ṅ": 281,
298
- "Ṭ": 282,
299
- "ẓ": 283,
300
- "ạ": 284,
301
- "Ả": 285,
302
- "ả": 286,
303
- "Ấ": 287,
304
- "ấ": 288,
305
- "ầ": 289,
306
- "ẩ": 290,
307
- "ẫ": 291,
308
- "ậ": 292,
309
- "ắ": 293,
310
- "ằ": 294,
311
- "ẳ": 295,
312
- "ẵ": 296,
313
- "ặ": 297,
314
- "ẹ": 298,
315
- "ẻ": 299,
316
- "ẽ": 300,
317
- "Ế": 301,
318
- "ế": 302,
319
- "Ề": 303,
320
- "ề": 304,
321
- "ể": 305,
322
- "ễ": 306,
323
- "ệ": 307,
324
- "ỉ": 308,
325
- "ị": 309,
326
- "ọ": 310,
327
- "ỏ": 311,
328
- "Ố": 312,
329
- "ố": 313,
330
- "Ồ": 314,
331
- "ồ": 315,
332
- "Ổ": 316,
333
- "ổ": 317,
334
- "ỗ": 318,
335
- "Ộ": 319,
336
- "ộ": 320,
337
- "ớ": 321,
338
- "Ờ": 322,
339
- "ờ": 323,
340
- "Ở": 324,
341
- "ở": 325,
342
- "ỡ": 326,
343
- "ợ": 327,
344
- "ụ": 328,
345
- "ủ": 329,
346
- "Ứ": 330,
347
- "ứ": 331,
348
- "Ừ": 332,
349
- "ừ": 333,
350
- "ử": 334,
351
- "ữ": 335,
352
- "ự": 336,
353
- "ỳ": 337,
354
- "ỵ": 338,
355
- "Ỷ": 339,
356
- "ỷ": 340,
357
- "ỹ": 341,
358
- "ὖ": 342,
359
- "ὼ": 343,
360
- "ῆ": 344,
361
- "​": 345,
362
- "‐": 346,
363
- "—": 347,
364
- "―": 348,
365
- "†": 349,
366
- "•": 350,
367
- "…": 351,
368
- "‰": 352,
369
- "′": 353,
370
- "″": 354,
371
- "⁄": 355,
372
- "⁷": 356,
373
- "⁻": 357,
374
- "₀": 358,
375
- "₁": 359,
376
- "₂": 360,
377
- "₃": 361,
378
- "₄": 362,
379
- "₅": 363,
380
- "₆": 364,
381
- "₇": 365,
382
- "₈": 366,
383
- "€": 367,
384
- "₹": 368,
385
- "⅓": 369,
386
- "⅔": 370,
387
- "⅖": 371,
388
- "⅙": 372,
389
- "⅛": 373,
390
- "⅝": 374,
391
- "√": 375,
392
- "│": 376,
393
- "♦": 377,
394
- "⚓": 378,
395
- "✈": 379,
396
- "✠": 380,
397
- "✨": 381,
398
- "⟙": 382,
399
- "⸺": 383,
400
- "。": 384,
401
- "〈": 385,
402
- "な": 386,
403
- "三": 387,
404
- "次": 388,
405
- "肿": 389,
406
- "臃": 390,
407
- "구": 391,
408
- "로": 392,
409
- "요": 393,
410
- "ﷺ": 394,
411
- "️": 395,
412
- "𝑥": 396,
413
- "𝑦": 397,
414
- "🌊": 398,
415
- "🌿": 399,
416
- "💦": 400,
417
- "💨": 401
418
- },
419
- "phoneme_symbols": {
420
- "0": "_",
421
- "1": "<de>",
422
- "2": "<en_gb>",
423
- "3": "<en_us>",
424
- "4": "<es>",
425
- "5": "<fr>",
426
- "6": "<it>",
427
- "7": "<vi>",
428
- "8": "<end>",
429
- "9": " ",
430
- "10": "!",
431
- "11": ",",
432
- "12": "-",
433
- "13": ".",
434
- "14": "1",
435
- "15": "2",
436
- "16": "4",
437
- "17": "5",
438
- "18": "6",
439
- "19": "7",
440
- "20": ":",
441
- "21": ";",
442
- "22": "?",
443
- "23": "a",
444
- "24": "b",
445
- "25": "c",
446
- "26": "d",
447
- "27": "e",
448
- "28": "f",
449
- "29": "h",
450
- "30": "i",
451
- "31": "j",
452
- "32": "k",
453
- "33": "l",
454
- "34": "m",
455
- "35": "n",
456
- "36": "o",
457
- "37": "p",
458
- "38": "q",
459
- "39": "r",
460
- "40": "s",
461
- "41": "t",
462
- "42": "u",
463
- "43": "v",
464
- "44": "w",
465
- "45": "x",
466
- "46": "y",
467
- "47": "z",
468
- "48": "«",
469
- "49": "»",
470
- "50": "æ",
471
- "51": "ç",
472
- "52": "ð",
473
- "53": "ø",
474
- "54": "ŋ",
475
- "55": "œ",
476
- "56": "ɐ",
477
- "57": "ɑ",
478
- "58": "ɒ",
479
- "59": "ɔ",
480
- "60": "ɗ",
481
- "61": "ə",
482
- "62": "ɚ",
483
- "63": "ɛ",
484
- "64": "ɜ",
485
- "65": "ɟ",
486
- "66": "ɡ",
487
- "67": "ɣ",
488
- "68": "ɨ",
489
- "69": "ɪ",
490
- "70": "ɬ",
491
- "71": "ɯ",
492
- "72": "ɲ",
493
- "73": "ɹ",
494
- "74": "ɾ",
495
- "75": "ʁ",
496
- "76": "ʃ",
497
- "77": "ʊ",
498
- "78": "ʌ",
499
- "79": "ʎ",
500
- "80": "ʐ",
501
- "81": "ʒ",
502
- "82": "ʔ",
503
- "83": "ʝ",
504
- "84": "ʲ",
505
- "85": "ˈ",
506
- "86": "ˌ",
507
- "87": "ː",
508
- "88": "̃",
509
- "89": "̩",
510
- "90": "̪",
511
- "91": "β",
512
- "92": "θ",
513
- "93": "ᵻ",
514
- "94": "—",
515
- "95": "…"
516
- }
517
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
coreai/assets/languages.json DELETED
@@ -1,30 +0,0 @@
1
- [
2
- {
3
- "id": "en_us",
4
- "index": 0
5
- },
6
- {
7
- "id": "en_gb",
8
- "index": 1
9
- },
10
- {
11
- "id": "es",
12
- "index": 2
13
- },
14
- {
15
- "id": "it",
16
- "index": 3
17
- },
18
- {
19
- "id": "fr",
20
- "index": 4
21
- },
22
- {
23
- "id": "de",
24
- "index": 5
25
- },
26
- {
27
- "id": "vi",
28
- "index": 6
29
- }
30
- ]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
coreai/assets/phone_vocab.json DELETED
@@ -1,111 +0,0 @@
1
- {
2
- "schema_version": 1,
3
- "mode": "scyllasband_ipa_phone_symbols",
4
- "special_tokens": [
5
- "<pad>",
6
- "<unk>",
7
- "<sil>",
8
- "<pause_comma>",
9
- "<pause_semicolon>",
10
- "<pause_colon>",
11
- "<pause_dash>",
12
- "<ellipsis>",
13
- "<end_stmt>",
14
- "<end_question>",
15
- "<end_exclaim>",
16
- "<ctx_sentence_start>",
17
- "<ctx_continuation>",
18
- "<ctx_sentence_end>",
19
- "<ctx_chunk_continue>"
20
- ],
21
- "vocab_size": 87,
22
- "token_to_id": {
23
- "<pad>": 0,
24
- "<unk>": 1,
25
- "<sil>": 2,
26
- "<pause_comma>": 3,
27
- "<pause_semicolon>": 4,
28
- "<pause_colon>": 5,
29
- "<pause_dash>": 6,
30
- "<ellipsis>": 7,
31
- "<end_stmt>": 8,
32
- "<end_question>": 9,
33
- "<end_exclaim>": 10,
34
- "<ctx_sentence_start>": 11,
35
- "<ctx_continuation>": 12,
36
- "<ctx_sentence_end>": 13,
37
- "<ctx_chunk_continue>": 14,
38
- "1": 15,
39
- "2": 16,
40
- "4": 17,
41
- "5": 18,
42
- "6": 19,
43
- "7": 20,
44
- "a": 21,
45
- "b": 22,
46
- "c": 23,
47
- "d": 24,
48
- "e": 25,
49
- "f": 26,
50
- "h": 27,
51
- "i": 28,
52
- "j": 29,
53
- "k": 30,
54
- "l": 31,
55
- "m": 32,
56
- "n": 33,
57
- "o": 34,
58
- "p": 35,
59
- "r": 36,
60
- "s": 37,
61
- "t": 38,
62
- "u": 39,
63
- "v": 40,
64
- "w": 41,
65
- "x": 42,
66
- "y": 43,
67
- "z": 44,
68
- "æ": 45,
69
- "ç": 46,
70
- "ð": 47,
71
- "ø": 48,
72
- "ŋ": 49,
73
- "œ": 50,
74
- "ɐ": 51,
75
- "ɑ": 52,
76
- "ɒ": 53,
77
- "ɔ": 54,
78
- "ɗ": 55,
79
- "ə": 56,
80
- "ɚ": 57,
81
- "ɛ": 58,
82
- "ɜ": 59,
83
- "ɟ": 60,
84
- "ɡ": 61,
85
- "ɣ": 62,
86
- "ɪ": 63,
87
- "ɯ": 64,
88
- "ɲ": 65,
89
- "ɹ": 66,
90
- "ɾ": 67,
91
- "ʁ": 68,
92
- "ʃ": 69,
93
- "ʊ": 70,
94
- "ʌ": 71,
95
- "ʎ": 72,
96
- "ʐ": 73,
97
- "ʒ": 74,
98
- "ʔ": 75,
99
- "ʝ": 76,
100
- "ʲ": 77,
101
- "ˈ": 78,
102
- "ˌ": 79,
103
- "ː": 80,
104
- "̃": 81,
105
- "̩": 82,
106
- "̪": 83,
107
- "β": 84,
108
- "θ": 85,
109
- "ᵻ": 86
110
- }
111
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
coreai/assets/voices.json DELETED
@@ -1,42 +0,0 @@
1
- [
2
- {
3
- "id": "ariadne",
4
- "index": 0
5
- },
6
- {
7
- "id": "felix",
8
- "index": 1
9
- },
10
- {
11
- "id": "gwen",
12
- "index": 2
13
- },
14
- {
15
- "id": "ink",
16
- "index": 3
17
- },
18
- {
19
- "id": "max",
20
- "index": 4
21
- },
22
- {
23
- "id": "orpheus",
24
- "index": 5
25
- },
26
- {
27
- "id": "rex",
28
- "index": 6
29
- },
30
- {
31
- "id": "scylla",
32
- "index": 7
33
- },
34
- {
35
- "id": "stone",
36
- "index": 8
37
- },
38
- {
39
- "id": "tuesday",
40
- "index": 9
41
- }
42
- ]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
coreai/coreai/duration_predictor.aimodel/main.hash DELETED
@@ -1 +0,0 @@
1
- BC�6�����3����KS��m�X�����I
 
 
coreai/coreai/duration_predictor.aimodel/main.mlirb DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:4243d405361c9ebc82a0e233a3cb1bd5d64b5389a96ddd58947f14fb84b3c949
3
- size 10884924
 
 
 
 
coreai/coreai/duration_predictor.aimodel/metadata.json DELETED
@@ -1,5 +0,0 @@
1
- {
2
- "assetVersion" : "2.0",
3
- "producer" : "coreai-core 1.0.0b3",
4
- "creationDate" : "20261005T221157Z"
5
- }
 
 
 
 
 
 
coreai/coreai/g2p.aimodel/main.hash DELETED
@@ -1 +0,0 @@
1
- �Bj�Yp*��vB
 
 
coreai/coreai/g2p.aimodel/main.mlirb DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:e7426aa159702a859176420d0c34b493da7d3dd97fa74fdeedb2ee4c4f0dce18
3
- size 28377271
 
 
 
 
coreai/coreai/g2p.aimodel/metadata.json DELETED
@@ -1,5 +0,0 @@
1
- {
2
- "producer" : "coreai-core 1.0.0b3",
3
- "creationDate" : "20261005T221156Z",
4
- "assetVersion" : "2.0"
5
- }
 
 
 
 
 
 
coreai/coreai/vector_context_encoder.aimodel/main.hash DELETED
@@ -1 +0,0 @@
1
- ��@�,�� ����4��r�YM�E�Ϡm����5
 
 
coreai/coreai/vector_context_encoder.aimodel/main.mlirb DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:9dca40e4aa2ce1cf2099c7c4ee34bbea72f2594d88459210cfa06dfc9592f135
3
- size 8029277
 
 
 
 
coreai/coreai/vector_context_encoder.aimodel/metadata.json DELETED
@@ -1,5 +0,0 @@
1
- {
2
- "creationDate" : "20261005T221159Z",
3
- "assetVersion" : "2.0",
4
- "producer" : "coreai-core 1.0.0b3"
5
- }
 
 
 
 
 
 
coreai/coreai/vector_estimator.aimodel/main.hash DELETED
@@ -1 +0,0 @@
1
- M��\��-:��G�
 
 
coreai/coreai/vector_estimator.aimodel/main.mlirb DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:4dc8e41c5c9de01f2d3a9fd847a30df8b27ceec9aa0894b235f49181dcd664d2
3
- size 63149068
 
 
 
 
coreai/coreai/vector_estimator.aimodel/metadata.json DELETED
@@ -1,5 +0,0 @@
1
- {
2
- "assetVersion" : "2.0",
3
- "creationDate" : "20261005T221212Z",
4
- "producer" : "coreai-core 1.0.0b3"
5
- }
 
 
 
 
 
 
coreai/coreai/vocoder.aimodel/main.hash DELETED
@@ -1 +0,0 @@
1
- 
 
 
coreai/coreai/vocoder.aimodel/main.mlirb DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:0e0d07b91327322c55da5081c7e3301565e92c5298dd9a5dfb74b71ee6074669
3
- size 43811030
 
 
 
 
coreai/coreai/vocoder.aimodel/metadata.json DELETED
@@ -1,5 +0,0 @@
1
- {
2
- "creationDate" : "20261005T221220Z",
3
- "producer" : "coreai-core 1.0.0b3",
4
- "assetVersion" : "2.0"
5
- }
 
 
 
 
 
 
coreai/manifest.json DELETED
@@ -1,1003 +0,0 @@
1
- {
2
- "architecture": "scyllasband-duration-flow",
3
- "assets": {
4
- "fixed_delivery_references": "assets/fixed_references.json",
5
- "g2p_config": "assets/g2p/export_config.json",
6
- "g2p_language_map": "assets/g2p/language_map.json",
7
- "g2p_normalization": "assets/g2p/normalization.json",
8
- "g2p_phoneme_dict": "assets/g2p/phoneme_dict.json",
9
- "g2p_pronunciation_overrides": "assets/g2p/pronunciation_overrides.json",
10
- "g2p_tokenizer": "assets/g2p/tokenizer.json",
11
- "language_index": "assets/languages.json",
12
- "phone_vocab": "assets/phone_vocab.json",
13
- "voice_index": "assets/voices.json"
14
- },
15
- "audio": {
16
- "hop_length": 256,
17
- "latent_dim": 24,
18
- "latent_hop_length": 512,
19
- "n_mels": 100,
20
- "sample_rate": 24000
21
- },
22
- "components": {
23
- "g2p_64": {
24
- "artifacts": {
25
- "coreai": {
26
- "format": "coreai",
27
- "path": "coreai/g2p.aimodel",
28
- "function": "g2p_64"
29
- }
30
- },
31
- "inputs": [
32
- "text"
33
- ],
34
- "outputs": [
35
- "logits"
36
- ],
37
- "required": false
38
- },
39
- "g2p_128": {
40
- "artifacts": {
41
- "coreai": {
42
- "format": "coreai",
43
- "path": "coreai/g2p.aimodel",
44
- "function": "g2p_128"
45
- }
46
- },
47
- "inputs": [
48
- "text"
49
- ],
50
- "outputs": [
51
- "logits"
52
- ],
53
- "required": false
54
- },
55
- "g2p_256": {
56
- "artifacts": {
57
- "coreai": {
58
- "format": "coreai",
59
- "path": "coreai/g2p.aimodel",
60
- "function": "g2p_256"
61
- }
62
- },
63
- "inputs": [
64
- "text"
65
- ],
66
- "outputs": [
67
- "logits"
68
- ],
69
- "required": false
70
- },
71
- "g2p": {
72
- "artifacts": {
73
- "coreai": {
74
- "format": "coreai",
75
- "path": "coreai/g2p.aimodel",
76
- "function": "g2p"
77
- }
78
- },
79
- "inputs": [
80
- "text"
81
- ],
82
- "outputs": [
83
- "logits"
84
- ],
85
- "required": true
86
- },
87
- "duration_predictor": {
88
- "artifacts": {
89
- "coreai": {
90
- "format": "coreai",
91
- "path": "coreai/duration_predictor.aimodel",
92
- "function": "duration_predictor"
93
- }
94
- },
95
- "inputs": [
96
- "span_phone_ids",
97
- "span_segment_ids",
98
- "span_mask",
99
- "voice_id",
100
- "language_id",
101
- "delivery_values",
102
- "delivery_present"
103
- ],
104
- "outputs": [
105
- "durations"
106
- ],
107
- "required": true
108
- },
109
- "vector_context_encoder": {
110
- "artifacts": {
111
- "coreai": {
112
- "format": "coreai",
113
- "path": "coreai/vector_context_encoder.aimodel",
114
- "function": "vector_context_encoder"
115
- }
116
- },
117
- "inputs": [
118
- "span_context_phone_ids",
119
- "span_context_segment_ids",
120
- "span_context_mask"
121
- ],
122
- "outputs": [
123
- "span_context_hidden"
124
- ],
125
- "required": true
126
- },
127
- "vector_estimator_128": {
128
- "artifacts": {
129
- "coreai": {
130
- "format": "coreai",
131
- "path": "coreai/vector_estimator.aimodel",
132
- "function": "vector_estimator_128"
133
- }
134
- },
135
- "inputs": [
136
- "noise",
137
- "time",
138
- "expanded_phone_ids",
139
- "voice_id",
140
- "language_id",
141
- "delivery_values",
142
- "delivery_present",
143
- "latent_mask",
144
- "span_context_hidden",
145
- "prefix_latents",
146
- "prefix_mask",
147
- "expanded_boundary_event_ids",
148
- "expanded_modifier_event_ids",
149
- "expanded_phone_phase",
150
- "expanded_phone_log_duration",
151
- "expanded_sentence_type_ids"
152
- ],
153
- "outputs": [
154
- "velocity"
155
- ],
156
- "required": false
157
- },
158
- "vocoder_128": {
159
- "artifacts": {
160
- "coreai": {
161
- "format": "coreai",
162
- "path": "coreai/vocoder.aimodel",
163
- "function": "vocoder_128"
164
- }
165
- },
166
- "inputs": [
167
- "latents",
168
- "latent_mask",
169
- "voice_id",
170
- "language_id",
171
- "emotion_id"
172
- ],
173
- "outputs": [
174
- "audio"
175
- ],
176
- "required": false
177
- },
178
- "vector_estimator_256": {
179
- "artifacts": {
180
- "coreai": {
181
- "format": "coreai",
182
- "path": "coreai/vector_estimator.aimodel",
183
- "function": "vector_estimator_256"
184
- }
185
- },
186
- "inputs": [
187
- "noise",
188
- "time",
189
- "expanded_phone_ids",
190
- "voice_id",
191
- "language_id",
192
- "delivery_values",
193
- "delivery_present",
194
- "latent_mask",
195
- "span_context_hidden",
196
- "prefix_latents",
197
- "prefix_mask",
198
- "expanded_boundary_event_ids",
199
- "expanded_modifier_event_ids",
200
- "expanded_phone_phase",
201
- "expanded_phone_log_duration",
202
- "expanded_sentence_type_ids"
203
- ],
204
- "outputs": [
205
- "velocity"
206
- ],
207
- "required": false
208
- },
209
- "vocoder_256": {
210
- "artifacts": {
211
- "coreai": {
212
- "format": "coreai",
213
- "path": "coreai/vocoder.aimodel",
214
- "function": "vocoder_256"
215
- }
216
- },
217
- "inputs": [
218
- "latents",
219
- "latent_mask",
220
- "voice_id",
221
- "language_id",
222
- "emotion_id"
223
- ],
224
- "outputs": [
225
- "audio"
226
- ],
227
- "required": false
228
- },
229
- "vector_estimator_384": {
230
- "artifacts": {
231
- "coreai": {
232
- "format": "coreai",
233
- "path": "coreai/vector_estimator.aimodel",
234
- "function": "vector_estimator_384"
235
- }
236
- },
237
- "inputs": [
238
- "noise",
239
- "time",
240
- "expanded_phone_ids",
241
- "voice_id",
242
- "language_id",
243
- "delivery_values",
244
- "delivery_present",
245
- "latent_mask",
246
- "span_context_hidden",
247
- "prefix_latents",
248
- "prefix_mask",
249
- "expanded_boundary_event_ids",
250
- "expanded_modifier_event_ids",
251
- "expanded_phone_phase",
252
- "expanded_phone_log_duration",
253
- "expanded_sentence_type_ids"
254
- ],
255
- "outputs": [
256
- "velocity"
257
- ],
258
- "required": false
259
- },
260
- "vocoder_384": {
261
- "artifacts": {
262
- "coreai": {
263
- "format": "coreai",
264
- "path": "coreai/vocoder.aimodel",
265
- "function": "vocoder_384"
266
- }
267
- },
268
- "inputs": [
269
- "latents",
270
- "latent_mask",
271
- "voice_id",
272
- "language_id",
273
- "emotion_id"
274
- ],
275
- "outputs": [
276
- "audio"
277
- ],
278
- "required": false
279
- },
280
- "vector_estimator_512": {
281
- "artifacts": {
282
- "coreai": {
283
- "format": "coreai",
284
- "path": "coreai/vector_estimator.aimodel",
285
- "function": "vector_estimator_512"
286
- }
287
- },
288
- "inputs": [
289
- "noise",
290
- "time",
291
- "expanded_phone_ids",
292
- "voice_id",
293
- "language_id",
294
- "delivery_values",
295
- "delivery_present",
296
- "latent_mask",
297
- "span_context_hidden",
298
- "prefix_latents",
299
- "prefix_mask",
300
- "expanded_boundary_event_ids",
301
- "expanded_modifier_event_ids",
302
- "expanded_phone_phase",
303
- "expanded_phone_log_duration",
304
- "expanded_sentence_type_ids"
305
- ],
306
- "outputs": [
307
- "velocity"
308
- ],
309
- "required": false
310
- },
311
- "vocoder_512": {
312
- "artifacts": {
313
- "coreai": {
314
- "format": "coreai",
315
- "path": "coreai/vocoder.aimodel",
316
- "function": "vocoder_512"
317
- }
318
- },
319
- "inputs": [
320
- "latents",
321
- "latent_mask",
322
- "voice_id",
323
- "language_id",
324
- "emotion_id"
325
- ],
326
- "outputs": [
327
- "audio"
328
- ],
329
- "required": false
330
- },
331
- "vector_estimator_768": {
332
- "artifacts": {
333
- "coreai": {
334
- "format": "coreai",
335
- "path": "coreai/vector_estimator.aimodel",
336
- "function": "vector_estimator_768"
337
- }
338
- },
339
- "inputs": [
340
- "noise",
341
- "time",
342
- "expanded_phone_ids",
343
- "voice_id",
344
- "language_id",
345
- "delivery_values",
346
- "delivery_present",
347
- "latent_mask",
348
- "span_context_hidden",
349
- "prefix_latents",
350
- "prefix_mask",
351
- "expanded_boundary_event_ids",
352
- "expanded_modifier_event_ids",
353
- "expanded_phone_phase",
354
- "expanded_phone_log_duration",
355
- "expanded_sentence_type_ids"
356
- ],
357
- "outputs": [
358
- "velocity"
359
- ],
360
- "required": false
361
- },
362
- "vocoder_768": {
363
- "artifacts": {
364
- "coreai": {
365
- "format": "coreai",
366
- "path": "coreai/vocoder.aimodel",
367
- "function": "vocoder_768"
368
- }
369
- },
370
- "inputs": [
371
- "latents",
372
- "latent_mask",
373
- "voice_id",
374
- "language_id",
375
- "emotion_id"
376
- ],
377
- "outputs": [
378
- "audio"
379
- ],
380
- "required": false
381
- },
382
- "vector_estimator": {
383
- "artifacts": {
384
- "coreai": {
385
- "format": "coreai",
386
- "path": "coreai/vector_estimator.aimodel",
387
- "function": "vector_estimator"
388
- }
389
- },
390
- "inputs": [
391
- "noise",
392
- "time",
393
- "expanded_phone_ids",
394
- "voice_id",
395
- "language_id",
396
- "delivery_values",
397
- "delivery_present",
398
- "latent_mask",
399
- "span_context_hidden",
400
- "prefix_latents",
401
- "prefix_mask",
402
- "expanded_boundary_event_ids",
403
- "expanded_modifier_event_ids",
404
- "expanded_phone_phase",
405
- "expanded_phone_log_duration",
406
- "expanded_sentence_type_ids"
407
- ],
408
- "outputs": [
409
- "velocity"
410
- ],
411
- "required": true
412
- },
413
- "vocoder": {
414
- "artifacts": {
415
- "coreai": {
416
- "format": "coreai",
417
- "path": "coreai/vocoder.aimodel",
418
- "function": "vocoder"
419
- }
420
- },
421
- "inputs": [
422
- "latents",
423
- "latent_mask",
424
- "voice_id",
425
- "language_id",
426
- "emotion_id"
427
- ],
428
- "outputs": [
429
- "audio"
430
- ],
431
- "required": true
432
- }
433
- },
434
- "contract_version": "1.0.0",
435
- "controls": {
436
- "chunk_context": {
437
- "artificial_continuation_boundaries": [
438
- "chunk_continue"
439
- ],
440
- "artificial_continuation_phone": null,
441
- "boundary_after_values": [
442
- "sentence_end",
443
- "paragraph_end",
444
- "clause_continue",
445
- "chunk_continue"
446
- ],
447
- "boundary_before_values": [
448
- "sentence_start",
449
- "paragraph_start",
450
- "clause_continue",
451
- "chunk_continue"
452
- ],
453
- "clause_continuation_fallback_phone": "<pause_comma>",
454
- "conditioning": "boundary_embeddings",
455
- "context_phone_tokens": {
456
- "continuation": "<ctx_continuation>",
457
- "sentence_end": "<ctx_sentence_end>",
458
- "sentence_start": "<ctx_sentence_start>"
459
- },
460
- "default_boundary_after": "sentence_end",
461
- "default_boundary_before": "sentence_start",
462
- "emit_context_phone_tokens": false,
463
- "linguistic_continuation_boundaries": [
464
- "clause_continue"
465
- ],
466
- "schema_version": 2
467
- },
468
- "chunking": {
469
- "shared_split_phone": "<sil>",
470
- "split_after": [
471
- "<end_stmt>",
472
- "<end_question>",
473
- "<end_exclaim>",
474
- "<ellipsis>"
475
- ],
476
- "unit": "sentence"
477
- },
478
- "decoding": {
479
- "context_frames": 48,
480
- "mode": "overlap"
481
- },
482
- "delivery": {
483
- "axes": [
484
- "energy",
485
- "tension",
486
- "valence",
487
- "assertiveness"
488
- ],
489
- "default": "neutral",
490
- "enabled": true,
491
- "neutral": 2.0,
492
- "normalization": "(rating-2)/4",
493
- "presence_mask": true,
494
- "range": [
495
- 0.0,
496
- 4.0
497
- ],
498
- "release_id": "v2-20261005",
499
- "scope": "utterance",
500
- "timeline_conditioning": false,
501
- "voice_locales": {
502
- "ariadne": [
503
- "de",
504
- "en_us",
505
- "es",
506
- "fr",
507
- "it",
508
- "vi"
509
- ],
510
- "felix": [
511
- "de",
512
- "en_us",
513
- "es",
514
- "fr",
515
- "it",
516
- "vi"
517
- ],
518
- "gwen": [
519
- "de",
520
- "en_us",
521
- "es",
522
- "fr",
523
- "it",
524
- "vi"
525
- ],
526
- "ink": [
527
- "de",
528
- "en_gb",
529
- "es",
530
- "fr",
531
- "it",
532
- "vi"
533
- ],
534
- "max": [
535
- "de",
536
- "en_us",
537
- "es",
538
- "fr",
539
- "it",
540
- "vi"
541
- ],
542
- "orpheus": [
543
- "de",
544
- "en_gb",
545
- "es",
546
- "fr",
547
- "it",
548
- "vi"
549
- ],
550
- "rex": [
551
- "de",
552
- "en_us",
553
- "es",
554
- "fr",
555
- "it",
556
- "vi"
557
- ],
558
- "scylla": [
559
- "de",
560
- "en_us",
561
- "es",
562
- "fr",
563
- "it",
564
- "vi"
565
- ],
566
- "stone": [
567
- "de",
568
- "en_us",
569
- "es",
570
- "fr",
571
- "it",
572
- "vi"
573
- ],
574
- "tuesday": [
575
- "de",
576
- "en_gb",
577
- "es",
578
- "fr",
579
- "it",
580
- "vi"
581
- ]
582
- },
583
- "whisper": "binary"
584
- },
585
- "durations": {
586
- "rounding": "half_even",
587
- "silence_min_frames": 0,
588
- "speech_min_frames": 1,
589
- "zero_frame_phones": "punctuation_and_modifiers"
590
- },
591
- "emotions": {
592
- "enabled": false
593
- },
594
- "energy": {
595
- "default": 1.0,
596
- "max": 1.5,
597
- "min": 0.5
598
- },
599
- "fixed_shapes": {
600
- "g2p_text_tokens": 512,
601
- "latent_frames": 1024,
602
- "phone_frames": 512
603
- },
604
- "graph_input_contract": "scyllasband_measured_delivery_v2",
605
- "pitch": {
606
- "default": 0.0,
607
- "max": 4.0,
608
- "min": -4.0
609
- },
610
- "prefix_conditioning": {
611
- "alignment": "right",
612
- "enabled": true,
613
- "max_frames": 96,
614
- "source": "previous_latents_tail"
615
- },
616
- "punctuation_silence": {
617
- "calibrated_floors": false,
618
- "floor_table_ms": {},
619
- "silence_phone": "<sil>",
620
- "target": "explicit_silence"
621
- },
622
- "reference_packs": {
623
- "enabled": false,
624
- "fixed_in_graph": true
625
- },
626
- "sampler": {
627
- "choices": [
628
- "euler",
629
- "heun"
630
- ],
631
- "default": "heun"
632
- },
633
- "span_conditioning": {
634
- "context_max_phones": 512,
635
- "context_phones_each_side": 180,
636
- "duration_inputs": [
637
- "span_phone_ids",
638
- "span_segment_ids",
639
- "span_mask"
640
- ],
641
- "enabled": true,
642
- "encoder_component": "vector_context_encoder",
643
- "encoder_inputs": [
644
- "span_context_phone_ids",
645
- "span_context_segment_ids",
646
- "span_context_mask"
647
- ],
648
- "exclude_context_phones": [
649
- "<sil>"
650
- ],
651
- "hidden_size": 512,
652
- "layout": "balanced_before_target_after",
653
- "scope": "passage",
654
- "segments": 3,
655
- "solver_input": "span_context_hidden"
656
- },
657
- "speed": {
658
- "default": 1.0,
659
- "max": 1.25,
660
- "min": 0.75
661
- },
662
- "steps": {
663
- "default": 8,
664
- "max": 64,
665
- "min": 1
666
- },
667
- "target_buckets": {
668
- "bucket_margin_frames": 0,
669
- "buckets": [
670
- {
671
- "default": false,
672
- "latent_frames": 128,
673
- "vector_estimator": "vector_estimator_128",
674
- "vocoder": "vocoder_128"
675
- },
676
- {
677
- "default": false,
678
- "latent_frames": 256,
679
- "vector_estimator": "vector_estimator_256",
680
- "vocoder": "vocoder_256"
681
- },
682
- {
683
- "default": false,
684
- "latent_frames": 384,
685
- "vector_estimator": "vector_estimator_384",
686
- "vocoder": "vocoder_384"
687
- },
688
- {
689
- "default": false,
690
- "latent_frames": 512,
691
- "vector_estimator": "vector_estimator_512",
692
- "vocoder": "vocoder_512"
693
- },
694
- {
695
- "default": false,
696
- "latent_frames": 768,
697
- "vector_estimator": "vector_estimator_768",
698
- "vocoder": "vocoder_768"
699
- },
700
- {
701
- "default": true,
702
- "latent_frames": 1024,
703
- "vector_estimator": "vector_estimator",
704
- "vocoder": "vocoder"
705
- }
706
- ],
707
- "default_latent_frames": 1024,
708
- "enabled": true,
709
- "policy": "smallest_fit"
710
- },
711
- "text_normalizer": {
712
- "prepared_contract_recorded": true,
713
- "sha256": "d8fd1b2415d0d100d1c70237a4469117ee6b73d0e4da703e4654c83192779cc4",
714
- "version": "scyllasband_spoken_text_v2_2026_08_05"
715
- },
716
- "timing_events": {
717
- "enabled": true,
718
- "inputs": [
719
- "expanded_boundary_event_ids",
720
- "expanded_modifier_event_ids",
721
- "expanded_phone_phase",
722
- "expanded_phone_log_duration",
723
- "expanded_sentence_type_ids"
724
- ],
725
- "modifier_bits": {
726
- "ˈ": 1,
727
- "ˌ": 2,
728
- "ː": 4,
729
- "̃": 8,
730
- "̩": 16,
731
- "̪": 32
732
- },
733
- "punctuation_owner": "following_silence_else_first_frame_of_next_phone",
734
- "sentence_type_count": 5,
735
- "sentence_type_lookahead": "following_context",
736
- "sentence_types": {
737
- "<ellipsis>": 4,
738
- "<end_exclaim>": 3,
739
- "<end_question>": 2,
740
- "<end_stmt>": 1
741
- },
742
- "word_start_event_id": 87,
743
- "word_start_owner": "first_phone_of_word_after_chunk_first_word"
744
- },
745
- "word_boundaries": {
746
- "duration_phone": "<sil>",
747
- "enabled": true,
748
- "g2p_output_symbol": " ",
749
- "zero_frames_allowed": true
750
- },
751
- "g2p_buckets": [
752
- {
753
- "text_tokens": 64,
754
- "component": "g2p_64"
755
- },
756
- {
757
- "text_tokens": 128,
758
- "component": "g2p_128"
759
- },
760
- {
761
- "text_tokens": 256,
762
- "component": "g2p_256"
763
- },
764
- {
765
- "text_tokens": 512,
766
- "component": "g2p"
767
- }
768
- ],
769
- "coreai": {
770
- "minimum_os": {
771
- "ios": "27.0",
772
- "macos": "27.0"
773
- },
774
- "io": {
775
- "ids": "int32",
776
- "masks": "int32",
777
- "values": "float32"
778
- },
779
- "assets": {
780
- "g2p": {
781
- "precision": "fp16",
782
- "weights": "w8",
783
- "bytes": 28377408
784
- },
785
- "duration_predictor": {
786
- "precision": "fp16",
787
- "weights": "w8",
788
- "bytes": 10885061
789
- },
790
- "vector_context_encoder": {
791
- "precision": "fp16",
792
- "weights": "w8",
793
- "bytes": 8029414
794
- },
795
- "vector_estimator": {
796
- "precision": "fp16",
797
- "weights": "w8",
798
- "bytes": 63149205
799
- },
800
- "vocoder": {
801
- "precision": "fp16",
802
- "weights": "w8",
803
- "bytes": 43811167
804
- }
805
- },
806
- "compute_units": "gpu",
807
- "neural_engine_assets": [
808
- "vector_estimator"
809
- ]
810
- }
811
- },
812
- "dataset_summary": {
813
- "controls": "measured_four_axes_plus_binary_whisper",
814
- "voice_locale_pairs": 60
815
- },
816
- "default_language": "en_us",
817
- "languages": [
818
- "en_us",
819
- "en_gb",
820
- "es",
821
- "it",
822
- "fr",
823
- "de",
824
- "vi"
825
- ],
826
- "model_name": "Scylla's Band",
827
- "model_version": "2",
828
- "preferred_backends": [
829
- "coreai"
830
- ],
831
- "voices": [
832
- {
833
- "default_language": "en_us",
834
- "embedding_path": null,
835
- "id": "ariadne",
836
- "languages": [
837
- "de",
838
- "en_us",
839
- "es",
840
- "fr",
841
- "it",
842
- "vi"
843
- ],
844
- "name": "ariadne",
845
- "styles": [
846
- "default"
847
- ]
848
- },
849
- {
850
- "default_language": "en_us",
851
- "embedding_path": null,
852
- "id": "felix",
853
- "languages": [
854
- "de",
855
- "en_us",
856
- "es",
857
- "fr",
858
- "it",
859
- "vi"
860
- ],
861
- "name": "felix",
862
- "styles": [
863
- "default"
864
- ]
865
- },
866
- {
867
- "default_language": "en_us",
868
- "embedding_path": null,
869
- "id": "gwen",
870
- "languages": [
871
- "de",
872
- "en_us",
873
- "es",
874
- "fr",
875
- "it",
876
- "vi"
877
- ],
878
- "name": "gwen",
879
- "styles": [
880
- "default"
881
- ]
882
- },
883
- {
884
- "default_language": "en_gb",
885
- "embedding_path": null,
886
- "id": "ink",
887
- "languages": [
888
- "de",
889
- "en_gb",
890
- "es",
891
- "fr",
892
- "it",
893
- "vi"
894
- ],
895
- "name": "ink",
896
- "styles": [
897
- "default"
898
- ]
899
- },
900
- {
901
- "default_language": "en_us",
902
- "embedding_path": null,
903
- "id": "max",
904
- "languages": [
905
- "de",
906
- "en_us",
907
- "es",
908
- "fr",
909
- "it",
910
- "vi"
911
- ],
912
- "name": "max",
913
- "styles": [
914
- "default"
915
- ]
916
- },
917
- {
918
- "default_language": "en_gb",
919
- "embedding_path": null,
920
- "id": "orpheus",
921
- "languages": [
922
- "de",
923
- "en_gb",
924
- "es",
925
- "fr",
926
- "it",
927
- "vi"
928
- ],
929
- "name": "orpheus",
930
- "styles": [
931
- "default"
932
- ]
933
- },
934
- {
935
- "default_language": "en_us",
936
- "embedding_path": null,
937
- "id": "rex",
938
- "languages": [
939
- "de",
940
- "en_us",
941
- "es",
942
- "fr",
943
- "it",
944
- "vi"
945
- ],
946
- "name": "rex",
947
- "styles": [
948
- "default"
949
- ]
950
- },
951
- {
952
- "default_language": "en_us",
953
- "embedding_path": null,
954
- "id": "scylla",
955
- "languages": [
956
- "de",
957
- "en_us",
958
- "es",
959
- "fr",
960
- "it",
961
- "vi"
962
- ],
963
- "name": "scylla",
964
- "styles": [
965
- "default"
966
- ]
967
- },
968
- {
969
- "default_language": "en_us",
970
- "embedding_path": null,
971
- "id": "stone",
972
- "languages": [
973
- "de",
974
- "en_us",
975
- "es",
976
- "fr",
977
- "it",
978
- "vi"
979
- ],
980
- "name": "stone",
981
- "styles": [
982
- "default"
983
- ]
984
- },
985
- {
986
- "default_language": "en_gb",
987
- "embedding_path": null,
988
- "id": "tuesday",
989
- "languages": [
990
- "de",
991
- "en_gb",
992
- "es",
993
- "fr",
994
- "it",
995
- "vi"
996
- ],
997
- "name": "tuesday",
998
- "styles": [
999
- "default"
1000
- ]
1001
- }
1002
- ]
1003
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
coreml/assets/fixed_references.json DELETED
The diff for this file is too large to render. See raw diff
 
coreml/assets/g2p/export_config.json DELETED
@@ -1,33 +0,0 @@
1
- {
2
- "batch_dynamic": true,
3
- "format": "scyllasband_g2p",
4
- "input_granularity": "phrase",
5
- "languages": [
6
- "de",
7
- "en_gb",
8
- "en_us",
9
- "es",
10
- "fr",
11
- "it",
12
- "vi"
13
- ],
14
- "model_type": "transformer",
15
- "onnx_export_batch_size": 4,
16
- "onnx_export_layout": "batch_first",
17
- "onnx_export_max_batch_size": 256,
18
- "onnx_exporter": "dynamo",
19
- "onnx_fp32_model": "model.onnx",
20
- "onnx_model": "model.onnx",
21
- "onnx_padded_output": "ctc_blank",
22
- "onnx_quantization": "none",
23
- "onnx_quantized_parity_tolerance": 3.0,
24
- "opset": 18,
25
- "phoneme_token_mode": "char",
26
- "phrase_rows_per_language": 200000,
27
- "preserve_commas": true,
28
- "punctuation_silence_target": "explicit_silence",
29
- "release_role": "fp32_bundle_frontend",
30
- "source_checkpoint": "output/deepphonemizer_multilingual/model_v10_7lang/checkpoints/model_step_250k.pt",
31
- "training_mix": "phrase_word_chunked_clean",
32
- "word_rows_per_language": 200000
33
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
coreml/assets/g2p/language_map.json DELETED
@@ -1,47 +0,0 @@
1
- {
2
- "american": "en_us",
3
- "american_english": "en_us",
4
- "british": "en_gb",
5
- "british_english": "en_gb",
6
- "de": "de",
7
- "de_de": "de",
8
- "deu": "de",
9
- "en": "en_us",
10
- "en-gb": "en_gb",
11
- "en-uk": "en_gb",
12
- "en-us": "en_us",
13
- "en_gb": "en_gb",
14
- "en_uk": "en_gb",
15
- "en_us": "en_us",
16
- "eng": "en_us",
17
- "eng_gb": "en_gb",
18
- "eng_us": "en_us",
19
- "english": "en_us",
20
- "english_gb": "en_gb",
21
- "english_uk": "en_gb",
22
- "english_us": "en_us",
23
- "es": "es",
24
- "es_es": "es",
25
- "es_mx": "es",
26
- "fr": "fr",
27
- "fr_fr": "fr",
28
- "fra": "fr",
29
- "fre": "fr",
30
- "french": "fr",
31
- "gb": "en_gb",
32
- "ger": "de",
33
- "german": "de",
34
- "it": "it",
35
- "it_it": "it",
36
- "ita": "it",
37
- "italian": "it",
38
- "spa": "es",
39
- "spanish": "es",
40
- "uk": "en_gb",
41
- "us": "en_us",
42
- "vi": "vi",
43
- "vi_hn": "vi",
44
- "vi_vn": "vi",
45
- "vie": "vi",
46
- "vietnamese": "vi"
47
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
coreml/assets/g2p/normalization.json DELETED
@@ -1,40 +0,0 @@
1
- {
2
- "contract": {
3
- "colon_semicolon_classes": "preserved",
4
- "dot_runs_two_or_more": "ellipsis_three_dots",
5
- "homogeneous_terminal_runs": "single_mark",
6
- "lexical_hyphen": "space_no_pause",
7
- "mixed_question_exclamation": "leading_mark",
8
- "non_acoustic_modifiers": [
9
- "stress",
10
- "length",
11
- "unicode_combining"
12
- ],
13
- "ok_spoken_form": "okay",
14
- "punctuation_silence_target": "explicit_silence",
15
- "syntactic_dash": "em_dash_pause",
16
- "training_phone_source": "espeak",
17
- "version": "scyllasband_spoken_text_v2_2026_08_05"
18
- },
19
- "contract_sha256": "d8fd1b2415d0d100d1c70237a4469117ee6b73d0e4da703e4654c83192779cc4",
20
- "contract_version": "scyllasband_spoken_text_v2_2026_08_05",
21
- "expand_currency": true,
22
- "expand_dates": true,
23
- "expand_numbers": true,
24
- "expand_ordinals": true,
25
- "expand_percentages": true,
26
- "expand_times": true,
27
- "languages": [
28
- "en",
29
- "en_us",
30
- "en_gb",
31
- "es",
32
- "it",
33
- "fr",
34
- "de",
35
- "vi"
36
- ],
37
- "normalize_at_sign": true,
38
- "normalize_punctuation": true,
39
- "normalizer": "SpokenTextNormalizer"
40
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
coreml/assets/g2p/phoneme_dict.json DELETED
@@ -1,9 +0,0 @@
1
- {
2
- "de": {},
3
- "en_gb": {},
4
- "en_us": {},
5
- "es": {},
6
- "fr": {},
7
- "it": {},
8
- "vi": {}
9
- }
 
 
 
 
 
 
 
 
 
 
coreml/assets/g2p/pronunciation_overrides.json DELETED
@@ -1,4 +0,0 @@
1
- {
2
- "format": "scyllasband_g2p_pronunciation_overrides_v1",
3
- "languages": {}
4
- }
 
 
 
 
 
coreml/assets/g2p/tokenizer.json DELETED
@@ -1,517 +0,0 @@
1
- {
2
- "format": "deepphonemizer_forward_ctc",
3
- "languages": [
4
- "de",
5
- "en_gb",
6
- "en_us",
7
- "es",
8
- "fr",
9
- "it",
10
- "vi"
11
- ],
12
- "char_repeats": 4,
13
- "lowercase": true,
14
- "phoneme_token_mode": "char",
15
- "text_symbols": {
16
- "_": 0,
17
- "<de>": 1,
18
- "<en_gb>": 2,
19
- "<en_us>": 3,
20
- "<es>": 4,
21
- "<fr>": 5,
22
- "<it>": 6,
23
- "<vi>": 7,
24
- "<end>": 8,
25
- "\b": 9,
26
- " ": 10,
27
- "!": 11,
28
- "\"": 12,
29
- "#": 13,
30
- "$": 14,
31
- "%": 15,
32
- "&": 16,
33
- "'": 17,
34
- "(": 18,
35
- ")": 19,
36
- "*": 20,
37
- "+": 21,
38
- ",": 22,
39
- "-": 23,
40
- ".": 24,
41
- "/": 25,
42
- "0": 26,
43
- "1": 27,
44
- "2": 28,
45
- "3": 29,
46
- "4": 30,
47
- "5": 31,
48
- "6": 32,
49
- "7": 33,
50
- "8": 34,
51
- "9": 35,
52
- ":": 36,
53
- ";": 37,
54
- "<": 38,
55
- "=": 39,
56
- ">": 40,
57
- "?": 41,
58
- "@": 42,
59
- "A": 43,
60
- "B": 44,
61
- "C": 45,
62
- "D": 46,
63
- "E": 47,
64
- "F": 48,
65
- "G": 49,
66
- "H": 50,
67
- "I": 51,
68
- "J": 52,
69
- "K": 53,
70
- "L": 54,
71
- "M": 55,
72
- "N": 56,
73
- "O": 57,
74
- "P": 58,
75
- "Q": 59,
76
- "R": 60,
77
- "S": 61,
78
- "T": 62,
79
- "U": 63,
80
- "V": 64,
81
- "W": 65,
82
- "X": 66,
83
- "Y": 67,
84
- "Z": 68,
85
- "[": 69,
86
- "\\": 70,
87
- "]": 71,
88
- "^": 72,
89
- "`": 73,
90
- "a": 74,
91
- "b": 75,
92
- "c": 76,
93
- "d": 77,
94
- "e": 78,
95
- "f": 79,
96
- "g": 80,
97
- "h": 81,
98
- "i": 82,
99
- "j": 83,
100
- "k": 84,
101
- "l": 85,
102
- "m": 86,
103
- "n": 87,
104
- "o": 88,
105
- "p": 89,
106
- "q": 90,
107
- "r": 91,
108
- "s": 92,
109
- "t": 93,
110
- "u": 94,
111
- "v": 95,
112
- "w": 96,
113
- "x": 97,
114
- "y": 98,
115
- "z": 99,
116
- "{": 100,
117
- "|": 101,
118
- "}": 102,
119
- "~": 103,
120
- "¡": 104,
121
- "¢": 105,
122
- "£": 106,
123
- "¥": 107,
124
- "§": 108,
125
- "ª": 109,
126
- "«": 110,
127
- "­": 111,
128
- "®": 112,
129
- "°": 113,
130
- "±": 114,
131
- "²": 115,
132
- "³": 116,
133
- "´": 117,
134
- "¶": 118,
135
- "·": 119,
136
- "¹": 120,
137
- "º": 121,
138
- "»": 122,
139
- "¼": 123,
140
- "½": 124,
141
- "¾": 125,
142
- "¿": 126,
143
- "À": 127,
144
- "Á": 128,
145
- "Â": 129,
146
- "Ä": 130,
147
- "Å": 131,
148
- "Æ": 132,
149
- "Ç": 133,
150
- "È": 134,
151
- "É": 135,
152
- "Ê": 136,
153
- "Í": 137,
154
- "Ï": 138,
155
- "Ñ": 139,
156
- "Ó": 140,
157
- "Ô": 141,
158
- "Ö": 142,
159
- "×": 143,
160
- "Ù": 144,
161
- "Ú": 145,
162
- "Ü": 146,
163
- "Ý": 147,
164
- "Þ": 148,
165
- "ß": 149,
166
- "à": 150,
167
- "á": 151,
168
- "â": 152,
169
- "ã": 153,
170
- "ä": 154,
171
- "å": 155,
172
- "æ": 156,
173
- "ç": 157,
174
- "è": 158,
175
- "é": 159,
176
- "ê": 160,
177
- "ë": 161,
178
- "ì": 162,
179
- "í": 163,
180
- "î": 164,
181
- "ï": 165,
182
- "ð": 166,
183
- "ñ": 167,
184
- "ò": 168,
185
- "ó": 169,
186
- "ô": 170,
187
- "õ": 171,
188
- "ö": 172,
189
- "ø": 173,
190
- "ù": 174,
191
- "ú": 175,
192
- "û": 176,
193
- "ü": 177,
194
- "ý": 178,
195
- "þ": 179,
196
- "ÿ": 180,
197
- "ā": 181,
198
- "Ă": 182,
199
- "ă": 183,
200
- "ą": 184,
201
- "ć": 185,
202
- "č": 186,
203
- "Đ": 187,
204
- "đ": 188,
205
- "ē": 189,
206
- "ė": 190,
207
- "ę": 191,
208
- "ğ": 192,
209
- "ġ": 193,
210
- "ĩ": 194,
211
- "ī": 195,
212
- "ļ": 196,
213
- "ł": 197,
214
- "ń": 198,
215
- "Ō": 199,
216
- "ō": 200,
217
- "Œ": 201,
218
- "œ": 202,
219
- "ŕ": 203,
220
- "ś": 204,
221
- "ş": 205,
222
- "š": 206,
223
- "ŧ": 207,
224
- "ũ": 208,
225
- "ū": 209,
226
- "ŭ": 210,
227
- "ů": 211,
228
- "ű": 212,
229
- "ż": 213,
230
- "Ž": 214,
231
- "ž": 215,
232
- "ſ": 216,
233
- "Ơ": 217,
234
- "ơ": 218,
235
- "Ư": 219,
236
- "ư": 220,
237
- "ǁ": 221,
238
- "ǂ": 222,
239
- "ǐ": 223,
240
- "ǘ": 224,
241
- "ǧ": 225,
242
- "ș": 226,
243
- "Ȝ": 227,
244
- "ȝ": 228,
245
- "ȟ": 229,
246
- "ɛ": 230,
247
- "ʰ": 231,
248
- "ˆ": 232,
249
- "ˈ": 233,
250
- "ˢ": 234,
251
- "̃": 235,
252
- "̍": 236,
253
- "̣": 237,
254
- "̱": 238,
255
- "͈": 239,
256
- "α": 240,
257
- "β": 241,
258
- "γ": 242,
259
- "δ": 243,
260
- "ε": 244,
261
- "η": 245,
262
- "κ": 246,
263
- "μ": 247,
264
- "ξ": 248,
265
- "π": 249,
266
- "ς": 250,
267
- "σ": 251,
268
- "χ": 252,
269
- "ψ": 253,
270
- "а": 254,
271
- "д": 255,
272
- "е": 256,
273
- "з": 257,
274
- "и": 258,
275
- "к": 259,
276
- "л": 260,
277
- "о": 261,
278
- "п": 262,
279
- "р": 263,
280
- "с": 264,
281
- "т": 265,
282
- "ч": 266,
283
- "ь": 267,
284
- "ง": 268,
285
- "ย": 269,
286
- "า": 270,
287
- "่": 271,
288
- "ည": 272,
289
- "လ": 273,
290
- "း": 274,
291
- "်": 275,
292
- "ᵈ": 276,
293
- "ᵗ": 277,
294
- "ḅ": 278,
295
- "ḍ": 279,
296
- "ḳ": 280,
297
- "ṅ": 281,
298
- "Ṭ": 282,
299
- "ẓ": 283,
300
- "ạ": 284,
301
- "Ả": 285,
302
- "ả": 286,
303
- "Ấ": 287,
304
- "ấ": 288,
305
- "ầ": 289,
306
- "ẩ": 290,
307
- "ẫ": 291,
308
- "ậ": 292,
309
- "ắ": 293,
310
- "ằ": 294,
311
- "ẳ": 295,
312
- "ẵ": 296,
313
- "ặ": 297,
314
- "ẹ": 298,
315
- "ẻ": 299,
316
- "ẽ": 300,
317
- "Ế": 301,
318
- "ế": 302,
319
- "Ề": 303,
320
- "ề": 304,
321
- "ể": 305,
322
- "ễ": 306,
323
- "ệ": 307,
324
- "ỉ": 308,
325
- "ị": 309,
326
- "ọ": 310,
327
- "ỏ": 311,
328
- "Ố": 312,
329
- "ố": 313,
330
- "Ồ": 314,
331
- "ồ": 315,
332
- "Ổ": 316,
333
- "ổ": 317,
334
- "ỗ": 318,
335
- "Ộ": 319,
336
- "ộ": 320,
337
- "ớ": 321,
338
- "Ờ": 322,
339
- "ờ": 323,
340
- "Ở": 324,
341
- "ở": 325,
342
- "ỡ": 326,
343
- "ợ": 327,
344
- "ụ": 328,
345
- "ủ": 329,
346
- "Ứ": 330,
347
- "ứ": 331,
348
- "Ừ": 332,
349
- "ừ": 333,
350
- "ử": 334,
351
- "ữ": 335,
352
- "ự": 336,
353
- "ỳ": 337,
354
- "ỵ": 338,
355
- "Ỷ": 339,
356
- "ỷ": 340,
357
- "ỹ": 341,
358
- "ὖ": 342,
359
- "ὼ": 343,
360
- "ῆ": 344,
361
- "​": 345,
362
- "‐": 346,
363
- "—": 347,
364
- "―": 348,
365
- "†": 349,
366
- "•": 350,
367
- "…": 351,
368
- "‰": 352,
369
- "′": 353,
370
- "″": 354,
371
- "⁄": 355,
372
- "⁷": 356,
373
- "⁻": 357,
374
- "₀": 358,
375
- "₁": 359,
376
- "₂": 360,
377
- "₃": 361,
378
- "₄": 362,
379
- "₅": 363,
380
- "₆": 364,
381
- "₇": 365,
382
- "₈": 366,
383
- "€": 367,
384
- "₹": 368,
385
- "⅓": 369,
386
- "⅔": 370,
387
- "⅖": 371,
388
- "⅙": 372,
389
- "⅛": 373,
390
- "⅝": 374,
391
- "√": 375,
392
- "│": 376,
393
- "♦": 377,
394
- "⚓": 378,
395
- "✈": 379,
396
- "✠": 380,
397
- "✨": 381,
398
- "⟙": 382,
399
- "⸺": 383,
400
- "。": 384,
401
- "〈": 385,
402
- "な": 386,
403
- "三": 387,
404
- "次": 388,
405
- "肿": 389,
406
- "臃": 390,
407
- "구": 391,
408
- "로": 392,
409
- "요": 393,
410
- "ﷺ": 394,
411
- "️": 395,
412
- "𝑥": 396,
413
- "𝑦": 397,
414
- "🌊": 398,
415
- "🌿": 399,
416
- "💦": 400,
417
- "💨": 401
418
- },
419
- "phoneme_symbols": {
420
- "0": "_",
421
- "1": "<de>",
422
- "2": "<en_gb>",
423
- "3": "<en_us>",
424
- "4": "<es>",
425
- "5": "<fr>",
426
- "6": "<it>",
427
- "7": "<vi>",
428
- "8": "<end>",
429
- "9": " ",
430
- "10": "!",
431
- "11": ",",
432
- "12": "-",
433
- "13": ".",
434
- "14": "1",
435
- "15": "2",
436
- "16": "4",
437
- "17": "5",
438
- "18": "6",
439
- "19": "7",
440
- "20": ":",
441
- "21": ";",
442
- "22": "?",
443
- "23": "a",
444
- "24": "b",
445
- "25": "c",
446
- "26": "d",
447
- "27": "e",
448
- "28": "f",
449
- "29": "h",
450
- "30": "i",
451
- "31": "j",
452
- "32": "k",
453
- "33": "l",
454
- "34": "m",
455
- "35": "n",
456
- "36": "o",
457
- "37": "p",
458
- "38": "q",
459
- "39": "r",
460
- "40": "s",
461
- "41": "t",
462
- "42": "u",
463
- "43": "v",
464
- "44": "w",
465
- "45": "x",
466
- "46": "y",
467
- "47": "z",
468
- "48": "«",
469
- "49": "»",
470
- "50": "æ",
471
- "51": "ç",
472
- "52": "ð",
473
- "53": "ø",
474
- "54": "ŋ",
475
- "55": "œ",
476
- "56": "ɐ",
477
- "57": "ɑ",
478
- "58": "ɒ",
479
- "59": "ɔ",
480
- "60": "ɗ",
481
- "61": "ə",
482
- "62": "ɚ",
483
- "63": "ɛ",
484
- "64": "ɜ",
485
- "65": "ɟ",
486
- "66": "ɡ",
487
- "67": "ɣ",
488
- "68": "ɨ",
489
- "69": "ɪ",
490
- "70": "ɬ",
491
- "71": "ɯ",
492
- "72": "ɲ",
493
- "73": "ɹ",
494
- "74": "ɾ",
495
- "75": "ʁ",
496
- "76": "ʃ",
497
- "77": "ʊ",
498
- "78": "ʌ",
499
- "79": "ʎ",
500
- "80": "ʐ",
501
- "81": "ʒ",
502
- "82": "ʔ",
503
- "83": "ʝ",
504
- "84": "ʲ",
505
- "85": "ˈ",
506
- "86": "ˌ",
507
- "87": "ː",
508
- "88": "̃",
509
- "89": "̩",
510
- "90": "̪",
511
- "91": "β",
512
- "92": "θ",
513
- "93": "ᵻ",
514
- "94": "—",
515
- "95": "…"
516
- }
517
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
coreml/assets/languages.json DELETED
@@ -1,30 +0,0 @@
1
- [
2
- {
3
- "id": "en_us",
4
- "index": 0
5
- },
6
- {
7
- "id": "en_gb",
8
- "index": 1
9
- },
10
- {
11
- "id": "es",
12
- "index": 2
13
- },
14
- {
15
- "id": "it",
16
- "index": 3
17
- },
18
- {
19
- "id": "fr",
20
- "index": 4
21
- },
22
- {
23
- "id": "de",
24
- "index": 5
25
- },
26
- {
27
- "id": "vi",
28
- "index": 6
29
- }
30
- ]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
coreml/assets/phone_vocab.json DELETED
@@ -1,111 +0,0 @@
1
- {
2
- "schema_version": 1,
3
- "mode": "scyllasband_ipa_phone_symbols",
4
- "special_tokens": [
5
- "<pad>",
6
- "<unk>",
7
- "<sil>",
8
- "<pause_comma>",
9
- "<pause_semicolon>",
10
- "<pause_colon>",
11
- "<pause_dash>",
12
- "<ellipsis>",
13
- "<end_stmt>",
14
- "<end_question>",
15
- "<end_exclaim>",
16
- "<ctx_sentence_start>",
17
- "<ctx_continuation>",
18
- "<ctx_sentence_end>",
19
- "<ctx_chunk_continue>"
20
- ],
21
- "vocab_size": 87,
22
- "token_to_id": {
23
- "<pad>": 0,
24
- "<unk>": 1,
25
- "<sil>": 2,
26
- "<pause_comma>": 3,
27
- "<pause_semicolon>": 4,
28
- "<pause_colon>": 5,
29
- "<pause_dash>": 6,
30
- "<ellipsis>": 7,
31
- "<end_stmt>": 8,
32
- "<end_question>": 9,
33
- "<end_exclaim>": 10,
34
- "<ctx_sentence_start>": 11,
35
- "<ctx_continuation>": 12,
36
- "<ctx_sentence_end>": 13,
37
- "<ctx_chunk_continue>": 14,
38
- "1": 15,
39
- "2": 16,
40
- "4": 17,
41
- "5": 18,
42
- "6": 19,
43
- "7": 20,
44
- "a": 21,
45
- "b": 22,
46
- "c": 23,
47
- "d": 24,
48
- "e": 25,
49
- "f": 26,
50
- "h": 27,
51
- "i": 28,
52
- "j": 29,
53
- "k": 30,
54
- "l": 31,
55
- "m": 32,
56
- "n": 33,
57
- "o": 34,
58
- "p": 35,
59
- "r": 36,
60
- "s": 37,
61
- "t": 38,
62
- "u": 39,
63
- "v": 40,
64
- "w": 41,
65
- "x": 42,
66
- "y": 43,
67
- "z": 44,
68
- "æ": 45,
69
- "ç": 46,
70
- "ð": 47,
71
- "ø": 48,
72
- "ŋ": 49,
73
- "œ": 50,
74
- "ɐ": 51,
75
- "ɑ": 52,
76
- "ɒ": 53,
77
- "ɔ": 54,
78
- "ɗ": 55,
79
- "ə": 56,
80
- "ɚ": 57,
81
- "ɛ": 58,
82
- "ɜ": 59,
83
- "ɟ": 60,
84
- "ɡ": 61,
85
- "ɣ": 62,
86
- "ɪ": 63,
87
- "ɯ": 64,
88
- "ɲ": 65,
89
- "ɹ": 66,
90
- "ɾ": 67,
91
- "ʁ": 68,
92
- "ʃ": 69,
93
- "ʊ": 70,
94
- "ʌ": 71,
95
- "ʎ": 72,
96
- "ʐ": 73,
97
- "ʒ": 74,
98
- "ʔ": 75,
99
- "ʝ": 76,
100
- "ʲ": 77,
101
- "ˈ": 78,
102
- "ˌ": 79,
103
- "ː": 80,
104
- "̃": 81,
105
- "̩": 82,
106
- "̪": 83,
107
- "β": 84,
108
- "θ": 85,
109
- "ᵻ": 86
110
- }
111
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
coreml/assets/voices.json DELETED
@@ -1,42 +0,0 @@
1
- [
2
- {
3
- "id": "ariadne",
4
- "index": 0
5
- },
6
- {
7
- "id": "felix",
8
- "index": 1
9
- },
10
- {
11
- "id": "gwen",
12
- "index": 2
13
- },
14
- {
15
- "id": "ink",
16
- "index": 3
17
- },
18
- {
19
- "id": "max",
20
- "index": 4
21
- },
22
- {
23
- "id": "orpheus",
24
- "index": 5
25
- },
26
- {
27
- "id": "rex",
28
- "index": 6
29
- },
30
- {
31
- "id": "scylla",
32
- "index": 7
33
- },
34
- {
35
- "id": "stone",
36
- "index": 8
37
- },
38
- {
39
- "id": "tuesday",
40
- "index": 9
41
- }
42
- ]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
coreml/coreml/duration_predictor.mlmodelc/analytics/coremldata.bin DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:953e274e93c3abfae6f04977436816dc28223ef61d4e91e4191f67837740a2e8
3
- size 243
 
 
 
 
coreml/coreml/duration_predictor.mlmodelc/coremldata.bin DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:c090d28d8df68312410867a49963b5fbda00f5883178969df17b1b0c86e7eff2
3
- size 554
 
 
 
 
coreml/coreml/duration_predictor.mlmodelc/model.mil DELETED
The diff for this file is too large to render. See raw diff
 
coreml/coreml/duration_predictor.mlmodelc/weights/weight.bin DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:5383e19195d6807cf6632d2c82b51b86aaa947ba51d8042434f73b5039c70ea4
3
- size 10562880
 
 
 
 
coreml/coreml/g2p.mlmodelc/analytics/coremldata.bin DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:61936fdfe11637e628b2134025bea29d673c98e93ce6f01c05e7b5da124563b8
3
- size 243
 
 
 
 
coreml/coreml/g2p.mlmodelc/coremldata.bin DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:f5fc8bee0186f33fa14d35a59a58ec3393676d07bdf03802a3836d806662cd03
3
- size 377
 
 
 
 
coreml/coreml/g2p.mlmodelc/model.mil DELETED
The diff for this file is too large to render. See raw diff
 
coreml/coreml/g2p.mlmodelc/weights/weight.bin DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:045da2991ed2a42ba027aaa6b83813054f410b6eedfdce82f2ab287ec4ca74e2
3
- size 27346752
 
 
 
 
coreml/coreml/vector_context_encoder.mlmodelc/analytics/coremldata.bin DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:f89405fefad88549b521a819805c5c1781e0c930c03b8f670b1e1539aafe88c6
3
- size 243
 
 
 
 
coreml/coreml/vector_context_encoder.mlmodelc/coremldata.bin DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:d031d4ef221bc846aec129114aec7366fcb6126dacae44c24c4b344c54dc6c5a
3
- size 476
 
 
 
 
coreml/coreml/vector_context_encoder.mlmodelc/model.mil DELETED
@@ -1,267 +0,0 @@
1
- program(1.3)
2
- [buildInfo = dict<string, string>({{"coremlc-component-MIL", "3600.16.1"}, {"coremlc-version", "3600.25.2"}})]
3
- {
4
- func main<ios18>(tensor<int32, [1, 512]> span_context_mask, tensor<int32, [1, 512]> span_context_phone_ids, tensor<int32, [1, 512]> span_context_segment_ids) {
5
- int32 var_15 = const()[name = string("op_15"), val = int32(0)];
6
- tensor<bool, [1, 512]> span_context_mask_1 = not_equal(x = span_context_mask, y = var_15)[name = string("span_context_mask")];
7
- int32 var_30 = const()[name = string("op_30"), val = int32(-1)];
8
- int32 var_35 = const()[name = string("op_35"), val = int32(2)];
9
- int32 var_36 = const()[name = string("op_36"), val = int32(86)];
10
- int32 var_38 = const()[name = string("op_38"), val = int32(1)];
11
- int32 var_40 = const()[name = string("op_40"), val = int32(0)];
12
- tensor<int32, [1, 512]> var_55 = maximum(x = span_context_phone_ids, y = var_40)[name = string("op_55")];
13
- tensor<int32, [1, 512]> input_1 = minimum(x = var_55, y = var_36)[name = string("input_1")];
14
- tensor<int32, [1, 512]> var_59 = maximum(x = span_context_segment_ids, y = var_40)[name = string("op_59")];
15
- tensor<int32, [1, 512]> input_3 = minimum(x = var_59, y = var_35)[name = string("input_3")];
16
- string var_64_dtype_0 = const()[name = string("op_64_dtype_0"), val = string("int32")];
17
- bool var_65_exclusive_0 = const()[name = string("op_65_exclusive_0"), val = bool(false)];
18
- bool var_65_reverse_0 = const()[name = string("op_65_reverse_0"), val = bool(false)];
19
- tensor<int32, [1, 512]> var_64 = cast(dtype = var_64_dtype_0, x = span_context_mask_1)[name = string("cast_13")];
20
- tensor<int32, [1, 512]> var_65 = cumsum(axis = var_38, exclusive = var_65_exclusive_0, reverse = var_65_reverse_0, x = var_64)[name = string("op_65")];
21
- int32 var_66 = const()[name = string("op_66"), val = int32(1)];
22
- tensor<int32, [1, 512]> var_67 = sub(x = var_65, y = var_66)[name = string("op_67")];
23
- tensor<int32, [1, 512]> input_5 = maximum(x = var_67, y = var_40)[name = string("input_5")];
24
- int32 var_70_batch_dims_0 = const()[name = string("op_70_batch_dims_0"), val = int32(0)];
25
- bool var_70_validate_indices_0 = const()[name = string("op_70_validate_indices_0"), val = bool(false)];
26
- tensor<fp16, [87, 512]> module_flow_phone_embed_weight_to_fp16_quantized = constexpr_blockwise_shift_scale(data = tensor<int8, [87, 512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(64))), scale = tensor<fp16, [87, 1]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(44672))))[name = string("module_flow_phone_embed_weight_to_fp16_quantized")];
27
- string input_1_to_int16_dtype_0 = const()[name = string("input_1_to_int16_dtype_0"), val = string("int16")];
28
- string cast_24_dtype_0 = const()[name = string("cast_24_dtype_0"), val = string("int32")];
29
- int32 greater_equal_0_y_0 = const()[name = string("greater_equal_0_y_0"), val = int32(0)];
30
- tensor<int16, [1, 512]> input_1_to_int16 = cast(dtype = input_1_to_int16_dtype_0, x = input_1)[name = string("cast_12")];
31
- tensor<int32, [1, 512]> cast_24 = cast(dtype = cast_24_dtype_0, x = input_1_to_int16)[name = string("cast_11")];
32
- tensor<bool, [1, 512]> greater_equal_0 = greater_equal(x = cast_24, y = greater_equal_0_y_0)[name = string("greater_equal_0")];
33
- int32 slice_by_index_0 = const()[name = string("slice_by_index_0"), val = int32(87)];
34
- tensor<int32, [1, 512]> add_0 = add(x = cast_24, y = slice_by_index_0)[name = string("add_0")];
35
- tensor<int32, [1, 512]> select_0 = select(a = cast_24, b = add_0, cond = greater_equal_0)[name = string("select_0")];
36
- string select_0_to_int16_dtype_0 = const()[name = string("select_0_to_int16_dtype_0"), val = string("int16")];
37
- string cast_0_dtype_0 = const()[name = string("cast_0_dtype_0"), val = string("int32")];
38
- int32 greater_equal_0_y_0_1 = const()[name = string("greater_equal_0_y_0_1"), val = int32(0)];
39
- tensor<int16, [1, 512]> select_0_to_int16 = cast(dtype = select_0_to_int16_dtype_0, x = select_0)[name = string("cast_10")];
40
- tensor<int32, [1, 512]> cast_0 = cast(dtype = cast_0_dtype_0, x = select_0_to_int16)[name = string("cast_9")];
41
- tensor<bool, [1, 512]> greater_equal_0_1 = greater_equal(x = cast_0, y = greater_equal_0_y_0_1)[name = string("greater_equal_0_1")];
42
- int32 slice_by_index_0_1 = const()[name = string("slice_by_index_0_1"), val = int32(87)];
43
- tensor<int32, [1, 512]> add_0_1 = add(x = cast_0, y = slice_by_index_0_1)[name = string("add_0_1")];
44
- tensor<int32, [1, 512]> select_0_1 = select(a = cast_0, b = add_0_1, cond = greater_equal_0_1)[name = string("select_0_1")];
45
- int32 op_70_cast_fp16_cast_uint16_cast_uint16_axis_0 = const()[name = string("op_70_cast_fp16_cast_uint16_cast_uint16_axis_0"), val = int32(0)];
46
- tensor<fp16, [1, 512, 512]> op_70_cast_fp16_cast_uint16_cast_uint16 = gather(axis = op_70_cast_fp16_cast_uint16_cast_uint16_axis_0, batch_dims = var_70_batch_dims_0, indices = select_0_1, validate_indices = var_70_validate_indices_0, x = module_flow_phone_embed_weight_to_fp16_quantized)[name = string("op_70_cast_fp16_cast_uint16_cast_uint16")];
47
- int32 var_72_axis_0 = const()[name = string("op_72_axis_0"), val = int32(0)];
48
- int32 var_72_batch_dims_0 = const()[name = string("op_72_batch_dims_0"), val = int32(0)];
49
- bool var_72_validate_indices_0 = const()[name = string("op_72_validate_indices_0"), val = bool(false)];
50
- tensor<fp16, [3, 512]> module_flow_span_segment_embed_weight_to_fp16 = const()[name = string("module_flow_span_segment_embed_weight_to_fp16"), val = tensor<fp16, [3, 512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(44928)))];
51
- string input_3_to_uint16_dtype_0 = const()[name = string("input_3_to_uint16_dtype_0"), val = string("uint16")];
52
- tensor<uint16, [1, 512]> input_3_to_uint16 = cast(dtype = input_3_to_uint16_dtype_0, x = input_3)[name = string("cast_8")];
53
- tensor<fp16, [1, 512, 512]> var_72_cast_fp16_cast_uint16 = gather(axis = var_72_axis_0, batch_dims = var_72_batch_dims_0, indices = input_3_to_uint16, validate_indices = var_72_validate_indices_0, x = module_flow_span_segment_embed_weight_to_fp16)[name = string("op_72_cast_fp16_cast_uint16")];
54
- tensor<fp16, [1, 512, 512]> var_73_cast_fp16 = add(x = op_70_cast_fp16_cast_uint16_cast_uint16, y = var_72_cast_fp16_cast_uint16)[name = string("op_73_cast_fp16")];
55
- int32 var_75_axis_0 = const()[name = string("op_75_axis_0"), val = int32(0)];
56
- int32 var_75_batch_dims_0 = const()[name = string("op_75_batch_dims_0"), val = int32(0)];
57
- bool var_75_validate_indices_0 = const()[name = string("op_75_validate_indices_0"), val = bool(false)];
58
- tensor<fp16, [768, 512]> module_flow_span_position_embed_weight_to_fp16_quantized = constexpr_blockwise_shift_scale(data = tensor<int8, [768, 512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(48064))), scale = tensor<fp16, [768, 1]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(441344))))[name = string("module_flow_span_position_embed_weight_to_fp16_quantized")];
59
- string input_5_to_uint16_dtype_0 = const()[name = string("input_5_to_uint16_dtype_0"), val = string("uint16")];
60
- tensor<uint16, [1, 512]> input_5_to_uint16 = cast(dtype = input_5_to_uint16_dtype_0, x = input_5)[name = string("cast_7")];
61
- tensor<fp16, [1, 512, 512]> var_75_cast_fp16_cast_uint16 = gather(axis = var_75_axis_0, batch_dims = var_75_batch_dims_0, indices = input_5_to_uint16, validate_indices = var_75_validate_indices_0, x = module_flow_span_position_embed_weight_to_fp16_quantized)[name = string("op_75_cast_fp16_cast_uint16")];
62
- tensor<fp16, [1, 512, 512]> hidden_1_cast_fp16 = add(x = var_73_cast_fp16, y = var_75_cast_fp16_cast_uint16)[name = string("hidden_1_cast_fp16")];
63
- tensor<int32, [1]> var_82_axes_0 = const()[name = string("op_82_axes_0"), val = tensor<int32, [1]>([-1])];
64
- tensor<bool, [1, 512, 1]> var_82 = expand_dims(axes = var_82_axes_0, x = span_context_mask_1)[name = string("op_82")];
65
- tensor<bool, [1, 512, 1]> var_83 = logical_not(x = var_82)[name = string("op_83")];
66
- fp16 var_18_to_fp16 = const()[name = string("op_18_to_fp16"), val = fp16(0x0p+0)];
67
- tensor<fp16, [1, 512, 512]> hidden_3_cast_fp16 = select(a = var_18_to_fp16, b = hidden_1_cast_fp16, cond = var_83)[name = string("hidden_3_cast_fp16")];
68
- tensor<int32, [1]> input_7_axes_0 = const()[name = string("input_7_axes_0"), val = tensor<int32, [1]>([-1])];
69
- tensor<fp16, [512]> module_flow_span_ordered_encoder_blocks_0_norm_attention_weight_to_fp16 = const()[name = string("module_flow_span_ordered_encoder_blocks_0_norm_attention_weight_to_fp16"), val = tensor<fp16, [512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(442944)))];
70
- tensor<fp16, [512]> module_flow_span_ordered_encoder_blocks_0_norm_attention_bias_to_fp16 = const()[name = string("module_flow_span_ordered_encoder_blocks_0_norm_attention_bias_to_fp16"), val = tensor<fp16, [512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(444032)))];
71
- fp16 var_28_to_fp16 = const()[name = string("op_28_to_fp16"), val = fp16(0x1.5p-17)];
72
- tensor<fp16, [1, 512, 512]> input_7_cast_fp16 = layer_norm(axes = input_7_axes_0, beta = module_flow_span_ordered_encoder_blocks_0_norm_attention_bias_to_fp16, epsilon = var_28_to_fp16, gamma = module_flow_span_ordered_encoder_blocks_0_norm_attention_weight_to_fp16, x = hidden_3_cast_fp16)[name = string("input_7_cast_fp16")];
73
- tensor<fp16, [1536, 512]> module_flow_span_ordered_encoder_blocks_0_qkv_weight_to_fp16_quantized = constexpr_blockwise_shift_scale(data = tensor<int8, [1536, 512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(445120))), scale = tensor<fp16, [1536, 1]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(1231616))))[name = string("module_flow_span_ordered_encoder_blocks_0_qkv_weight_to_fp16_quantized")];
74
- tensor<fp16, [1536]> module_flow_span_ordered_encoder_blocks_0_qkv_bias_to_fp16 = const()[name = string("module_flow_span_ordered_encoder_blocks_0_qkv_bias_to_fp16"), val = tensor<fp16, [1536]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(1234752)))];
75
- tensor<fp16, [1, 512, 1536]> linear_0_cast_fp16 = linear(bias = module_flow_span_ordered_encoder_blocks_0_qkv_bias_to_fp16, weight = module_flow_span_ordered_encoder_blocks_0_qkv_weight_to_fp16_quantized, x = input_7_cast_fp16)[name = string("linear_0_cast_fp16")];
76
- tensor<int32, [5]> var_100 = const()[name = string("op_100"), val = tensor<int32, [5]>([1, 512, 3, 8, 64])];
77
- tensor<fp16, [1, 512, 3, 8, 64]> qkv_1_cast_fp16 = reshape(shape = var_100, x = linear_0_cast_fp16)[name = string("qkv_1_cast_fp16")];
78
- tensor<int32, [3]> var_102_split_sizes_0 = const()[name = string("op_102_split_sizes_0"), val = tensor<int32, [3]>([1, 1, 1])];
79
- int32 var_102_axis_0 = const()[name = string("op_102_axis_0"), val = int32(2)];
80
- tensor<fp16, [1, 512, 1, 8, 64]> var_102_cast_fp16_0, tensor<fp16, [1, 512, 1, 8, 64]> var_102_cast_fp16_1, tensor<fp16, [1, 512, 1, 8, 64]> var_102_cast_fp16_2 = split(axis = var_102_axis_0, split_sizes = var_102_split_sizes_0, x = qkv_1_cast_fp16)[name = string("op_102_cast_fp16")];
81
- tensor<int32, [1]> squeeze_0_axes_0 = const()[name = string("squeeze_0_axes_0"), val = tensor<int32, [1]>([2])];
82
- tensor<fp16, [1, 512, 8, 64]> squeeze_0_cast_fp16 = squeeze(axes = squeeze_0_axes_0, x = var_102_cast_fp16_0)[name = string("squeeze_0_cast_fp16")];
83
- tensor<int32, [1]> squeeze_1_axes_0 = const()[name = string("squeeze_1_axes_0"), val = tensor<int32, [1]>([2])];
84
- tensor<fp16, [1, 512, 8, 64]> squeeze_1_cast_fp16 = squeeze(axes = squeeze_1_axes_0, x = var_102_cast_fp16_1)[name = string("squeeze_1_cast_fp16")];
85
- tensor<int32, [1]> squeeze_2_axes_0 = const()[name = string("squeeze_2_axes_0"), val = tensor<int32, [1]>([2])];
86
- tensor<fp16, [1, 512, 8, 64]> squeeze_2_cast_fp16 = squeeze(axes = squeeze_2_axes_0, x = var_102_cast_fp16_2)[name = string("squeeze_2_cast_fp16")];
87
- tensor<int32, [4]> value_3_perm_0 = const()[name = string("value_3_perm_0"), val = tensor<int32, [4]>([0, 2, -3, -1])];
88
- bool var_110_transpose_x_0 = const()[name = string("op_110_transpose_x_0"), val = bool(false)];
89
- bool var_110_transpose_y_0 = const()[name = string("op_110_transpose_y_0"), val = bool(false)];
90
- tensor<int32, [4]> transpose_8_perm_0 = const()[name = string("transpose_8_perm_0"), val = tensor<int32, [4]>([0, 2, -3, -1])];
91
- tensor<int32, [4]> transpose_9_perm_0 = const()[name = string("transpose_9_perm_0"), val = tensor<int32, [4]>([0, 2, -1, -3])];
92
- tensor<fp16, [1, 8, 64, 512]> transpose_9 = transpose(perm = transpose_9_perm_0, x = squeeze_1_cast_fp16)[name = string("transpose_18")];
93
- tensor<fp16, [1, 8, 512, 64]> transpose_8 = transpose(perm = transpose_8_perm_0, x = squeeze_0_cast_fp16)[name = string("transpose_19")];
94
- tensor<fp16, [1, 8, 512, 512]> var_110_cast_fp16 = matmul(transpose_x = var_110_transpose_x_0, transpose_y = var_110_transpose_y_0, x = transpose_8, y = transpose_9)[name = string("op_110_cast_fp16")];
95
- fp16 var_111_to_fp16 = const()[name = string("op_111_to_fp16"), val = fp16(0x1p-3)];
96
- tensor<fp16, [1, 8, 512, 512]> scores_1_cast_fp16 = mul(x = var_110_cast_fp16, y = var_111_to_fp16)[name = string("scores_1_cast_fp16")];
97
- tensor<int32, [1]> var_114_axes_0 = const()[name = string("op_114_axes_0"), val = tensor<int32, [1]>([1])];
98
- tensor<bool, [1, 1, 512]> var_114 = expand_dims(axes = var_114_axes_0, x = span_context_mask_1)[name = string("op_114")];
99
- tensor<int32, [1]> var_115_axes_0 = const()[name = string("op_115_axes_0"), val = tensor<int32, [1]>([2])];
100
- tensor<bool, [1, 1, 1, 512]> var_115 = expand_dims(axes = var_115_axes_0, x = var_114)[name = string("op_115")];
101
- tensor<bool, [1, 1, 1, 512]> var_117 = logical_not(x = var_115)[name = string("op_117")];
102
- fp16 var_23_to_fp16 = const()[name = string("op_23_to_fp16"), val = fp16(-inf)];
103
- tensor<fp16, [1, 8, 512, 512]> scores_3_cast_fp16 = select(a = var_23_to_fp16, b = scores_1_cast_fp16, cond = var_117)[name = string("scores_3_cast_fp16")];
104
- tensor<fp16, [1, 8, 512, 512]> var_119_cast_fp16 = softmax(axis = var_30, x = scores_3_cast_fp16)[name = string("op_119_cast_fp16")];
105
- string var_120_to_fp16_dtype_0 = const()[name = string("op_120_to_fp16_dtype_0"), val = string("fp16")];
106
- tensor<fp16, [1, 1, 1, 512]> var_115_to_fp16 = cast(dtype = var_120_to_fp16_dtype_0, x = var_115)[name = string("cast_6")];
107
- tensor<fp16, [1, 8, 512, 512]> weights_1_cast_fp16 = mul(x = var_119_cast_fp16, y = var_115_to_fp16)[name = string("weights_1_cast_fp16")];
108
- tensor<int32, [1]> var_123_axes_0 = const()[name = string("op_123_axes_0"), val = tensor<int32, [1]>([-1])];
109
- bool var_123_keep_dims_0 = const()[name = string("op_123_keep_dims_0"), val = bool(true)];
110
- tensor<fp16, [1, 8, 512, 1]> var_123_cast_fp16 = reduce_sum(axes = var_123_axes_0, keep_dims = var_123_keep_dims_0, x = weights_1_cast_fp16)[name = string("op_123_cast_fp16")];
111
- fp16 var_21_to_fp16 = const()[name = string("op_21_to_fp16"), val = fp16(0x1.1p-20)];
112
- tensor<fp16, [1, 8, 512, 1]> var_124_cast_fp16 = maximum(x = var_123_cast_fp16, y = var_21_to_fp16)[name = string("op_124_cast_fp16")];
113
- tensor<fp16, [1, 8, 512, 512]> weights_3_cast_fp16 = real_div(x = weights_1_cast_fp16, y = var_124_cast_fp16)[name = string("weights_3_cast_fp16")];
114
- bool var_126_transpose_x_0 = const()[name = string("op_126_transpose_x_0"), val = bool(false)];
115
- bool var_126_transpose_y_0 = const()[name = string("op_126_transpose_y_0"), val = bool(false)];
116
- tensor<fp16, [1, 8, 512, 64]> value_3_cast_fp16 = transpose(perm = value_3_perm_0, x = squeeze_2_cast_fp16)[name = string("transpose_17")];
117
- tensor<fp16, [1, 8, 512, 64]> var_126_cast_fp16 = matmul(transpose_x = var_126_transpose_x_0, transpose_y = var_126_transpose_y_0, x = weights_3_cast_fp16, y = value_3_cast_fp16)[name = string("op_126_cast_fp16")];
118
- tensor<int32, [4]> var_127_perm_0 = const()[name = string("op_127_perm_0"), val = tensor<int32, [4]>([0, 2, 1, 3])];
119
- tensor<int32, [3]> var_128 = const()[name = string("op_128"), val = tensor<int32, [3]>([1, 512, 512])];
120
- tensor<fp16, [1, 512, 8, 64]> var_127_cast_fp16 = transpose(perm = var_127_perm_0, x = var_126_cast_fp16)[name = string("transpose_16")];
121
- tensor<fp16, [1, 512, 512]> input_9_cast_fp16 = reshape(shape = var_128, x = var_127_cast_fp16)[name = string("input_9_cast_fp16")];
122
- tensor<fp16, [512, 512]> module_flow_span_ordered_encoder_blocks_0_attention_proj_weight_to_fp16_quantized = constexpr_blockwise_shift_scale(data = tensor<int8, [512, 512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(1237888))), scale = tensor<fp16, [512, 1]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(1500096))))[name = string("module_flow_span_ordered_encoder_blocks_0_attention_proj_weight_to_fp16_quantized")];
123
- tensor<fp16, [512]> module_flow_span_ordered_encoder_blocks_0_attention_proj_bias_to_fp16 = const()[name = string("module_flow_span_ordered_encoder_blocks_0_attention_proj_bias_to_fp16"), val = tensor<fp16, [512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(1501184)))];
124
- tensor<fp16, [1, 512, 512]> linear_1_cast_fp16 = linear(bias = module_flow_span_ordered_encoder_blocks_0_attention_proj_bias_to_fp16, weight = module_flow_span_ordered_encoder_blocks_0_attention_proj_weight_to_fp16_quantized, x = input_9_cast_fp16)[name = string("linear_1_cast_fp16")];
125
- tensor<fp16, [1, 512, 512]> input_13_cast_fp16 = add(x = hidden_3_cast_fp16, y = linear_1_cast_fp16)[name = string("input_13_cast_fp16")];
126
- tensor<int32, [1]> input_15_axes_0 = const()[name = string("input_15_axes_0"), val = tensor<int32, [1]>([-1])];
127
- tensor<fp16, [512]> module_flow_span_ordered_encoder_blocks_0_norm_feedforward_weight_to_fp16 = const()[name = string("module_flow_span_ordered_encoder_blocks_0_norm_feedforward_weight_to_fp16"), val = tensor<fp16, [512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(1502272)))];
128
- tensor<fp16, [512]> module_flow_span_ordered_encoder_blocks_0_norm_feedforward_bias_to_fp16 = const()[name = string("module_flow_span_ordered_encoder_blocks_0_norm_feedforward_bias_to_fp16"), val = tensor<fp16, [512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(1503360)))];
129
- tensor<fp16, [1, 512, 512]> input_15_cast_fp16 = layer_norm(axes = input_15_axes_0, beta = module_flow_span_ordered_encoder_blocks_0_norm_feedforward_bias_to_fp16, epsilon = var_28_to_fp16, gamma = module_flow_span_ordered_encoder_blocks_0_norm_feedforward_weight_to_fp16, x = input_13_cast_fp16)[name = string("input_15_cast_fp16")];
130
- tensor<fp16, [2048, 512]> module_flow_span_ordered_encoder_blocks_0_feedforward_0_weight_to_fp16_quantized = constexpr_blockwise_shift_scale(data = tensor<int8, [2048, 512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(1504448))), scale = tensor<fp16, [2048, 1]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(2553088))))[name = string("module_flow_span_ordered_encoder_blocks_0_feedforward_0_weight_to_fp16_quantized")];
131
- tensor<fp16, [2048]> module_flow_span_ordered_encoder_blocks_0_feedforward_0_bias_to_fp16 = const()[name = string("module_flow_span_ordered_encoder_blocks_0_feedforward_0_bias_to_fp16"), val = tensor<fp16, [2048]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(2557248)))];
132
- tensor<fp16, [1, 512, 2048]> linear_2_cast_fp16 = linear(bias = module_flow_span_ordered_encoder_blocks_0_feedforward_0_bias_to_fp16, weight = module_flow_span_ordered_encoder_blocks_0_feedforward_0_weight_to_fp16_quantized, x = input_15_cast_fp16)[name = string("linear_2_cast_fp16")];
133
- string input_19_mode_0 = const()[name = string("input_19_mode_0"), val = string("TANH_APPROXIMATION")];
134
- tensor<fp16, [1, 512, 2048]> input_19_cast_fp16 = gelu(mode = input_19_mode_0, x = linear_2_cast_fp16)[name = string("input_19_cast_fp16")];
135
- tensor<fp16, [512, 2048]> module_flow_span_ordered_encoder_blocks_0_feedforward_2_weight_to_fp16_quantized = constexpr_blockwise_shift_scale(data = tensor<int8, [512, 2048]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(2561408))), scale = tensor<fp16, [512, 1]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(3610048))))[name = string("module_flow_span_ordered_encoder_blocks_0_feedforward_2_weight_to_fp16_quantized")];
136
- tensor<fp16, [512]> module_flow_span_ordered_encoder_blocks_0_feedforward_2_bias_to_fp16 = const()[name = string("module_flow_span_ordered_encoder_blocks_0_feedforward_2_bias_to_fp16"), val = tensor<fp16, [512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(3611136)))];
137
- tensor<fp16, [1, 512, 512]> linear_3_cast_fp16 = linear(bias = module_flow_span_ordered_encoder_blocks_0_feedforward_2_bias_to_fp16, weight = module_flow_span_ordered_encoder_blocks_0_feedforward_2_weight_to_fp16_quantized, x = input_19_cast_fp16)[name = string("linear_3_cast_fp16")];
138
- tensor<fp16, [1, 512, 512]> hidden_5_cast_fp16 = add(x = input_13_cast_fp16, y = linear_3_cast_fp16)[name = string("hidden_5_cast_fp16")];
139
- tensor<fp16, [1, 512, 512]> hidden_7_cast_fp16 = select(a = var_18_to_fp16, b = hidden_5_cast_fp16, cond = var_83)[name = string("hidden_7_cast_fp16")];
140
- tensor<int32, [1]> input_23_axes_0 = const()[name = string("input_23_axes_0"), val = tensor<int32, [1]>([-1])];
141
- tensor<fp16, [512]> module_flow_span_ordered_encoder_blocks_1_norm_attention_weight_to_fp16 = const()[name = string("module_flow_span_ordered_encoder_blocks_1_norm_attention_weight_to_fp16"), val = tensor<fp16, [512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(3612224)))];
142
- tensor<fp16, [512]> module_flow_span_ordered_encoder_blocks_1_norm_attention_bias_to_fp16 = const()[name = string("module_flow_span_ordered_encoder_blocks_1_norm_attention_bias_to_fp16"), val = tensor<fp16, [512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(3613312)))];
143
- tensor<fp16, [1, 512, 512]> input_23_cast_fp16 = layer_norm(axes = input_23_axes_0, beta = module_flow_span_ordered_encoder_blocks_1_norm_attention_bias_to_fp16, epsilon = var_28_to_fp16, gamma = module_flow_span_ordered_encoder_blocks_1_norm_attention_weight_to_fp16, x = hidden_7_cast_fp16)[name = string("input_23_cast_fp16")];
144
- tensor<fp16, [1536, 512]> module_flow_span_ordered_encoder_blocks_1_qkv_weight_to_fp16_quantized = constexpr_blockwise_shift_scale(data = tensor<int8, [1536, 512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(3614400))), scale = tensor<fp16, [1536, 1]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(4400896))))[name = string("module_flow_span_ordered_encoder_blocks_1_qkv_weight_to_fp16_quantized")];
145
- tensor<fp16, [1536]> module_flow_span_ordered_encoder_blocks_1_qkv_bias_to_fp16 = const()[name = string("module_flow_span_ordered_encoder_blocks_1_qkv_bias_to_fp16"), val = tensor<fp16, [1536]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(4404032)))];
146
- tensor<fp16, [1, 512, 1536]> linear_4_cast_fp16 = linear(bias = module_flow_span_ordered_encoder_blocks_1_qkv_bias_to_fp16, weight = module_flow_span_ordered_encoder_blocks_1_qkv_weight_to_fp16_quantized, x = input_23_cast_fp16)[name = string("linear_4_cast_fp16")];
147
- tensor<int32, [5]> var_168 = const()[name = string("op_168"), val = tensor<int32, [5]>([1, 512, 3, 8, 64])];
148
- tensor<fp16, [1, 512, 3, 8, 64]> qkv_3_cast_fp16 = reshape(shape = var_168, x = linear_4_cast_fp16)[name = string("qkv_3_cast_fp16")];
149
- tensor<int32, [3]> var_170_split_sizes_0 = const()[name = string("op_170_split_sizes_0"), val = tensor<int32, [3]>([1, 1, 1])];
150
- int32 var_170_axis_0 = const()[name = string("op_170_axis_0"), val = int32(2)];
151
- tensor<fp16, [1, 512, 1, 8, 64]> var_170_cast_fp16_0, tensor<fp16, [1, 512, 1, 8, 64]> var_170_cast_fp16_1, tensor<fp16, [1, 512, 1, 8, 64]> var_170_cast_fp16_2 = split(axis = var_170_axis_0, split_sizes = var_170_split_sizes_0, x = qkv_3_cast_fp16)[name = string("op_170_cast_fp16")];
152
- tensor<int32, [1]> squeeze_3_axes_0 = const()[name = string("squeeze_3_axes_0"), val = tensor<int32, [1]>([2])];
153
- tensor<fp16, [1, 512, 8, 64]> squeeze_3_cast_fp16 = squeeze(axes = squeeze_3_axes_0, x = var_170_cast_fp16_0)[name = string("squeeze_3_cast_fp16")];
154
- tensor<int32, [1]> squeeze_4_axes_0 = const()[name = string("squeeze_4_axes_0"), val = tensor<int32, [1]>([2])];
155
- tensor<fp16, [1, 512, 8, 64]> squeeze_4_cast_fp16 = squeeze(axes = squeeze_4_axes_0, x = var_170_cast_fp16_1)[name = string("squeeze_4_cast_fp16")];
156
- tensor<int32, [1]> squeeze_5_axes_0 = const()[name = string("squeeze_5_axes_0"), val = tensor<int32, [1]>([2])];
157
- tensor<fp16, [1, 512, 8, 64]> squeeze_5_cast_fp16 = squeeze(axes = squeeze_5_axes_0, x = var_170_cast_fp16_2)[name = string("squeeze_5_cast_fp16")];
158
- tensor<int32, [4]> value_perm_0 = const()[name = string("value_perm_0"), val = tensor<int32, [4]>([0, 2, -3, -1])];
159
- bool var_178_transpose_x_0 = const()[name = string("op_178_transpose_x_0"), val = bool(false)];
160
- bool var_178_transpose_y_0 = const()[name = string("op_178_transpose_y_0"), val = bool(false)];
161
- tensor<int32, [4]> transpose_10_perm_0 = const()[name = string("transpose_10_perm_0"), val = tensor<int32, [4]>([0, 2, -3, -1])];
162
- tensor<int32, [4]> transpose_11_perm_0 = const()[name = string("transpose_11_perm_0"), val = tensor<int32, [4]>([0, 2, -1, -3])];
163
- tensor<fp16, [1, 8, 64, 512]> transpose_11 = transpose(perm = transpose_11_perm_0, x = squeeze_4_cast_fp16)[name = string("transpose_14")];
164
- tensor<fp16, [1, 8, 512, 64]> transpose_10 = transpose(perm = transpose_10_perm_0, x = squeeze_3_cast_fp16)[name = string("transpose_15")];
165
- tensor<fp16, [1, 8, 512, 512]> var_178_cast_fp16 = matmul(transpose_x = var_178_transpose_x_0, transpose_y = var_178_transpose_y_0, x = transpose_10, y = transpose_11)[name = string("op_178_cast_fp16")];
166
- fp16 var_179_to_fp16 = const()[name = string("op_179_to_fp16"), val = fp16(0x1p-3)];
167
- tensor<fp16, [1, 8, 512, 512]> scores_5_cast_fp16 = mul(x = var_178_cast_fp16, y = var_179_to_fp16)[name = string("scores_5_cast_fp16")];
168
- tensor<fp16, [1, 8, 512, 512]> scores_cast_fp16 = select(a = var_23_to_fp16, b = scores_5_cast_fp16, cond = var_117)[name = string("scores_cast_fp16")];
169
- tensor<fp16, [1, 8, 512, 512]> var_187_cast_fp16 = softmax(axis = var_30, x = scores_cast_fp16)[name = string("op_187_cast_fp16")];
170
- tensor<fp16, [1, 8, 512, 512]> weights_5_cast_fp16 = mul(x = var_187_cast_fp16, y = var_115_to_fp16)[name = string("weights_5_cast_fp16")];
171
- tensor<int32, [1]> var_191_axes_0 = const()[name = string("op_191_axes_0"), val = tensor<int32, [1]>([-1])];
172
- bool var_191_keep_dims_0 = const()[name = string("op_191_keep_dims_0"), val = bool(true)];
173
- tensor<fp16, [1, 8, 512, 1]> var_191_cast_fp16 = reduce_sum(axes = var_191_axes_0, keep_dims = var_191_keep_dims_0, x = weights_5_cast_fp16)[name = string("op_191_cast_fp16")];
174
- tensor<fp16, [1, 8, 512, 1]> var_192_cast_fp16 = maximum(x = var_191_cast_fp16, y = var_21_to_fp16)[name = string("op_192_cast_fp16")];
175
- tensor<fp16, [1, 8, 512, 512]> weights_cast_fp16 = real_div(x = weights_5_cast_fp16, y = var_192_cast_fp16)[name = string("weights_cast_fp16")];
176
- bool var_194_transpose_x_0 = const()[name = string("op_194_transpose_x_0"), val = bool(false)];
177
- bool var_194_transpose_y_0 = const()[name = string("op_194_transpose_y_0"), val = bool(false)];
178
- tensor<fp16, [1, 8, 512, 64]> value_cast_fp16 = transpose(perm = value_perm_0, x = squeeze_5_cast_fp16)[name = string("transpose_13")];
179
- tensor<fp16, [1, 8, 512, 64]> var_194_cast_fp16 = matmul(transpose_x = var_194_transpose_x_0, transpose_y = var_194_transpose_y_0, x = weights_cast_fp16, y = value_cast_fp16)[name = string("op_194_cast_fp16")];
180
- tensor<int32, [4]> var_195_perm_0 = const()[name = string("op_195_perm_0"), val = tensor<int32, [4]>([0, 2, 1, 3])];
181
- tensor<int32, [3]> var_196 = const()[name = string("op_196"), val = tensor<int32, [3]>([1, 512, 512])];
182
- tensor<fp16, [1, 512, 8, 64]> var_195_cast_fp16 = transpose(perm = var_195_perm_0, x = var_194_cast_fp16)[name = string("transpose_12")];
183
- tensor<fp16, [1, 512, 512]> input_25_cast_fp16 = reshape(shape = var_196, x = var_195_cast_fp16)[name = string("input_25_cast_fp16")];
184
- tensor<fp16, [512, 512]> module_flow_span_ordered_encoder_blocks_1_attention_proj_weight_to_fp16_quantized = constexpr_blockwise_shift_scale(data = tensor<int8, [512, 512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(4407168))), scale = tensor<fp16, [512, 1]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(4669376))))[name = string("module_flow_span_ordered_encoder_blocks_1_attention_proj_weight_to_fp16_quantized")];
185
- tensor<fp16, [512]> module_flow_span_ordered_encoder_blocks_1_attention_proj_bias_to_fp16 = const()[name = string("module_flow_span_ordered_encoder_blocks_1_attention_proj_bias_to_fp16"), val = tensor<fp16, [512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(4670464)))];
186
- tensor<fp16, [1, 512, 512]> linear_5_cast_fp16 = linear(bias = module_flow_span_ordered_encoder_blocks_1_attention_proj_bias_to_fp16, weight = module_flow_span_ordered_encoder_blocks_1_attention_proj_weight_to_fp16_quantized, x = input_25_cast_fp16)[name = string("linear_5_cast_fp16")];
187
- tensor<fp16, [1, 512, 512]> input_29_cast_fp16 = add(x = hidden_7_cast_fp16, y = linear_5_cast_fp16)[name = string("input_29_cast_fp16")];
188
- tensor<int32, [1]> input_31_axes_0 = const()[name = string("input_31_axes_0"), val = tensor<int32, [1]>([-1])];
189
- tensor<fp16, [512]> module_flow_span_ordered_encoder_blocks_1_norm_feedforward_weight_to_fp16 = const()[name = string("module_flow_span_ordered_encoder_blocks_1_norm_feedforward_weight_to_fp16"), val = tensor<fp16, [512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(4671552)))];
190
- tensor<fp16, [512]> module_flow_span_ordered_encoder_blocks_1_norm_feedforward_bias_to_fp16 = const()[name = string("module_flow_span_ordered_encoder_blocks_1_norm_feedforward_bias_to_fp16"), val = tensor<fp16, [512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(4672640)))];
191
- tensor<fp16, [1, 512, 512]> input_31_cast_fp16 = layer_norm(axes = input_31_axes_0, beta = module_flow_span_ordered_encoder_blocks_1_norm_feedforward_bias_to_fp16, epsilon = var_28_to_fp16, gamma = module_flow_span_ordered_encoder_blocks_1_norm_feedforward_weight_to_fp16, x = input_29_cast_fp16)[name = string("input_31_cast_fp16")];
192
- tensor<fp16, [2048, 512]> module_flow_span_ordered_encoder_blocks_1_feedforward_0_weight_to_fp16_quantized = constexpr_blockwise_shift_scale(data = tensor<int8, [2048, 512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(4673728))), scale = tensor<fp16, [2048, 1]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(5722368))))[name = string("module_flow_span_ordered_encoder_blocks_1_feedforward_0_weight_to_fp16_quantized")];
193
- tensor<fp16, [2048]> module_flow_span_ordered_encoder_blocks_1_feedforward_0_bias_to_fp16 = const()[name = string("module_flow_span_ordered_encoder_blocks_1_feedforward_0_bias_to_fp16"), val = tensor<fp16, [2048]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(5726528)))];
194
- tensor<fp16, [1, 512, 2048]> linear_6_cast_fp16 = linear(bias = module_flow_span_ordered_encoder_blocks_1_feedforward_0_bias_to_fp16, weight = module_flow_span_ordered_encoder_blocks_1_feedforward_0_weight_to_fp16_quantized, x = input_31_cast_fp16)[name = string("linear_6_cast_fp16")];
195
- string input_35_mode_0 = const()[name = string("input_35_mode_0"), val = string("TANH_APPROXIMATION")];
196
- tensor<fp16, [1, 512, 2048]> input_35_cast_fp16 = gelu(mode = input_35_mode_0, x = linear_6_cast_fp16)[name = string("input_35_cast_fp16")];
197
- tensor<fp16, [512, 2048]> module_flow_span_ordered_encoder_blocks_1_feedforward_2_weight_to_fp16_quantized = constexpr_blockwise_shift_scale(data = tensor<int8, [512, 2048]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(5730688))), scale = tensor<fp16, [512, 1]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(6779328))))[name = string("module_flow_span_ordered_encoder_blocks_1_feedforward_2_weight_to_fp16_quantized")];
198
- tensor<fp16, [512]> module_flow_span_ordered_encoder_blocks_1_feedforward_2_bias_to_fp16 = const()[name = string("module_flow_span_ordered_encoder_blocks_1_feedforward_2_bias_to_fp16"), val = tensor<fp16, [512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(6780416)))];
199
- tensor<fp16, [1, 512, 512]> linear_7_cast_fp16 = linear(bias = module_flow_span_ordered_encoder_blocks_1_feedforward_2_bias_to_fp16, weight = module_flow_span_ordered_encoder_blocks_1_feedforward_2_weight_to_fp16_quantized, x = input_35_cast_fp16)[name = string("linear_7_cast_fp16")];
200
- tensor<fp16, [1, 512, 512]> hidden_9_cast_fp16 = add(x = input_29_cast_fp16, y = linear_7_cast_fp16)[name = string("hidden_9_cast_fp16")];
201
- tensor<fp16, [1, 512, 512]> hidden_cast_fp16 = select(a = var_18_to_fp16, b = hidden_9_cast_fp16, cond = var_83)[name = string("hidden_cast_fp16")];
202
- tensor<bool, [1, 512]> var_224 = equal(x = input_3, y = var_40)[name = string("op_224")];
203
- tensor<bool, [1, 512]> var_225 = logical_and(x = span_context_mask_1, y = var_224)[name = string("op_225")];
204
- tensor<int32, [1]> var_228_axes_0 = const()[name = string("op_228_axes_0"), val = tensor<int32, [1]>([1])];
205
- bool var_228_keep_dims_0 = const()[name = string("op_228_keep_dims_0"), val = bool(true)];
206
- string weight_15_to_fp16_dtype_0 = const()[name = string("weight_15_to_fp16_dtype_0"), val = string("fp16")];
207
- tensor<fp16, [1, 512]> var_225_to_fp16 = cast(dtype = weight_15_to_fp16_dtype_0, x = var_225)[name = string("cast_5")];
208
- tensor<fp16, [1, 1]> var_228_cast_fp16 = reduce_sum(axes = var_228_axes_0, keep_dims = var_228_keep_dims_0, x = var_225_to_fp16)[name = string("op_228_cast_fp16")];
209
- fp16 var_17_to_fp16 = const()[name = string("op_17_to_fp16"), val = fp16(0x1p+0)];
210
- tensor<fp16, [1, 1]> var_229_cast_fp16 = maximum(x = var_228_cast_fp16, y = var_17_to_fp16)[name = string("op_229_cast_fp16")];
211
- tensor<fp16, [1, 512]> weight_17_cast_fp16 = real_div(x = var_225_to_fp16, y = var_229_cast_fp16)[name = string("weight_17_cast_fp16")];
212
- tensor<int32, [1]> var_231_axes_0 = const()[name = string("op_231_axes_0"), val = tensor<int32, [1]>([-1])];
213
- tensor<fp16, [1, 512, 1]> var_231_cast_fp16 = expand_dims(axes = var_231_axes_0, x = weight_17_cast_fp16)[name = string("op_231_cast_fp16")];
214
- tensor<fp16, [1, 512, 512]> var_232_cast_fp16 = mul(x = hidden_cast_fp16, y = var_231_cast_fp16)[name = string("op_232_cast_fp16")];
215
- tensor<int32, [1]> var_234_axes_0 = const()[name = string("op_234_axes_0"), val = tensor<int32, [1]>([1])];
216
- bool var_234_keep_dims_0 = const()[name = string("op_234_keep_dims_0"), val = bool(false)];
217
- tensor<fp16, [1, 512]> var_234_cast_fp16 = reduce_sum(axes = var_234_axes_0, keep_dims = var_234_keep_dims_0, x = var_232_cast_fp16)[name = string("op_234_cast_fp16")];
218
- tensor<bool, [1, 512]> var_235 = equal(x = input_3, y = var_38)[name = string("op_235")];
219
- tensor<bool, [1, 512]> var_236 = logical_and(x = span_context_mask_1, y = var_235)[name = string("op_236")];
220
- tensor<int32, [1]> var_239_axes_0 = const()[name = string("op_239_axes_0"), val = tensor<int32, [1]>([1])];
221
- bool var_239_keep_dims_0 = const()[name = string("op_239_keep_dims_0"), val = bool(true)];
222
- string weight_19_to_fp16_dtype_0 = const()[name = string("weight_19_to_fp16_dtype_0"), val = string("fp16")];
223
- tensor<fp16, [1, 512]> var_236_to_fp16 = cast(dtype = weight_19_to_fp16_dtype_0, x = var_236)[name = string("cast_4")];
224
- tensor<fp16, [1, 1]> var_239_cast_fp16 = reduce_sum(axes = var_239_axes_0, keep_dims = var_239_keep_dims_0, x = var_236_to_fp16)[name = string("op_239_cast_fp16")];
225
- tensor<fp16, [1, 1]> var_240_cast_fp16 = maximum(x = var_239_cast_fp16, y = var_17_to_fp16)[name = string("op_240_cast_fp16")];
226
- tensor<fp16, [1, 512]> weight_21_cast_fp16 = real_div(x = var_236_to_fp16, y = var_240_cast_fp16)[name = string("weight_21_cast_fp16")];
227
- tensor<int32, [1]> var_242_axes_0 = const()[name = string("op_242_axes_0"), val = tensor<int32, [1]>([-1])];
228
- tensor<fp16, [1, 512, 1]> var_242_cast_fp16 = expand_dims(axes = var_242_axes_0, x = weight_21_cast_fp16)[name = string("op_242_cast_fp16")];
229
- tensor<fp16, [1, 512, 512]> var_243_cast_fp16 = mul(x = hidden_cast_fp16, y = var_242_cast_fp16)[name = string("op_243_cast_fp16")];
230
- tensor<int32, [1]> var_245_axes_0 = const()[name = string("op_245_axes_0"), val = tensor<int32, [1]>([1])];
231
- bool var_245_keep_dims_0 = const()[name = string("op_245_keep_dims_0"), val = bool(false)];
232
- tensor<fp16, [1, 512]> var_245_cast_fp16 = reduce_sum(axes = var_245_axes_0, keep_dims = var_245_keep_dims_0, x = var_243_cast_fp16)[name = string("op_245_cast_fp16")];
233
- tensor<bool, [1, 512]> var_246 = equal(x = input_3, y = var_35)[name = string("op_246")];
234
- tensor<bool, [1, 512]> var_247 = logical_and(x = span_context_mask_1, y = var_246)[name = string("op_247")];
235
- tensor<int32, [1]> var_250_axes_0 = const()[name = string("op_250_axes_0"), val = tensor<int32, [1]>([1])];
236
- bool var_250_keep_dims_0 = const()[name = string("op_250_keep_dims_0"), val = bool(true)];
237
- string weight_23_to_fp16_dtype_0 = const()[name = string("weight_23_to_fp16_dtype_0"), val = string("fp16")];
238
- tensor<fp16, [1, 512]> var_247_to_fp16 = cast(dtype = weight_23_to_fp16_dtype_0, x = var_247)[name = string("cast_3")];
239
- tensor<fp16, [1, 1]> var_250_cast_fp16 = reduce_sum(axes = var_250_axes_0, keep_dims = var_250_keep_dims_0, x = var_247_to_fp16)[name = string("op_250_cast_fp16")];
240
- tensor<fp16, [1, 1]> var_251_cast_fp16 = maximum(x = var_250_cast_fp16, y = var_17_to_fp16)[name = string("op_251_cast_fp16")];
241
- tensor<fp16, [1, 512]> weight_25_cast_fp16 = real_div(x = var_247_to_fp16, y = var_251_cast_fp16)[name = string("weight_25_cast_fp16")];
242
- tensor<int32, [1]> var_253_axes_0 = const()[name = string("op_253_axes_0"), val = tensor<int32, [1]>([-1])];
243
- tensor<fp16, [1, 512, 1]> var_253_cast_fp16 = expand_dims(axes = var_253_axes_0, x = weight_25_cast_fp16)[name = string("op_253_cast_fp16")];
244
- tensor<fp16, [1, 512, 512]> var_254_cast_fp16 = mul(x = hidden_cast_fp16, y = var_253_cast_fp16)[name = string("op_254_cast_fp16")];
245
- tensor<int32, [1]> var_256_axes_0 = const()[name = string("op_256_axes_0"), val = tensor<int32, [1]>([1])];
246
- bool var_256_keep_dims_0 = const()[name = string("op_256_keep_dims_0"), val = bool(false)];
247
- tensor<fp16, [1, 512]> var_256_cast_fp16 = reduce_sum(axes = var_256_axes_0, keep_dims = var_256_keep_dims_0, x = var_254_cast_fp16)[name = string("op_256_cast_fp16")];
248
- bool input_39_interleave_0 = const()[name = string("input_39_interleave_0"), val = bool(false)];
249
- tensor<fp16, [1, 1536]> input_39_cast_fp16 = concat(axis = var_30, interleave = input_39_interleave_0, values = (var_234_cast_fp16, var_245_cast_fp16, var_256_cast_fp16))[name = string("input_39_cast_fp16")];
250
- tensor<fp16, [512, 1536]> module_flow_span_segment_pool_proj_weight_to_fp16_quantized = constexpr_blockwise_shift_scale(data = tensor<int8, [512, 1536]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(6781504))), scale = tensor<fp16, [512, 1]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(7568000))))[name = string("module_flow_span_segment_pool_proj_weight_to_fp16_quantized")];
251
- tensor<fp16, [512]> module_flow_span_segment_pool_proj_bias_to_fp16 = const()[name = string("module_flow_span_segment_pool_proj_bias_to_fp16"), val = tensor<fp16, [512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(7569088)))];
252
- tensor<fp16, [1, 512]> linear_8_cast_fp16 = linear(bias = module_flow_span_segment_pool_proj_bias_to_fp16, weight = module_flow_span_segment_pool_proj_weight_to_fp16_quantized, x = input_39_cast_fp16)[name = string("linear_8_cast_fp16")];
253
- tensor<int32, [1]> pooled_axes_0 = const()[name = string("pooled_axes_0"), val = tensor<int32, [1]>([-1])];
254
- tensor<fp16, [512]> module_flow_span_context_norm_weight_to_fp16 = const()[name = string("module_flow_span_context_norm_weight_to_fp16"), val = tensor<fp16, [512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(7570176)))];
255
- tensor<fp16, [512]> module_flow_span_context_norm_bias_to_fp16 = const()[name = string("module_flow_span_context_norm_bias_to_fp16"), val = tensor<fp16, [512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(7571264)))];
256
- tensor<fp16, [1, 512]> pooled_cast_fp16 = layer_norm(axes = pooled_axes_0, beta = module_flow_span_context_norm_bias_to_fp16, epsilon = var_28_to_fp16, gamma = module_flow_span_context_norm_weight_to_fp16, x = linear_8_cast_fp16)[name = string("pooled_cast_fp16")];
257
- tensor<int32, [1]> var_38_list = const()[name = string("op_38_list"), val = tensor<int32, [1]>([1])];
258
- bool reduce_max_0_keep_dims_0 = const()[name = string("reduce_max_0_keep_dims_0"), val = bool(true)];
259
- tensor<int32, [1, 1]> reduce_max_0 = reduce_max(axes = var_38_list, keep_dims = reduce_max_0_keep_dims_0, x = var_64)[name = string("reduce_max_0")];
260
- string var_266_dtype_0 = const()[name = string("op_266_dtype_0"), val = string("bool")];
261
- tensor<bool, [1, 1]> var_266 = cast(dtype = var_266_dtype_0, x = reduce_max_0)[name = string("cast_2")];
262
- tensor<bool, [1, 1]> var_267 = logical_not(x = var_266)[name = string("op_267")];
263
- tensor<fp16, [1, 512]> var_268_cast_fp16 = select(a = var_18_to_fp16, b = pooled_cast_fp16, cond = var_267)[name = string("op_268_cast_fp16")];
264
- string var_268_cast_fp16_to_fp32_dtype_0 = const()[name = string("op_268_cast_fp16_to_fp32_dtype_0"), val = string("fp32")];
265
- tensor<fp32, [1, 512]> span_context_hidden = cast(dtype = var_268_cast_fp16_to_fp32_dtype_0, x = var_268_cast_fp16)[name = string("cast_1")];
266
- } -> (span_context_hidden);
267
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
coreml/coreml/vector_context_encoder.mlmodelc/weights/weight.bin DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:7120be9d216af8b1021ad92a4d3d0d136881d55e48debfb348197f12da2a21d6
3
- size 7572352