venier commited on
Commit
1fe707d
·
verified ·
1 Parent(s): 595355c

Upload Parakeet-TDT v3 CoreML models

Browse files
.DS_Store ADDED
Binary file (6.15 kB). View file
 
Decoder.mlmodelc/analytics/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b9a7c21bb27b230d36103438ceff23bec13c018989b66c3bea507a4c6869385b
3
+ size 243
Decoder.mlmodelc/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b2652a93062cfc1db8675cf8e9246ff72bf92754f44ea402815373232a92488c
3
+ size 554
Decoder.mlmodelc/metadata.json ADDED
@@ -0,0 +1,122 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [
2
+ {
3
+ "metadataOutputVersion" : "3.0",
4
+ "shortDescription" : "Parakeet decoder (RNNT prediction network)",
5
+ "outputSchema" : [
6
+ {
7
+ "hasShapeFlexibility" : "0",
8
+ "isOptional" : "0",
9
+ "dataType" : "Float32",
10
+ "formattedType" : "MultiArray (Float32 1 × 640 × 1)",
11
+ "shortDescription" : "",
12
+ "shape" : "[1, 640, 1]",
13
+ "name" : "decoder",
14
+ "type" : "MultiArray"
15
+ },
16
+ {
17
+ "hasShapeFlexibility" : "0",
18
+ "isOptional" : "0",
19
+ "dataType" : "Float32",
20
+ "formattedType" : "MultiArray (Float32 2 × 1 × 640)",
21
+ "shortDescription" : "",
22
+ "shape" : "[2, 1, 640]",
23
+ "name" : "h_out",
24
+ "type" : "MultiArray"
25
+ },
26
+ {
27
+ "hasShapeFlexibility" : "0",
28
+ "isOptional" : "0",
29
+ "dataType" : "Float32",
30
+ "formattedType" : "MultiArray (Float32 2 × 1 × 640)",
31
+ "shortDescription" : "",
32
+ "shape" : "[2, 1, 640]",
33
+ "name" : "c_out",
34
+ "type" : "MultiArray"
35
+ }
36
+ ],
37
+ "storagePrecision" : "Float32",
38
+ "modelParameters" : [
39
+
40
+ ],
41
+ "author" : "Fluid Inference",
42
+ "specificationVersion" : 8,
43
+ "mlProgramOperationTypeHistogram" : {
44
+ "Select" : 1,
45
+ "Ios17.squeeze" : 4,
46
+ "Ios17.gather" : 1,
47
+ "Ios17.lstm" : 2,
48
+ "Identity" : 1,
49
+ "Ios17.transpose" : 2,
50
+ "Split" : 2,
51
+ "Ios17.add" : 1,
52
+ "Ios17.greaterEqual" : 1,
53
+ "Stack" : 2
54
+ },
55
+ "computePrecision" : "Mixed (Float32, Int32)",
56
+ "isUpdatable" : "0",
57
+ "stateSchema" : [
58
+
59
+ ],
60
+ "availability" : {
61
+ "macOS" : "14.0",
62
+ "tvOS" : "17.0",
63
+ "visionOS" : "1.0",
64
+ "watchOS" : "10.0",
65
+ "iOS" : "17.0",
66
+ "macCatalyst" : "17.0"
67
+ },
68
+ "modelType" : {
69
+ "name" : "MLModelType_mlProgram"
70
+ },
71
+ "inputSchema" : [
72
+ {
73
+ "hasShapeFlexibility" : "0",
74
+ "isOptional" : "0",
75
+ "dataType" : "Int32",
76
+ "formattedType" : "MultiArray (Int32 1 × 1)",
77
+ "shortDescription" : "",
78
+ "shape" : "[1, 1]",
79
+ "name" : "targets",
80
+ "type" : "MultiArray"
81
+ },
82
+ {
83
+ "hasShapeFlexibility" : "0",
84
+ "isOptional" : "0",
85
+ "dataType" : "Int32",
86
+ "formattedType" : "MultiArray (Int32 1)",
87
+ "shortDescription" : "",
88
+ "shape" : "[1]",
89
+ "name" : "target_length",
90
+ "type" : "MultiArray"
91
+ },
92
+ {
93
+ "hasShapeFlexibility" : "0",
94
+ "isOptional" : "0",
95
+ "dataType" : "Float32",
96
+ "formattedType" : "MultiArray (Float32 2 × 1 × 640)",
97
+ "shortDescription" : "",
98
+ "shape" : "[2, 1, 640]",
99
+ "name" : "h_in",
100
+ "type" : "MultiArray"
101
+ },
102
+ {
103
+ "hasShapeFlexibility" : "0",
104
+ "isOptional" : "0",
105
+ "dataType" : "Float32",
106
+ "formattedType" : "MultiArray (Float32 2 × 1 × 640)",
107
+ "shortDescription" : "",
108
+ "shape" : "[2, 1, 640]",
109
+ "name" : "c_in",
110
+ "type" : "MultiArray"
111
+ }
112
+ ],
113
+ "userDefinedMetadata" : {
114
+ "com.github.apple.coremltools.conversion_date" : "2026-02-12",
115
+ "com.github.apple.coremltools.source" : "torch==2.7.0",
116
+ "com.github.apple.coremltools.version" : "9.0b1",
117
+ "com.github.apple.coremltools.source_dialect" : "TorchScript"
118
+ },
119
+ "generatedClassName" : "parakeet_decoder",
120
+ "method" : "predict"
121
+ }
122
+ ]
Decoder.mlmodelc/model.mil ADDED
@@ -0,0 +1,57 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ program(1.0)
2
+ [buildInfo = dict<tensor<string, []>, tensor<string, []>>({{"coremlc-component-MIL", "3405.2.1"}, {"coremlc-version", "3404.23.1"}, {"coremltools-component-torch", "2.7.0"}, {"coremltools-source-dialect", "TorchScript"}, {"coremltools-version", "9.0b1"}})]
3
+ {
4
+ func main<ios17>(tensor<fp32, [2, 1, 640]> c_in, tensor<fp32, [2, 1, 640]> h_in, tensor<int32, [1]> target_length, tensor<int32, [1, 1]> targets) {
5
+ tensor<fp32, [8193, 640]> module_prediction_embed_weight = const()[name = tensor<string, []>("module_prediction_embed_weight"), val = tensor<fp32, [8193, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(64)))];
6
+ tensor<int32, []> y_batch_dims_0 = const()[name = tensor<string, []>("y_batch_dims_0"), val = tensor<int32, []>(0)];
7
+ tensor<bool, []> y_validate_indices_0 = const()[name = tensor<string, []>("y_validate_indices_0"), val = tensor<bool, []>(false)];
8
+ tensor<int32, []> greater_equal_0_y_0 = const()[name = tensor<string, []>("greater_equal_0_y_0"), val = tensor<int32, []>(0)];
9
+ tensor<bool, [1, 1]> greater_equal_0 = greater_equal(x = targets, y = greater_equal_0_y_0)[name = tensor<string, []>("greater_equal_0")];
10
+ tensor<int32, []> slice_by_index_0 = const()[name = tensor<string, []>("slice_by_index_0"), val = tensor<int32, []>(8193)];
11
+ tensor<int32, [1, 1]> add_2 = add(x = targets, y = slice_by_index_0)[name = tensor<string, []>("add_2")];
12
+ tensor<int32, [1, 1]> select_0 = select(a = targets, b = add_2, cond = greater_equal_0)[name = tensor<string, []>("select_0")];
13
+ tensor<int32, []> y_axis_1 = const()[name = tensor<string, []>("y_axis_1"), val = tensor<int32, []>(0)];
14
+ tensor<fp32, [1, 1, 640]> y = gather(axis = y_axis_1, batch_dims = y_batch_dims_0, indices = select_0, validate_indices = y_validate_indices_0, x = module_prediction_embed_weight)[name = tensor<string, []>("y")];
15
+ tensor<int32, [3]> input_3_perm_0 = const()[name = tensor<string, []>("input_3_perm_0"), val = tensor<int32, [3]>([1, 0, 2])];
16
+ tensor<int32, []> split_0_num_splits_0 = const()[name = tensor<string, []>("split_0_num_splits_0"), val = tensor<int32, []>(2)];
17
+ tensor<int32, []> split_0_axis_0 = const()[name = tensor<string, []>("split_0_axis_0"), val = tensor<int32, []>(0)];
18
+ tensor<fp32, [1, 1, 640]> split_0_0, tensor<fp32, [1, 1, 640]> split_0_1 = split(axis = split_0_axis_0, num_splits = split_0_num_splits_0, x = h_in)[name = tensor<string, []>("split_0")];
19
+ tensor<int32, []> split_1_num_splits_0 = const()[name = tensor<string, []>("split_1_num_splits_0"), val = tensor<int32, []>(2)];
20
+ tensor<int32, []> split_1_axis_0 = const()[name = tensor<string, []>("split_1_axis_0"), val = tensor<int32, []>(0)];
21
+ tensor<fp32, [1, 1, 640]> split_1_0, tensor<fp32, [1, 1, 640]> split_1_1 = split(axis = split_1_axis_0, num_splits = split_1_num_splits_0, x = c_in)[name = tensor<string, []>("split_1")];
22
+ tensor<fp32, [2560]> concat_0 = const()[name = tensor<string, []>("concat_0"), val = tensor<fp32, [2560]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(20974208)))];
23
+ tensor<fp32, [2560, 640]> concat_1 = const()[name = tensor<string, []>("concat_1"), val = tensor<fp32, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(20984512)))];
24
+ tensor<fp32, [2560, 640]> concat_2 = const()[name = tensor<string, []>("concat_2"), val = tensor<fp32, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(27538176)))];
25
+ tensor<int32, [1]> input_lstm_layer_0_lstm_h0_squeeze_axes_0 = const()[name = tensor<string, []>("input_lstm_layer_0_lstm_h0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
26
+ tensor<fp32, [1, 640]> input_lstm_layer_0_lstm_h0_squeeze = squeeze(axes = input_lstm_layer_0_lstm_h0_squeeze_axes_0, x = split_0_0)[name = tensor<string, []>("input_lstm_layer_0_lstm_h0_squeeze")];
27
+ tensor<int32, [1]> input_lstm_layer_0_lstm_c0_squeeze_axes_0 = const()[name = tensor<string, []>("input_lstm_layer_0_lstm_c0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
28
+ tensor<fp32, [1, 640]> input_lstm_layer_0_lstm_c0_squeeze = squeeze(axes = input_lstm_layer_0_lstm_c0_squeeze_axes_0, x = split_1_0)[name = tensor<string, []>("input_lstm_layer_0_lstm_c0_squeeze")];
29
+ tensor<string, []> input_lstm_layer_0_direction_0 = const()[name = tensor<string, []>("input_lstm_layer_0_direction_0"), val = tensor<string, []>("forward")];
30
+ tensor<bool, []> input_lstm_layer_0_output_sequence_0 = const()[name = tensor<string, []>("input_lstm_layer_0_output_sequence_0"), val = tensor<bool, []>(true)];
31
+ tensor<string, []> input_lstm_layer_0_recurrent_activation_0 = const()[name = tensor<string, []>("input_lstm_layer_0_recurrent_activation_0"), val = tensor<string, []>("sigmoid")];
32
+ tensor<string, []> input_lstm_layer_0_cell_activation_0 = const()[name = tensor<string, []>("input_lstm_layer_0_cell_activation_0"), val = tensor<string, []>("tanh")];
33
+ tensor<string, []> input_lstm_layer_0_activation_0 = const()[name = tensor<string, []>("input_lstm_layer_0_activation_0"), val = tensor<string, []>("tanh")];
34
+ tensor<fp32, [1, 1, 640]> input_3 = transpose(perm = input_3_perm_0, x = y)[name = tensor<string, []>("transpose_2")];
35
+ tensor<fp32, [1, 1, 640]> input_lstm_layer_0_0, tensor<fp32, [1, 640]> input_lstm_layer_0_1, tensor<fp32, [1, 640]> input_lstm_layer_0_2 = lstm(activation = input_lstm_layer_0_activation_0, bias = concat_0, cell_activation = input_lstm_layer_0_cell_activation_0, direction = input_lstm_layer_0_direction_0, initial_c = input_lstm_layer_0_lstm_c0_squeeze, initial_h = input_lstm_layer_0_lstm_h0_squeeze, output_sequence = input_lstm_layer_0_output_sequence_0, recurrent_activation = input_lstm_layer_0_recurrent_activation_0, weight_hh = concat_2, weight_ih = concat_1, x = input_3)[name = tensor<string, []>("input_lstm_layer_0")];
36
+ tensor<fp32, [2560]> concat_3 = const()[name = tensor<string, []>("concat_3"), val = tensor<fp32, [2560]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(34091840)))];
37
+ tensor<fp32, [2560, 640]> concat_4 = const()[name = tensor<string, []>("concat_4"), val = tensor<fp32, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(34102144)))];
38
+ tensor<fp32, [2560, 640]> concat_5 = const()[name = tensor<string, []>("concat_5"), val = tensor<fp32, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(40655808)))];
39
+ tensor<int32, [1]> input_lstm_h0_squeeze_axes_0 = const()[name = tensor<string, []>("input_lstm_h0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
40
+ tensor<fp32, [1, 640]> input_lstm_h0_squeeze = squeeze(axes = input_lstm_h0_squeeze_axes_0, x = split_0_1)[name = tensor<string, []>("input_lstm_h0_squeeze")];
41
+ tensor<int32, [1]> input_lstm_c0_squeeze_axes_0 = const()[name = tensor<string, []>("input_lstm_c0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
42
+ tensor<fp32, [1, 640]> input_lstm_c0_squeeze = squeeze(axes = input_lstm_c0_squeeze_axes_0, x = split_1_1)[name = tensor<string, []>("input_lstm_c0_squeeze")];
43
+ tensor<string, []> input_direction_0 = const()[name = tensor<string, []>("input_direction_0"), val = tensor<string, []>("forward")];
44
+ tensor<bool, []> input_output_sequence_0 = const()[name = tensor<string, []>("input_output_sequence_0"), val = tensor<bool, []>(true)];
45
+ tensor<string, []> input_recurrent_activation_0 = const()[name = tensor<string, []>("input_recurrent_activation_0"), val = tensor<string, []>("sigmoid")];
46
+ tensor<string, []> input_cell_activation_0 = const()[name = tensor<string, []>("input_cell_activation_0"), val = tensor<string, []>("tanh")];
47
+ tensor<string, []> input_activation_0 = const()[name = tensor<string, []>("input_activation_0"), val = tensor<string, []>("tanh")];
48
+ tensor<fp32, [1, 1, 640]> input_0, tensor<fp32, [1, 640]> input_1, tensor<fp32, [1, 640]> input_2 = lstm(activation = input_activation_0, bias = concat_3, cell_activation = input_cell_activation_0, direction = input_direction_0, initial_c = input_lstm_c0_squeeze, initial_h = input_lstm_h0_squeeze, output_sequence = input_output_sequence_0, recurrent_activation = input_recurrent_activation_0, weight_hh = concat_5, weight_ih = concat_4, x = input_lstm_layer_0_0)[name = tensor<string, []>("input")];
49
+ tensor<int32, []> obj_3_axis_0 = const()[name = tensor<string, []>("obj_3_axis_0"), val = tensor<int32, []>(0)];
50
+ tensor<fp32, [2, 1, 640]> h_out = stack(axis = obj_3_axis_0, values = (input_lstm_layer_0_1, input_1))[name = tensor<string, []>("obj_3")];
51
+ tensor<int32, []> obj_axis_0 = const()[name = tensor<string, []>("obj_axis_0"), val = tensor<int32, []>(0)];
52
+ tensor<fp32, [2, 1, 640]> c_out = stack(axis = obj_axis_0, values = (input_lstm_layer_0_2, input_2))[name = tensor<string, []>("obj")];
53
+ tensor<int32, [3]> transpose_0_perm_0 = const()[name = tensor<string, []>("transpose_0_perm_0"), val = tensor<int32, [3]>([1, 2, 0])];
54
+ tensor<fp32, [1, 640, 1]> decoder = transpose(perm = transpose_0_perm_0, x = input_0)[name = tensor<string, []>("transpose_1")];
55
+ tensor<int32, [1]> target_length_tmp = identity(x = target_length)[name = tensor<string, []>("target_length_tmp")];
56
+ } -> (decoder, h_out, c_out);
57
+ }
Decoder.mlmodelc/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:90845baea25befede87e504148494a7de982e889ae979414ec62df1cebad67c8
3
+ size 47209472
Encoder.mlmodelc/analytics/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:77cc560a12972e8aa4d389042e30d373fc3df38ab1b4a7016ded4fc2e63f3e19
3
+ size 243
Encoder.mlmodelc/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:986ae7bd544c51f342203afe6b7b086053256479d193601c937221b0ef7a33c1
3
+ size 478
Encoder.mlmodelc/metadata.json ADDED
@@ -0,0 +1,105 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [
2
+ {
3
+ "metadataOutputVersion" : "3.0",
4
+ "shortDescription" : "Parakeet encoder (15 s window)",
5
+ "outputSchema" : [
6
+ {
7
+ "hasShapeFlexibility" : "0",
8
+ "isOptional" : "0",
9
+ "dataType" : "Float32",
10
+ "formattedType" : "MultiArray (Float32 1 × 1024 × 188)",
11
+ "shortDescription" : "",
12
+ "shape" : "[1, 1024, 188]",
13
+ "name" : "encoder",
14
+ "type" : "MultiArray"
15
+ },
16
+ {
17
+ "hasShapeFlexibility" : "0",
18
+ "isOptional" : "0",
19
+ "dataType" : "Int32",
20
+ "formattedType" : "MultiArray (Int32 1)",
21
+ "shortDescription" : "",
22
+ "shape" : "[1]",
23
+ "name" : "encoder_length",
24
+ "type" : "MultiArray"
25
+ }
26
+ ],
27
+ "storagePrecision" : "Float16",
28
+ "modelParameters" : [
29
+
30
+ ],
31
+ "author" : "Fluid Inference",
32
+ "specificationVersion" : 8,
33
+ "mlProgramOperationTypeHistogram" : {
34
+ "Ios17.floor" : 3,
35
+ "Ios17.logicalAnd" : 2,
36
+ "Ios17.reshape" : 145,
37
+ "Ios16.softmax" : 24,
38
+ "Ios17.matmul" : 72,
39
+ "Ios17.transpose" : 172,
40
+ "Split" : 24,
41
+ "Select" : 72,
42
+ "Ios17.expandDims" : 5,
43
+ "Ios17.add" : 174,
44
+ "Tile" : 1,
45
+ "Ios17.sliceByIndex" : 48,
46
+ "Ios16.sigmoid" : 24,
47
+ "Pad" : 48,
48
+ "Ios17.logicalNot" : 2,
49
+ "Ios17.layerNorm" : 120,
50
+ "Ios16.silu" : 72,
51
+ "Ios17.less" : 1,
52
+ "Ios17.conv" : 77,
53
+ "Ios16.relu" : 3,
54
+ "Ios17.cast" : 4,
55
+ "Ios17.linear" : 193,
56
+ "Ios17.mul" : 99
57
+ },
58
+ "computePrecision" : "Mixed (Float16, Float32, Int32)",
59
+ "isUpdatable" : "0",
60
+ "stateSchema" : [
61
+
62
+ ],
63
+ "availability" : {
64
+ "macOS" : "14.0",
65
+ "tvOS" : "17.0",
66
+ "visionOS" : "1.0",
67
+ "watchOS" : "10.0",
68
+ "iOS" : "17.0",
69
+ "macCatalyst" : "17.0"
70
+ },
71
+ "modelType" : {
72
+ "name" : "MLModelType_mlProgram"
73
+ },
74
+ "inputSchema" : [
75
+ {
76
+ "hasShapeFlexibility" : "0",
77
+ "isOptional" : "0",
78
+ "dataType" : "Float32",
79
+ "formattedType" : "MultiArray (Float32 1 × 128 × 1501)",
80
+ "shortDescription" : "",
81
+ "shape" : "[1, 128, 1501]",
82
+ "name" : "mel",
83
+ "type" : "MultiArray"
84
+ },
85
+ {
86
+ "hasShapeFlexibility" : "0",
87
+ "isOptional" : "0",
88
+ "dataType" : "Int32",
89
+ "formattedType" : "MultiArray (Int32 1)",
90
+ "shortDescription" : "",
91
+ "shape" : "[1]",
92
+ "name" : "mel_length",
93
+ "type" : "MultiArray"
94
+ }
95
+ ],
96
+ "userDefinedMetadata" : {
97
+ "com.github.apple.coremltools.conversion_date" : "2026-02-12",
98
+ "com.github.apple.coremltools.source" : "torch==2.7.0",
99
+ "com.github.apple.coremltools.version" : "9.0b1",
100
+ "com.github.apple.coremltools.source_dialect" : "TorchScript"
101
+ },
102
+ "generatedClassName" : "parakeet_encoder",
103
+ "method" : "predict"
104
+ }
105
+ ]
Encoder.mlmodelc/model.mil ADDED
The diff for this file is too large to render. See raw diff
 
Encoder.mlmodelc/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d9dbf2f3e759e7ad1d88dda24cc4545ce96bbbe2f778d8b3f4d4393fa51afabd
3
+ size 1185860032
JointDecision.mlmodelc/analytics/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b8d149ecb731de58bd4bb7ebc97f0b5ce8da6186b23bccbb556411b08ddc24ca
3
+ size 243
JointDecision.mlmodelc/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:18a2c6d0b46516234c4e929cc44178255b47e79d5e28dc3f96726a249272f25e
3
+ size 591
JointDecision.mlmodelc/metadata.json ADDED
@@ -0,0 +1,123 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [
2
+ {
3
+ "metadataOutputVersion" : "3.0",
4
+ "shortDescription" : "Parakeet single-step joint decision (current frame)",
5
+ "outputSchema" : [
6
+ {
7
+ "hasShapeFlexibility" : "0",
8
+ "isOptional" : "0",
9
+ "dataType" : "Int32",
10
+ "formattedType" : "MultiArray (Int32 1 × 1 × 1)",
11
+ "shortDescription" : "",
12
+ "shape" : "[1, 1, 1]",
13
+ "name" : "token_id",
14
+ "type" : "MultiArray"
15
+ },
16
+ {
17
+ "hasShapeFlexibility" : "0",
18
+ "isOptional" : "0",
19
+ "dataType" : "Float32",
20
+ "formattedType" : "MultiArray (Float32 1 × 1 × 1)",
21
+ "shortDescription" : "",
22
+ "shape" : "[1, 1, 1]",
23
+ "name" : "token_prob",
24
+ "type" : "MultiArray"
25
+ },
26
+ {
27
+ "hasShapeFlexibility" : "0",
28
+ "isOptional" : "0",
29
+ "dataType" : "Int32",
30
+ "formattedType" : "MultiArray (Int32 1 × 1 × 1)",
31
+ "shortDescription" : "",
32
+ "shape" : "[1, 1, 1]",
33
+ "name" : "duration",
34
+ "type" : "MultiArray"
35
+ },
36
+ {
37
+ "hasShapeFlexibility" : "0",
38
+ "isOptional" : "0",
39
+ "dataType" : "Int32",
40
+ "formattedType" : "MultiArray (Int32 1 × 1 × 1 × 64)",
41
+ "shortDescription" : "",
42
+ "shape" : "[1, 1, 1, 64]",
43
+ "name" : "top_k_ids",
44
+ "type" : "MultiArray"
45
+ },
46
+ {
47
+ "hasShapeFlexibility" : "0",
48
+ "isOptional" : "0",
49
+ "dataType" : "Float32",
50
+ "formattedType" : "MultiArray (Float32 1 × 1 × 1 × 64)",
51
+ "shortDescription" : "",
52
+ "shape" : "[1, 1, 1, 64]",
53
+ "name" : "top_k_logits",
54
+ "type" : "MultiArray"
55
+ }
56
+ ],
57
+ "storagePrecision" : "Float32",
58
+ "modelParameters" : [
59
+
60
+ ],
61
+ "author" : "Fluid Inference",
62
+ "specificationVersion" : 8,
63
+ "mlProgramOperationTypeHistogram" : {
64
+ "Ios17.reduceArgmax" : 2,
65
+ "Ios17.squeeze" : 1,
66
+ "Ios17.linear" : 3,
67
+ "Ios16.relu" : 1,
68
+ "Ios17.transpose" : 2,
69
+ "Ios17.sliceByIndex" : 2,
70
+ "Ios17.add" : 1,
71
+ "Ios16.softmax" : 1,
72
+ "Ios17.gatherAlongAxis" : 1,
73
+ "Ios17.topk" : 1,
74
+ "Ios17.expandDims" : 3
75
+ },
76
+ "computePrecision" : "Mixed (Float32, Int32)",
77
+ "isUpdatable" : "0",
78
+ "stateSchema" : [
79
+
80
+ ],
81
+ "availability" : {
82
+ "macOS" : "14.0",
83
+ "tvOS" : "17.0",
84
+ "visionOS" : "1.0",
85
+ "watchOS" : "10.0",
86
+ "iOS" : "17.0",
87
+ "macCatalyst" : "17.0"
88
+ },
89
+ "modelType" : {
90
+ "name" : "MLModelType_mlProgram"
91
+ },
92
+ "inputSchema" : [
93
+ {
94
+ "hasShapeFlexibility" : "0",
95
+ "isOptional" : "0",
96
+ "dataType" : "Float32",
97
+ "formattedType" : "MultiArray (Float32 1 × 1024 × 1)",
98
+ "shortDescription" : "",
99
+ "shape" : "[1, 1024, 1]",
100
+ "name" : "encoder_step",
101
+ "type" : "MultiArray"
102
+ },
103
+ {
104
+ "hasShapeFlexibility" : "0",
105
+ "isOptional" : "0",
106
+ "dataType" : "Float32",
107
+ "formattedType" : "MultiArray (Float32 1 × 640 × 1)",
108
+ "shortDescription" : "",
109
+ "shape" : "[1, 640, 1]",
110
+ "name" : "decoder_step",
111
+ "type" : "MultiArray"
112
+ }
113
+ ],
114
+ "userDefinedMetadata" : {
115
+ "com.github.apple.coremltools.conversion_date" : "2026-02-12",
116
+ "com.github.apple.coremltools.source" : "torch==2.7.0",
117
+ "com.github.apple.coremltools.version" : "9.0b1",
118
+ "com.github.apple.coremltools.source_dialect" : "TorchScript"
119
+ },
120
+ "generatedClassName" : "parakeet_joint_decision_single_step",
121
+ "method" : "predict"
122
+ }
123
+ ]
JointDecision.mlmodelc/model.mil ADDED
@@ -0,0 +1,57 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ program(1.0)
2
+ [buildInfo = dict<tensor<string, []>, tensor<string, []>>({{"coremlc-component-MIL", "3405.2.1"}, {"coremlc-version", "3404.23.1"}, {"coremltools-component-torch", "2.7.0"}, {"coremltools-source-dialect", "TorchScript"}, {"coremltools-version", "9.0b1"}})]
3
+ {
4
+ func main<ios17>(tensor<fp32, [1, 640, 1]> decoder_step, tensor<fp32, [1, 1024, 1]> encoder_step) {
5
+ tensor<fp32, [640]> joint_module_enc_bias = const()[name = tensor<string, []>("joint_module_enc_bias"), val = tensor<fp32, [640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(64)))];
6
+ tensor<fp32, [640, 1024]> joint_module_enc_weight = const()[name = tensor<string, []>("joint_module_enc_weight"), val = tensor<fp32, [640, 1024]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(2688)))];
7
+ tensor<fp32, [640]> joint_module_pred_bias = const()[name = tensor<string, []>("joint_module_pred_bias"), val = tensor<fp32, [640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(2624192)))];
8
+ tensor<fp32, [640, 640]> joint_module_pred_weight = const()[name = tensor<string, []>("joint_module_pred_weight"), val = tensor<fp32, [640, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(2626816)))];
9
+ tensor<fp32, [8198]> joint_module_joint_net_2_bias = const()[name = tensor<string, []>("joint_module_joint_net_2_bias"), val = tensor<fp32, [8198]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(4265280)))];
10
+ tensor<fp32, [8198, 640]> joint_module_joint_net_2_weight = const()[name = tensor<string, []>("joint_module_joint_net_2_weight"), val = tensor<fp32, [8198, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(4298176)))];
11
+ tensor<int32, [3]> input_1_perm_0 = const()[name = tensor<string, []>("input_1_perm_0"), val = tensor<int32, [3]>([0, 2, 1])];
12
+ tensor<int32, [3]> input_3_perm_0 = const()[name = tensor<string, []>("input_3_perm_0"), val = tensor<int32, [3]>([0, 2, 1])];
13
+ tensor<fp32, [1, 1, 1024]> input_1 = transpose(perm = input_1_perm_0, x = encoder_step)[name = tensor<string, []>("transpose_1")];
14
+ tensor<fp32, [1, 1, 640]> enc_proj = linear(bias = joint_module_enc_bias, weight = joint_module_enc_weight, x = input_1)[name = tensor<string, []>("linear_0")];
15
+ tensor<fp32, [1, 1, 640]> input_3 = transpose(perm = input_3_perm_0, x = decoder_step)[name = tensor<string, []>("transpose_0")];
16
+ tensor<fp32, [1, 1, 640]> dec_proj = linear(bias = joint_module_pred_bias, weight = joint_module_pred_weight, x = input_3)[name = tensor<string, []>("linear_1")];
17
+ tensor<int32, [1]> var_23_axes_0 = const()[name = tensor<string, []>("op_23_axes_0"), val = tensor<int32, [1]>([2])];
18
+ tensor<fp32, [1, 1, 1, 640]> var_23 = expand_dims(axes = var_23_axes_0, x = enc_proj)[name = tensor<string, []>("op_23")];
19
+ tensor<int32, [1]> var_24_axes_0 = const()[name = tensor<string, []>("op_24_axes_0"), val = tensor<int32, [1]>([1])];
20
+ tensor<fp32, [1, 1, 1, 640]> var_24 = expand_dims(axes = var_24_axes_0, x = dec_proj)[name = tensor<string, []>("op_24")];
21
+ tensor<fp32, [1, 1, 1, 640]> input_5 = add(x = var_23, y = var_24)[name = tensor<string, []>("input_5")];
22
+ tensor<fp32, [1, 1, 1, 640]> input_7 = relu(x = input_5)[name = tensor<string, []>("input_7")];
23
+ tensor<fp32, [1, 1, 1, 8198]> logits = linear(bias = joint_module_joint_net_2_bias, weight = joint_module_joint_net_2_weight, x = input_7)[name = tensor<string, []>("linear_2")];
24
+ tensor<int32, [4]> token_logits_begin_0 = const()[name = tensor<string, []>("token_logits_begin_0"), val = tensor<int32, [4]>([0, 0, 0, 0])];
25
+ tensor<int32, [4]> token_logits_end_0 = const()[name = tensor<string, []>("token_logits_end_0"), val = tensor<int32, [4]>([1, 1, 1, 8193])];
26
+ tensor<bool, [4]> token_logits_end_mask_0 = const()[name = tensor<string, []>("token_logits_end_mask_0"), val = tensor<bool, [4]>([true, true, true, false])];
27
+ tensor<fp32, [1, 1, 1, 8193]> token_logits = slice_by_index(begin = token_logits_begin_0, end = token_logits_end_0, end_mask = token_logits_end_mask_0, x = logits)[name = tensor<string, []>("token_logits")];
28
+ tensor<int32, [4]> duration_logits_begin_0 = const()[name = tensor<string, []>("duration_logits_begin_0"), val = tensor<int32, [4]>([0, 0, 0, 8193])];
29
+ tensor<int32, [4]> duration_logits_end_0 = const()[name = tensor<string, []>("duration_logits_end_0"), val = tensor<int32, [4]>([1, 1, 1, 8198])];
30
+ tensor<bool, [4]> duration_logits_end_mask_0 = const()[name = tensor<string, []>("duration_logits_end_mask_0"), val = tensor<bool, [4]>([true, true, true, true])];
31
+ tensor<fp32, [1, 1, 1, 5]> duration_logits = slice_by_index(begin = duration_logits_begin_0, end = duration_logits_end_0, end_mask = duration_logits_end_mask_0, x = logits)[name = tensor<string, []>("duration_logits")];
32
+ tensor<int32, []> var_43_axis_0 = const()[name = tensor<string, []>("op_43_axis_0"), val = tensor<int32, []>(-1)];
33
+ tensor<bool, []> var_43_keep_dims_0 = const()[name = tensor<string, []>("op_43_keep_dims_0"), val = tensor<bool, []>(false)];
34
+ tensor<string, []> var_43_output_dtype_0 = const()[name = tensor<string, []>("op_43_output_dtype_0"), val = tensor<string, []>("int32")];
35
+ tensor<int32, [1, 1, 1]> token_id = reduce_argmax(axis = var_43_axis_0, keep_dims = var_43_keep_dims_0, output_dtype = var_43_output_dtype_0, x = token_logits)[name = tensor<string, []>("op_43")];
36
+ tensor<int32, []> var_49 = const()[name = tensor<string, []>("op_49"), val = tensor<int32, []>(-1)];
37
+ tensor<fp32, [1, 1, 1, 8193]> token_probs_all = softmax(axis = var_49, x = token_logits)[name = tensor<string, []>("token_probs_all")];
38
+ tensor<int32, [1]> var_58_axes_0 = const()[name = tensor<string, []>("op_58_axes_0"), val = tensor<int32, [1]>([-1])];
39
+ tensor<int32, [1, 1, 1, 1]> var_58 = expand_dims(axes = var_58_axes_0, x = token_id)[name = tensor<string, []>("op_58")];
40
+ tensor<int32, []> var_59 = const()[name = tensor<string, []>("op_59"), val = tensor<int32, []>(-1)];
41
+ tensor<bool, []> var_61_validate_indices_0 = const()[name = tensor<string, []>("op_61_validate_indices_0"), val = tensor<bool, []>(false)];
42
+ tensor<fp32, [1, 1, 1, 1]> var_61 = gather_along_axis(axis = var_59, indices = var_58, validate_indices = var_61_validate_indices_0, x = token_probs_all)[name = tensor<string, []>("op_61")];
43
+ tensor<int32, [1]> var_63_axes_0 = const()[name = tensor<string, []>("op_63_axes_0"), val = tensor<int32, [1]>([-1])];
44
+ tensor<fp32, [1, 1, 1]> token_prob = squeeze(axes = var_63_axes_0, x = var_61)[name = tensor<string, []>("op_63")];
45
+ tensor<int32, []> var_66_axis_0 = const()[name = tensor<string, []>("op_66_axis_0"), val = tensor<int32, []>(-1)];
46
+ tensor<bool, []> var_66_keep_dims_0 = const()[name = tensor<string, []>("op_66_keep_dims_0"), val = tensor<bool, []>(false)];
47
+ tensor<string, []> var_66_output_dtype_0 = const()[name = tensor<string, []>("op_66_output_dtype_0"), val = tensor<string, []>("int32")];
48
+ tensor<int32, [1, 1, 1]> duration = reduce_argmax(axis = var_66_axis_0, keep_dims = var_66_keep_dims_0, output_dtype = var_66_output_dtype_0, x = duration_logits)[name = tensor<string, []>("op_66")];
49
+ tensor<int32, []> var_72 = const()[name = tensor<string, []>("op_72"), val = tensor<int32, []>(64)];
50
+ tensor<int32, []> var_76_axis_0 = const()[name = tensor<string, []>("op_76_axis_0"), val = tensor<int32, []>(-1)];
51
+ tensor<bool, []> var_76_ascending_0 = const()[name = tensor<string, []>("op_76_ascending_0"), val = tensor<bool, []>(false)];
52
+ tensor<bool, []> var_76_sort_0 = const()[name = tensor<string, []>("op_76_sort_0"), val = tensor<bool, []>(true)];
53
+ tensor<bool, []> var_76_return_indices_0 = const()[name = tensor<string, []>("op_76_return_indices_0"), val = tensor<bool, []>(true)];
54
+ tensor<string, []> var_76_output_indices_dtype_0 = const()[name = tensor<string, []>("op_76_output_indices_dtype_0"), val = tensor<string, []>("int32")];
55
+ tensor<fp32, [1, 1, 1, 64]> top_k_logits, tensor<int32, [1, 1, 1, 64]> top_k_ids = topk(ascending = var_76_ascending_0, axis = var_76_axis_0, k = var_72, output_indices_dtype = var_76_output_indices_dtype_0, return_indices = var_76_return_indices_0, sort = var_76_sort_0, x = token_logits)[name = tensor<string, []>("op_76")];
56
+ } -> (token_id, token_prob, duration, top_k_ids, top_k_logits);
57
+ }
JointDecision.mlmodelc/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7fe093ad8a2e61ba992a6c94ce5f281203340f3ff64ca86bee8cb468d7f4bba8
3
+ size 25285120
Preprocessor.mlmodelc/analytics/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9ec76b3a51582dce0f996aefeb0d4ae42436851a851372f7c42c74007c418306
3
+ size 243
Preprocessor.mlmodelc/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:cd4c07458015c6c12e5e9526e3f002789302d78569601bd985a2f882f34bb473
3
+ size 493
Preprocessor.mlmodelc/metadata.json ADDED
@@ -0,0 +1,110 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [
2
+ {
3
+ "metadataOutputVersion" : "3.0",
4
+ "shortDescription" : "Parakeet preprocessor (15 s window)",
5
+ "outputSchema" : [
6
+ {
7
+ "hasShapeFlexibility" : "0",
8
+ "isOptional" : "0",
9
+ "dataType" : "Float32",
10
+ "formattedType" : "MultiArray (Float32)",
11
+ "shortDescription" : "",
12
+ "shape" : "[]",
13
+ "name" : "mel",
14
+ "type" : "MultiArray"
15
+ },
16
+ {
17
+ "hasShapeFlexibility" : "0",
18
+ "isOptional" : "0",
19
+ "dataType" : "Int32",
20
+ "formattedType" : "MultiArray (Int32 1)",
21
+ "shortDescription" : "",
22
+ "shape" : "[1]",
23
+ "name" : "mel_length",
24
+ "type" : "MultiArray"
25
+ }
26
+ ],
27
+ "storagePrecision" : "Float32",
28
+ "modelParameters" : [
29
+
30
+ ],
31
+ "author" : "Fluid Inference",
32
+ "specificationVersion" : 8,
33
+ "mlProgramOperationTypeHistogram" : {
34
+ "Range1d" : 2,
35
+ "Ios17.reshape" : 2,
36
+ "Identity" : 1,
37
+ "Ios17.matmul" : 1,
38
+ "Ios17.expandDims" : 10,
39
+ "Select" : 3,
40
+ "Ios17.add" : 4,
41
+ "Tile" : 2,
42
+ "Ios17.sliceByIndex" : 3,
43
+ "Ios16.reduceSum" : 4,
44
+ "Shape" : 3,
45
+ "Ios17.gather" : 3,
46
+ "Pad" : 1,
47
+ "Ios17.log" : 1,
48
+ "Ios17.conv" : 2,
49
+ "Ios17.sub" : 4,
50
+ "Ios17.pow" : 2,
51
+ "Ios17.cast" : 3,
52
+ "Ios17.realDiv" : 4,
53
+ "Stack" : 1,
54
+ "Ios17.concat" : 3,
55
+ "Ios17.floorDiv" : 1,
56
+ "Ios17.less" : 1,
57
+ "Ios17.sqrt" : 1,
58
+ "Ios17.greaterEqual" : 1,
59
+ "Ios17.mul" : 1
60
+ },
61
+ "computePrecision" : "Mixed (Float32, Int32)",
62
+ "isUpdatable" : "0",
63
+ "stateSchema" : [
64
+
65
+ ],
66
+ "availability" : {
67
+ "macOS" : "14.0",
68
+ "tvOS" : "17.0",
69
+ "visionOS" : "1.0",
70
+ "watchOS" : "10.0",
71
+ "iOS" : "17.0",
72
+ "macCatalyst" : "17.0"
73
+ },
74
+ "modelType" : {
75
+ "name" : "MLModelType_mlProgram"
76
+ },
77
+ "inputSchema" : [
78
+ {
79
+ "dataType" : "Float32",
80
+ "hasShapeFlexibility" : "1",
81
+ "isOptional" : "0",
82
+ "shapeFlexibility" : "1 × 1...240000",
83
+ "shapeRange" : "[[1, 1], [1, 240000]]",
84
+ "formattedType" : "MultiArray (Float32 1 × 1)",
85
+ "type" : "MultiArray",
86
+ "shape" : "[1, 1]",
87
+ "name" : "audio_signal",
88
+ "shortDescription" : ""
89
+ },
90
+ {
91
+ "hasShapeFlexibility" : "0",
92
+ "isOptional" : "0",
93
+ "dataType" : "Int32",
94
+ "formattedType" : "MultiArray (Int32 1)",
95
+ "shortDescription" : "",
96
+ "shape" : "[1]",
97
+ "name" : "audio_length",
98
+ "type" : "MultiArray"
99
+ }
100
+ ],
101
+ "userDefinedMetadata" : {
102
+ "com.github.apple.coremltools.conversion_date" : "2026-02-12",
103
+ "com.github.apple.coremltools.source" : "torch==2.7.0",
104
+ "com.github.apple.coremltools.version" : "9.0b1",
105
+ "com.github.apple.coremltools.source_dialect" : "TorchScript"
106
+ },
107
+ "generatedClassName" : "parakeet_preprocessor",
108
+ "method" : "predict"
109
+ }
110
+ ]
Preprocessor.mlmodelc/model.mil ADDED
@@ -0,0 +1,156 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ program(1.0)
2
+ [buildInfo = dict<tensor<string, []>, tensor<string, []>>({{"coremlc-component-MIL", "3405.2.1"}, {"coremlc-version", "3404.23.1"}, {"coremltools-component-torch", "2.7.0"}, {"coremltools-source-dialect", "TorchScript"}, {"coremltools-version", "9.0b1"}})]
3
+ {
4
+ func main<ios17>(tensor<int32, [1]> audio_length, tensor<fp32, [1, ?]> audio_signal) [FlexibleShapeInformation = tuple<tuple<tensor<string, []>, dict<tensor<string, []>, tensor<int32, [?]>>>, tuple<tensor<string, []>, dict<tensor<string, []>, list<tensor<int32, [2]>, ?>>>>((("DefaultShapes", {{"audio_signal", [1, 1]}}), ("RangeDims", {{"audio_signal", [[1, 1], [1, 240000]]}})))] {
5
+ tensor<int32, []> var_9 = const()[name = tensor<string, []>("op_9"), val = tensor<int32, []>(1)];
6
+ tensor<int32, []> var_10 = const()[name = tensor<string, []>("op_10"), val = tensor<int32, []>(160)];
7
+ tensor<fp32, []> var_24 = const()[name = tensor<string, []>("op_24"), val = tensor<fp32, []>(0x0p+0)];
8
+ tensor<fp32, []> var_25 = const()[name = tensor<string, []>("op_25"), val = tensor<fp32, []>(0x1.4f8b58p-17)];
9
+ tensor<int32, []> var_34 = const()[name = tensor<string, []>("op_34"), val = tensor<int32, []>(512)];
10
+ tensor<int32, [1]> var_35 = add(x = audio_length, y = var_34)[name = tensor<string, []>("op_35")];
11
+ tensor<int32, []> var_36 = const()[name = tensor<string, []>("op_36"), val = tensor<int32, []>(512)];
12
+ tensor<int32, [1]> var_37 = sub(x = var_35, y = var_36)[name = tensor<string, []>("op_37")];
13
+ tensor<int32, [1]> floor_div_0 = floor_div(x = var_37, y = var_10)[name = tensor<string, []>("floor_div_0")];
14
+ tensor<string, []> var_38_dtype_0 = const()[name = tensor<string, []>("op_38_dtype_0"), val = tensor<string, []>("fp32")];
15
+ tensor<fp32, []> var_39_promoted = const()[name = tensor<string, []>("op_39_promoted"), val = tensor<fp32, []>(0x1p+0)];
16
+ tensor<fp32, [1]> var_38 = cast(dtype = var_38_dtype_0, x = floor_div_0)[name = tensor<string, []>("cast_13")];
17
+ tensor<fp32, [1]> seq_len_1 = add(x = var_38, y = var_39_promoted)[name = tensor<string, []>("seq_len_1")];
18
+ tensor<string, []> seq_len_dtype_0 = const()[name = tensor<string, []>("seq_len_dtype_0"), val = tensor<string, []>("int32")];
19
+ tensor<int32, [2]> var_43_begin_0 = const()[name = tensor<string, []>("op_43_begin_0"), val = tensor<int32, [2]>([0, 0])];
20
+ tensor<int32, [2]> var_43_end_0 = const()[name = tensor<string, []>("op_43_end_0"), val = tensor<int32, [2]>([1, 1])];
21
+ tensor<bool, [2]> var_43_end_mask_0 = const()[name = tensor<string, []>("op_43_end_mask_0"), val = tensor<bool, [2]>([true, false])];
22
+ tensor<bool, [2]> var_43_squeeze_mask_0 = const()[name = tensor<string, []>("op_43_squeeze_mask_0"), val = tensor<bool, [2]>([false, true])];
23
+ tensor<fp32, [1]> var_43 = slice_by_index(begin = var_43_begin_0, end = var_43_end_0, end_mask = var_43_end_mask_0, squeeze_mask = var_43_squeeze_mask_0, x = audio_signal)[name = tensor<string, []>("op_43")];
24
+ tensor<int32, [1]> var_44_axes_0 = const()[name = tensor<string, []>("op_44_axes_0"), val = tensor<int32, [1]>([1])];
25
+ tensor<fp32, [1, 1]> var_44 = expand_dims(axes = var_44_axes_0, x = var_43)[name = tensor<string, []>("op_44")];
26
+ tensor<int32, [2]> var_46_begin_0 = const()[name = tensor<string, []>("op_46_begin_0"), val = tensor<int32, [2]>([0, 1])];
27
+ tensor<int32, [2]> var_46_end_0 = const()[name = tensor<string, []>("op_46_end_0"), val = tensor<int32, [2]>([1, 0])];
28
+ tensor<bool, [2]> var_46_end_mask_0 = const()[name = tensor<string, []>("op_46_end_mask_0"), val = tensor<bool, [2]>([true, true])];
29
+ tensor<fp32, [1, ?]> var_46 = slice_by_index(begin = var_46_begin_0, end = var_46_end_0, end_mask = var_46_end_mask_0, x = audio_signal)[name = tensor<string, []>("op_46")];
30
+ tensor<int32, [2]> var_48_begin_0 = const()[name = tensor<string, []>("op_48_begin_0"), val = tensor<int32, [2]>([0, 0])];
31
+ tensor<int32, [2]> var_48_end_0 = const()[name = tensor<string, []>("op_48_end_0"), val = tensor<int32, [2]>([1, -1])];
32
+ tensor<bool, [2]> var_48_end_mask_0 = const()[name = tensor<string, []>("op_48_end_mask_0"), val = tensor<bool, [2]>([true, false])];
33
+ tensor<fp32, [1, ?]> var_48 = slice_by_index(begin = var_48_begin_0, end = var_48_end_0, end_mask = var_48_end_mask_0, x = audio_signal)[name = tensor<string, []>("op_48")];
34
+ tensor<fp32, []> var_49 = const()[name = tensor<string, []>("op_49"), val = tensor<fp32, []>(0x1.f0a3d8p-1)];
35
+ tensor<fp32, [1, ?]> var_50 = mul(x = var_48, y = var_49)[name = tensor<string, []>("op_50")];
36
+ tensor<fp32, [1, ?]> var_51 = sub(x = var_46, y = var_50)[name = tensor<string, []>("op_51")];
37
+ tensor<bool, []> input_1_interleave_0 = const()[name = tensor<string, []>("input_1_interleave_0"), val = tensor<bool, []>(false)];
38
+ tensor<fp32, [1, ?]> input_1 = concat(axis = var_9, interleave = input_1_interleave_0, values = (var_44, var_51))[name = tensor<string, []>("input_1")];
39
+ tensor<int32, [3]> concat_0x = const()[name = tensor<string, []>("concat_0x"), val = tensor<int32, [3]>([1, 1, -1])];
40
+ tensor<fp32, [1, 1, ?]> input_3 = reshape(shape = concat_0x, x = input_1)[name = tensor<string, []>("input_3")];
41
+ tensor<fp32, []> const_1 = const()[name = tensor<string, []>("const_1"), val = tensor<fp32, []>(0x0p+0)];
42
+ tensor<int32, [6]> input_5_pad_0 = const()[name = tensor<string, []>("input_5_pad_0"), val = tensor<int32, [6]>([0, 0, 0, 0, 256, 256])];
43
+ tensor<string, []> input_5_mode_0 = const()[name = tensor<string, []>("input_5_mode_0"), val = tensor<string, []>("reflect")];
44
+ tensor<fp32, [1, 1, ?]> input_5 = pad(constant_val = const_1, mode = input_5_mode_0, pad = input_5_pad_0, x = input_3)[name = tensor<string, []>("input_5")];
45
+ tensor<int32, [2]> concat_1x = const()[name = tensor<string, []>("concat_1x"), val = tensor<int32, [2]>([1, -1])];
46
+ tensor<fp32, [1, ?]> input = reshape(shape = concat_1x, x = input_5)[name = tensor<string, []>("input")];
47
+ tensor<fp32, [257, 1, 512]> expand_dims_1 = const()[name = tensor<string, []>("expand_dims_1"), val = tensor<fp32, [257, 1, 512]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(64)))];
48
+ tensor<fp32, [257, 1, 512]> expand_dims_2 = const()[name = tensor<string, []>("expand_dims_2"), val = tensor<fp32, [257, 1, 512]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(526464)))];
49
+ tensor<int32, [1]> expand_dims_3 = const()[name = tensor<string, []>("expand_dims_3"), val = tensor<int32, [1]>([160])];
50
+ tensor<int32, [1]> expand_dims_4_axes_0 = const()[name = tensor<string, []>("expand_dims_4_axes_0"), val = tensor<int32, [1]>([1])];
51
+ tensor<fp32, [1, 1, ?]> expand_dims_4 = expand_dims(axes = expand_dims_4_axes_0, x = input)[name = tensor<string, []>("expand_dims_4")];
52
+ tensor<string, []> conv_0_pad_type_0 = const()[name = tensor<string, []>("conv_0_pad_type_0"), val = tensor<string, []>("valid")];
53
+ tensor<int32, [2]> conv_0_pad_0 = const()[name = tensor<string, []>("conv_0_pad_0"), val = tensor<int32, [2]>([0, 0])];
54
+ tensor<int32, [1]> conv_0_dilations_0 = const()[name = tensor<string, []>("conv_0_dilations_0"), val = tensor<int32, [1]>([1])];
55
+ tensor<int32, []> conv_0_groups_0 = const()[name = tensor<string, []>("conv_0_groups_0"), val = tensor<int32, []>(1)];
56
+ tensor<fp32, [1, 257, ?]> conv_0 = conv(dilations = conv_0_dilations_0, groups = conv_0_groups_0, pad = conv_0_pad_0, pad_type = conv_0_pad_type_0, strides = expand_dims_3, weight = expand_dims_1, x = expand_dims_4)[name = tensor<string, []>("conv_0")];
57
+ tensor<string, []> conv_1_pad_type_0 = const()[name = tensor<string, []>("conv_1_pad_type_0"), val = tensor<string, []>("valid")];
58
+ tensor<int32, [2]> conv_1_pad_0 = const()[name = tensor<string, []>("conv_1_pad_0"), val = tensor<int32, [2]>([0, 0])];
59
+ tensor<int32, [1]> conv_1_dilations_0 = const()[name = tensor<string, []>("conv_1_dilations_0"), val = tensor<int32, [1]>([1])];
60
+ tensor<int32, []> conv_1_groups_0 = const()[name = tensor<string, []>("conv_1_groups_0"), val = tensor<int32, []>(1)];
61
+ tensor<fp32, [1, 257, ?]> conv_1 = conv(dilations = conv_1_dilations_0, groups = conv_1_groups_0, pad = conv_1_pad_0, pad_type = conv_1_pad_type_0, strides = expand_dims_3, weight = expand_dims_2, x = expand_dims_4)[name = tensor<string, []>("conv_1")];
62
+ tensor<int32, []> stack_0_axis_0 = const()[name = tensor<string, []>("stack_0_axis_0"), val = tensor<int32, []>(-1)];
63
+ tensor<fp32, [1, 257, ?, 2]> stack_0 = stack(axis = stack_0_axis_0, values = (conv_0, conv_1))[name = tensor<string, []>("stack_0")];
64
+ tensor<fp32, []> var_17_promoted = const()[name = tensor<string, []>("op_17_promoted"), val = tensor<fp32, []>(0x1p+1)];
65
+ tensor<fp32, [1, 257, ?, 2]> var_67 = pow(x = stack_0, y = var_17_promoted)[name = tensor<string, []>("op_67")];
66
+ tensor<int32, [1]> var_69_axes_0 = const()[name = tensor<string, []>("op_69_axes_0"), val = tensor<int32, [1]>([-1])];
67
+ tensor<bool, []> var_69_keep_dims_0 = const()[name = tensor<string, []>("op_69_keep_dims_0"), val = tensor<bool, []>(false)];
68
+ tensor<fp32, [1, 257, ?]> var_69 = reduce_sum(axes = var_69_axes_0, keep_dims = var_69_keep_dims_0, x = var_67)[name = tensor<string, []>("op_69")];
69
+ tensor<fp32, [1, 257, ?]> x_9 = identity(x = var_69)[name = tensor<string, []>("x_9")];
70
+ tensor<fp32, [1, 128, 257]> const_2 = const()[name = tensor<string, []>("const_2"), val = tensor<fp32, [1, 128, 257]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(1052864)))];
71
+ tensor<bool, []> x_11_transpose_x_0 = const()[name = tensor<string, []>("x_11_transpose_x_0"), val = tensor<bool, []>(false)];
72
+ tensor<bool, []> x_11_transpose_y_0 = const()[name = tensor<string, []>("x_11_transpose_y_0"), val = tensor<bool, []>(false)];
73
+ tensor<fp32, [1, 128, ?]> x_11 = matmul(transpose_x = x_11_transpose_x_0, transpose_y = x_11_transpose_y_0, x = const_2, y = x_9)[name = tensor<string, []>("x_11")];
74
+ tensor<fp32, []> var_76 = const()[name = tensor<string, []>("op_76"), val = tensor<fp32, []>(0x1p-24)];
75
+ tensor<fp32, [1, 128, ?]> var_77 = add(x = x_11, y = var_76)[name = tensor<string, []>("op_77")];
76
+ tensor<fp32, []> x_13_epsilon_0 = const()[name = tensor<string, []>("x_13_epsilon_0"), val = tensor<fp32, []>(0x1p-149)];
77
+ tensor<fp32, [1, 128, ?]> x_13 = log(epsilon = x_13_epsilon_0, x = var_77)[name = tensor<string, []>("x_13")];
78
+ tensor<int32, [3]> var_79_shape = shape(x = x_13)[name = tensor<string, []>("op_79_shape")];
79
+ tensor<int32, []> gather_4 = const()[name = tensor<string, []>("gather_4"), val = tensor<int32, []>(1)];
80
+ tensor<int32, []> gather_5_batch_dims_0 = const()[name = tensor<string, []>("gather_5_batch_dims_0"), val = tensor<int32, []>(0)];
81
+ tensor<bool, []> gather_5_validate_indices_0 = const()[name = tensor<string, []>("gather_5_validate_indices_0"), val = tensor<bool, []>(false)];
82
+ tensor<int32, []> select_2 = const()[name = tensor<string, []>("select_2"), val = tensor<int32, []>(2)];
83
+ tensor<int32, []> gather_5_axis_1 = const()[name = tensor<string, []>("gather_5_axis_1"), val = tensor<int32, []>(0)];
84
+ tensor<int32, []> gather_5 = gather(axis = gather_5_axis_1, batch_dims = gather_5_batch_dims_0, indices = select_2, validate_indices = gather_5_validate_indices_0, x = var_79_shape)[name = tensor<string, []>("gather_5")];
85
+ tensor<int32, []> const_3 = const()[name = tensor<string, []>("const_3"), val = tensor<int32, []>(0)];
86
+ tensor<int32, []> const_4 = const()[name = tensor<string, []>("const_4"), val = tensor<int32, []>(1)];
87
+ tensor<int32, [?]> var_81 = range_1d(end = gather_5, start = const_3, step = const_4)[name = tensor<string, []>("op_81")];
88
+ tensor<int32, [1]> var_82_axes_0 = const()[name = tensor<string, []>("op_82_axes_0"), val = tensor<int32, [1]>([0])];
89
+ tensor<int32, [1, ?]> var_82 = expand_dims(axes = var_82_axes_0, x = var_81)[name = tensor<string, []>("op_82")];
90
+ tensor<int32, []> concat_2_axis_0 = const()[name = tensor<string, []>("concat_2_axis_0"), val = tensor<int32, []>(0)];
91
+ tensor<bool, []> concat_2_interleave_0 = const()[name = tensor<string, []>("concat_2_interleave_0"), val = tensor<bool, []>(false)];
92
+ tensor<int32, [2]> concat_2 = concat(axis = concat_2_axis_0, interleave = concat_2_interleave_0, values = (gather_4, gather_5))[name = tensor<string, []>("concat_2")];
93
+ tensor<int32, [2]> shape_0 = shape(x = var_82)[name = tensor<string, []>("shape_0")];
94
+ tensor<int32, [2]> real_div_0 = real_div(x = concat_2, y = shape_0)[name = tensor<string, []>("real_div_0")];
95
+ tensor<int32, [?, ?]> time_steps = tile(reps = real_div_0, x = var_82)[name = tensor<string, []>("time_steps")];
96
+ tensor<int32, [1]> var_85_axes_0 = const()[name = tensor<string, []>("op_85_axes_0"), val = tensor<int32, [1]>([1])];
97
+ tensor<int32, [1]> mel_length = cast(dtype = seq_len_dtype_0, x = seq_len_1)[name = tensor<string, []>("cast_12")];
98
+ tensor<int32, [1, 1]> var_85 = expand_dims(axes = var_85_axes_0, x = mel_length)[name = tensor<string, []>("op_85")];
99
+ tensor<bool, [?, ?]> valid_mask = less(x = time_steps, y = var_85)[name = tensor<string, []>("valid_mask")];
100
+ tensor<int32, [1]> var_87_axes_0 = const()[name = tensor<string, []>("op_87_axes_0"), val = tensor<int32, [1]>([1])];
101
+ tensor<bool, [?, 1, ?]> var_87 = expand_dims(axes = var_87_axes_0, x = valid_mask)[name = tensor<string, []>("op_87")];
102
+ tensor<fp32, [1, 128, ?]> var_88 = select(a = x_13, b = var_24, cond = var_87)[name = tensor<string, []>("op_88")];
103
+ tensor<int32, [1]> x_mean_numerator_axes_0 = const()[name = tensor<string, []>("x_mean_numerator_axes_0"), val = tensor<int32, [1]>([2])];
104
+ tensor<bool, []> x_mean_numerator_keep_dims_0 = const()[name = tensor<string, []>("x_mean_numerator_keep_dims_0"), val = tensor<bool, []>(false)];
105
+ tensor<fp32, [1, 128]> x_mean_numerator = reduce_sum(axes = x_mean_numerator_axes_0, keep_dims = x_mean_numerator_keep_dims_0, x = var_88)[name = tensor<string, []>("x_mean_numerator")];
106
+ tensor<string, []> cast_3_dtype_0 = const()[name = tensor<string, []>("cast_3_dtype_0"), val = tensor<string, []>("fp32")];
107
+ tensor<int32, [1]> x_mean_denominator_axes_0 = const()[name = tensor<string, []>("x_mean_denominator_axes_0"), val = tensor<int32, [1]>([1])];
108
+ tensor<bool, []> x_mean_denominator_keep_dims_0 = const()[name = tensor<string, []>("x_mean_denominator_keep_dims_0"), val = tensor<bool, []>(false)];
109
+ tensor<fp32, [?, ?]> cast_3 = cast(dtype = cast_3_dtype_0, x = valid_mask)[name = tensor<string, []>("cast_11")];
110
+ tensor<fp32, [?]> x_mean_denominator = reduce_sum(axes = x_mean_denominator_axes_0, keep_dims = x_mean_denominator_keep_dims_0, x = cast_3)[name = tensor<string, []>("x_mean_denominator")];
111
+ tensor<int32, [1]> var_93_axes_0 = const()[name = tensor<string, []>("op_93_axes_0"), val = tensor<int32, [1]>([1])];
112
+ tensor<fp32, [?, 1]> var_93 = expand_dims(axes = var_93_axes_0, x = x_mean_denominator)[name = tensor<string, []>("op_93")];
113
+ tensor<fp32, [?, 128]> x_mean = real_div(x = x_mean_numerator, y = var_93)[name = tensor<string, []>("x_mean")];
114
+ tensor<int32, [1]> var_96_axes_0 = const()[name = tensor<string, []>("op_96_axes_0"), val = tensor<int32, [1]>([2])];
115
+ tensor<fp32, [?, 128, 1]> var_96 = expand_dims(axes = var_96_axes_0, x = x_mean)[name = tensor<string, []>("op_96")];
116
+ tensor<fp32, [?, 128, ?]> var_97 = sub(x = x_13, y = var_96)[name = tensor<string, []>("op_97")];
117
+ tensor<fp32, [?, 128, ?]> var_98 = select(a = var_97, b = var_24, cond = var_87)[name = tensor<string, []>("op_98")];
118
+ tensor<fp32, []> var_17_promoted_1 = const()[name = tensor<string, []>("op_17_promoted_1"), val = tensor<fp32, []>(0x1p+1)];
119
+ tensor<fp32, [?, 128, ?]> var_99 = pow(x = var_98, y = var_17_promoted_1)[name = tensor<string, []>("op_99")];
120
+ tensor<int32, [1]> var_101_axes_0 = const()[name = tensor<string, []>("op_101_axes_0"), val = tensor<int32, [1]>([2])];
121
+ tensor<bool, []> var_101_keep_dims_0 = const()[name = tensor<string, []>("op_101_keep_dims_0"), val = tensor<bool, []>(false)];
122
+ tensor<fp32, [?, 128]> var_101 = reduce_sum(axes = var_101_axes_0, keep_dims = var_101_keep_dims_0, x = var_99)[name = tensor<string, []>("op_101")];
123
+ tensor<fp32, []> var_103 = const()[name = tensor<string, []>("op_103"), val = tensor<fp32, []>(0x1p+0)];
124
+ tensor<fp32, [?, 1]> var_104 = sub(x = var_93, y = var_103)[name = tensor<string, []>("op_104")];
125
+ tensor<fp32, [?, 128]> var_105 = real_div(x = var_101, y = var_104)[name = tensor<string, []>("op_105")];
126
+ tensor<fp32, [?, 128]> x_std_1 = sqrt(x = var_105)[name = tensor<string, []>("x_std_1")];
127
+ tensor<fp32, [?, 128]> x_std = add(x = x_std_1, y = var_25)[name = tensor<string, []>("x_std")];
128
+ tensor<int32, [1]> var_110_axes_0 = const()[name = tensor<string, []>("op_110_axes_0"), val = tensor<int32, [1]>([2])];
129
+ tensor<fp32, [?, 128, 1]> var_110 = expand_dims(axes = var_110_axes_0, x = x_std)[name = tensor<string, []>("op_110")];
130
+ tensor<fp32, [?, 128, ?]> x = real_div(x = var_97, y = var_110)[name = tensor<string, []>("x")];
131
+ tensor<int32, [3]> var_112_shape = shape(x = x)[name = tensor<string, []>("op_112_shape")];
132
+ tensor<int32, []> gather_6_batch_dims_0 = const()[name = tensor<string, []>("gather_6_batch_dims_0"), val = tensor<int32, []>(0)];
133
+ tensor<bool, []> gather_6_validate_indices_0 = const()[name = tensor<string, []>("gather_6_validate_indices_0"), val = tensor<bool, []>(false)];
134
+ tensor<int32, []> select_3 = const()[name = tensor<string, []>("select_3"), val = tensor<int32, []>(2)];
135
+ tensor<int32, []> gather_6_axis_1 = const()[name = tensor<string, []>("gather_6_axis_1"), val = tensor<int32, []>(0)];
136
+ tensor<int32, []> gather_6 = gather(axis = gather_6_axis_1, batch_dims = gather_6_batch_dims_0, indices = select_3, validate_indices = gather_6_validate_indices_0, x = var_112_shape)[name = tensor<string, []>("gather_6")];
137
+ tensor<int32, []> const_5 = const()[name = tensor<string, []>("const_5"), val = tensor<int32, []>(0)];
138
+ tensor<int32, []> const_6 = const()[name = tensor<string, []>("const_6"), val = tensor<int32, []>(1)];
139
+ tensor<int32, [?]> mask_1 = range_1d(end = gather_6, start = const_5, step = const_6)[name = tensor<string, []>("mask_1")];
140
+ tensor<int32, []> gather_7_batch_dims_0 = const()[name = tensor<string, []>("gather_7_batch_dims_0"), val = tensor<int32, []>(0)];
141
+ tensor<bool, []> gather_7_validate_indices_0 = const()[name = tensor<string, []>("gather_7_validate_indices_0"), val = tensor<bool, []>(false)];
142
+ tensor<int32, []> select_4 = const()[name = tensor<string, []>("select_4"), val = tensor<int32, []>(0)];
143
+ tensor<int32, []> gather_7_axis_1 = const()[name = tensor<string, []>("gather_7_axis_1"), val = tensor<int32, []>(0)];
144
+ tensor<int32, []> gather_7 = gather(axis = gather_7_axis_1, batch_dims = gather_7_batch_dims_0, indices = select_4, validate_indices = gather_7_validate_indices_0, x = var_112_shape)[name = tensor<string, []>("gather_7")];
145
+ tensor<int32, []> concat_3_axis_0 = const()[name = tensor<string, []>("concat_3_axis_0"), val = tensor<int32, []>(0)];
146
+ tensor<bool, []> concat_3_interleave_0 = const()[name = tensor<string, []>("concat_3_interleave_0"), val = tensor<bool, []>(false)];
147
+ tensor<int32, [2]> concat_3 = concat(axis = concat_3_axis_0, interleave = concat_3_interleave_0, values = (gather_7, var_9))[name = tensor<string, []>("concat_3")];
148
+ tensor<int32, [1]> expand_dims_0_axes_0 = const()[name = tensor<string, []>("expand_dims_0_axes_0"), val = tensor<int32, [1]>([0])];
149
+ tensor<int32, [1, ?]> expand_dims_0 = expand_dims(axes = expand_dims_0_axes_0, x = mask_1)[name = tensor<string, []>("expand_dims_0")];
150
+ tensor<int32, [?, ?]> var_116 = tile(reps = concat_3, x = expand_dims_0)[name = tensor<string, []>("op_116")];
151
+ tensor<bool, [?, ?]> mask = greater_equal(x = var_116, y = var_85)[name = tensor<string, []>("mask")];
152
+ tensor<int32, [1]> var_119_axes_0 = const()[name = tensor<string, []>("op_119_axes_0"), val = tensor<int32, [1]>([1])];
153
+ tensor<bool, [?, 1, ?]> var_119 = expand_dims(axes = var_119_axes_0, x = mask)[name = tensor<string, []>("op_119")];
154
+ tensor<fp32, [?, 128, ?]> mel = select(a = var_24, b = x, cond = var_119)[name = tensor<string, []>("processed_signal")];
155
+ } -> (mel, mel_length);
156
+ }
Preprocessor.mlmodelc/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7a31e2bd311bfa97ea3fe73d4a6c029824327a71590397bd8784089a88754a77
3
+ size 1184512
metadata.json ADDED
@@ -0,0 +1,212 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model_id": "nvidia/parakeet-tdt-0.6b-v3",
3
+ "sample_rate": 16000,
4
+ "max_audio_seconds": 15.0,
5
+ "max_audio_samples": 240000,
6
+ "max_symbol_steps": 1,
7
+ "vocab_size": 8192,
8
+ "joint_extra_outputs": 5,
9
+ "checkpoint": {
10
+ "type": "pretrained",
11
+ "model_id": "nvidia/parakeet-tdt-0.6b-v3"
12
+ },
13
+ "coreml": {
14
+ "compute_units": "CPU_ONLY",
15
+ "compute_precision": "FLOAT32"
16
+ },
17
+ "components": {
18
+ "preprocessor": {
19
+ "inputs": {
20
+ "audio_signal": [
21
+ 1,
22
+ 240000
23
+ ],
24
+ "audio_length": [
25
+ 1
26
+ ]
27
+ },
28
+ "outputs": {
29
+ "mel": [
30
+ 1,
31
+ 128,
32
+ 1501
33
+ ],
34
+ "mel_length": [
35
+ 1
36
+ ]
37
+ },
38
+ "path": "parakeet_preprocessor.mlpackage"
39
+ },
40
+ "encoder": {
41
+ "inputs": {
42
+ "mel": [
43
+ 1,
44
+ 128,
45
+ 1501
46
+ ],
47
+ "mel_length": [
48
+ 1
49
+ ]
50
+ },
51
+ "outputs": {
52
+ "encoder": [
53
+ 1,
54
+ 1024,
55
+ 188
56
+ ],
57
+ "encoder_length": [
58
+ 1
59
+ ]
60
+ },
61
+ "path": "parakeet_encoder.mlpackage"
62
+ },
63
+ "mel_encoder": {
64
+ "inputs": {
65
+ "audio_signal": [
66
+ 1,
67
+ 240000
68
+ ],
69
+ "audio_length": [
70
+ 1
71
+ ]
72
+ },
73
+ "outputs": {
74
+ "encoder": [
75
+ 1,
76
+ 1024,
77
+ 188
78
+ ],
79
+ "encoder_length": [
80
+ 1
81
+ ]
82
+ },
83
+ "path": "parakeet_mel_encoder.mlpackage"
84
+ },
85
+ "decoder": {
86
+ "inputs": {
87
+ "targets": [
88
+ 1,
89
+ 1
90
+ ],
91
+ "target_length": [
92
+ 1
93
+ ],
94
+ "h_in": [
95
+ 2,
96
+ 1,
97
+ 640
98
+ ],
99
+ "c_in": [
100
+ 2,
101
+ 1,
102
+ 640
103
+ ]
104
+ },
105
+ "outputs": {
106
+ "decoder": [
107
+ 1,
108
+ 640,
109
+ 1
110
+ ],
111
+ "h_out": [
112
+ 2,
113
+ 1,
114
+ 640
115
+ ],
116
+ "c_out": [
117
+ 2,
118
+ 1,
119
+ 640
120
+ ]
121
+ },
122
+ "path": "parakeet_decoder.mlpackage"
123
+ },
124
+ "joint": {
125
+ "inputs": {
126
+ "encoder": [
127
+ 1,
128
+ 1024,
129
+ 188
130
+ ],
131
+ "decoder": [
132
+ 1,
133
+ 640,
134
+ 1
135
+ ]
136
+ },
137
+ "outputs": {
138
+ "logits": [
139
+ 1,
140
+ 188,
141
+ 1,
142
+ 8198
143
+ ]
144
+ },
145
+ "path": "parakeet_joint.mlpackage"
146
+ },
147
+ "joint_decision": {
148
+ "inputs": {
149
+ "encoder": [
150
+ 1,
151
+ 1024,
152
+ 188
153
+ ],
154
+ "decoder": [
155
+ 1,
156
+ 640,
157
+ 1
158
+ ]
159
+ },
160
+ "outputs": {
161
+ "token_id": [
162
+ 1,
163
+ 1024,
164
+ 640
165
+ ],
166
+ "token_prob": [
167
+ 1,
168
+ 1024,
169
+ 640
170
+ ],
171
+ "duration": [
172
+ 1,
173
+ 1024,
174
+ 640
175
+ ]
176
+ },
177
+ "path": "parakeet_joint_decision.mlpackage"
178
+ },
179
+ "joint_decision_single_step": {
180
+ "inputs": {
181
+ "encoder_step": [
182
+ 1,
183
+ 1024,
184
+ 1
185
+ ],
186
+ "decoder_step": [
187
+ 1,
188
+ 640,
189
+ 1
190
+ ]
191
+ },
192
+ "outputs": {
193
+ "token_id": [
194
+ 1,
195
+ 1,
196
+ 1
197
+ ],
198
+ "token_prob": [
199
+ 1,
200
+ 1,
201
+ 1
202
+ ],
203
+ "duration": [
204
+ 1,
205
+ 1,
206
+ 1
207
+ ]
208
+ },
209
+ "path": "parakeet_joint_decision_single_step.mlpackage"
210
+ }
211
+ }
212
+ }
parakeet_vocab.json ADDED
The diff for this file is too large to render. See raw diff