dberkin1 commited on
Commit
a28b7cc
·
0 Parent(s):

Upload parakeet-tdt_ctc-110m

Browse files
.gitattributes ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ *.7z filter=lfs diff=lfs merge=lfs -text
2
+ *.arrow filter=lfs diff=lfs merge=lfs -text
3
+ *.bin filter=lfs diff=lfs merge=lfs -text
4
+ *.bz2 filter=lfs diff=lfs merge=lfs -text
5
+ *.ckpt filter=lfs diff=lfs merge=lfs -text
6
+ *.ftz filter=lfs diff=lfs merge=lfs -text
7
+ *.gz filter=lfs diff=lfs merge=lfs -text
8
+ *.h5 filter=lfs diff=lfs merge=lfs -text
9
+ *.joblib filter=lfs diff=lfs merge=lfs -text
10
+ *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
+ *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
+ *.model filter=lfs diff=lfs merge=lfs -text
13
+ *.msgpack filter=lfs diff=lfs merge=lfs -text
14
+ *.npy filter=lfs diff=lfs merge=lfs -text
15
+ *.npz filter=lfs diff=lfs merge=lfs -text
16
+ *.onnx filter=lfs diff=lfs merge=lfs -text
17
+ *.ot filter=lfs diff=lfs merge=lfs -text
18
+ *.parquet filter=lfs diff=lfs merge=lfs -text
19
+ *.pb filter=lfs diff=lfs merge=lfs -text
20
+ *.pickle filter=lfs diff=lfs merge=lfs -text
21
+ *.pkl filter=lfs diff=lfs merge=lfs -text
22
+ *.pt filter=lfs diff=lfs merge=lfs -text
23
+ *.pth filter=lfs diff=lfs merge=lfs -text
24
+ *.rar filter=lfs diff=lfs merge=lfs -text
25
+ *.safetensors filter=lfs diff=lfs merge=lfs -text
26
+ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
27
+ *.tar.* filter=lfs diff=lfs merge=lfs -text
28
+ *.tar filter=lfs diff=lfs merge=lfs -text
29
+ *.tflite filter=lfs diff=lfs merge=lfs -text
30
+ *.tgz filter=lfs diff=lfs merge=lfs -text
31
+ *.wasm filter=lfs diff=lfs merge=lfs -text
32
+ *.xz filter=lfs diff=lfs merge=lfs -text
33
+ *.zip filter=lfs diff=lfs merge=lfs -text
34
+ *.zst filter=lfs diff=lfs merge=lfs -text
35
+ *tfevents* filter=lfs diff=lfs merge=lfs -text
parakeet-tdt_ctc-110m/AudioEncoder.mlmodelc/analytics/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8906c823e9bb3bf6b16d9f0308f98cd70573526333ad85dd767dc3f9ae6b25fa
3
+ size 243
parakeet-tdt_ctc-110m/AudioEncoder.mlmodelc/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a88b002b58193b4c31211754cdfdf220a85f9651dc61caf336ab84400cbc191a
3
+ size 505
parakeet-tdt_ctc-110m/AudioEncoder.mlmodelc/metadata.json ADDED
@@ -0,0 +1,118 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [
2
+ {
3
+ "metadataOutputVersion" : "3.0",
4
+ "storagePrecision" : "Mixed (Float16, Palettized (6 bits), Sparse)",
5
+ "outputSchema" : [
6
+ {
7
+ "hasShapeFlexibility" : "0",
8
+ "isOptional" : "0",
9
+ "dataType" : "Float16",
10
+ "formattedType" : "MultiArray (Float16 1 × 512 × 1 × 188)",
11
+ "shortDescription" : "",
12
+ "shape" : "[1, 512, 1, 188]",
13
+ "name" : "encoder_output_embeds",
14
+ "type" : "MultiArray"
15
+ },
16
+ {
17
+ "hasShapeFlexibility" : "0",
18
+ "isOptional" : "0",
19
+ "dataType" : "Float16",
20
+ "formattedType" : "MultiArray (Float16 1 × 640 × 1 × 188)",
21
+ "shortDescription" : "",
22
+ "shape" : "[1, 640, 1, 188]",
23
+ "name" : "joint_projected_encoder_output_embeds",
24
+ "type" : "MultiArray"
25
+ },
26
+ {
27
+ "hasShapeFlexibility" : "0",
28
+ "isOptional" : "0",
29
+ "dataType" : "Float16",
30
+ "formattedType" : "MultiArray (Float16 1 × 1025 × 1 × 188)",
31
+ "shortDescription" : "",
32
+ "shape" : "[1, 1025, 1, 188]",
33
+ "name" : "ctc_head_raw_output",
34
+ "type" : "MultiArray"
35
+ },
36
+ {
37
+ "hasShapeFlexibility" : "0",
38
+ "isOptional" : "0",
39
+ "dataType" : "Float16",
40
+ "formattedType" : "MultiArray (Float16 1 × 1025 × 1 × 188)",
41
+ "shortDescription" : "",
42
+ "shape" : "[1, 1025, 1, 188]",
43
+ "name" : "ctc_head_output",
44
+ "type" : "MultiArray"
45
+ }
46
+ ],
47
+ "modelParameters" : [
48
+
49
+ ],
50
+ "specificationVersion" : 8,
51
+ "mlProgramOperationTypeHistogram" : {
52
+ "Pad" : 17,
53
+ "Ios17.mul" : 86,
54
+ "Split" : 17,
55
+ "Ios17.transpose" : 1,
56
+ "Ios17.sub" : 1,
57
+ "Ios16.constexprLutToDense" : 190,
58
+ "Ios17.conv" : 402,
59
+ "Ios17.matmul" : 51,
60
+ "Ios17.log" : 1,
61
+ "Ios16.sigmoid" : 17,
62
+ "Ios17.add" : 309,
63
+ "Ios17.sliceByIndex" : 34,
64
+ "Ios16.constexprSparseToDense" : 190,
65
+ "Ios16.relu" : 3,
66
+ "Ios17.batchNorm" : 85,
67
+ "Ios16.softmax" : 18,
68
+ "Ios17.reshape" : 137,
69
+ "Ios17.layerNorm" : 85,
70
+ "Ios16.silu" : 51
71
+ },
72
+ "computePrecision" : "Mixed (Float16, Float32, Int32)",
73
+ "isUpdatable" : "0",
74
+ "stateSchema" : [
75
+
76
+ ],
77
+ "availability" : {
78
+ "macOS" : "14.0",
79
+ "tvOS" : "17.0",
80
+ "visionOS" : "1.0",
81
+ "watchOS" : "10.0",
82
+ "iOS" : "17.0",
83
+ "macCatalyst" : "17.0"
84
+ },
85
+ "modelType" : {
86
+ "name" : "MLModelType_mlProgram"
87
+ },
88
+ "userDefinedMetadata" : {
89
+ "com.github.apple.coremltools.source_dialect" : "TorchScript",
90
+ "com.github.apple.coremltools.source" : "torch==2.5.0",
91
+ "com.github.apple.coremltools.version" : "8.3.0"
92
+ },
93
+ "inputSchema" : [
94
+ {
95
+ "hasShapeFlexibility" : "0",
96
+ "isOptional" : "0",
97
+ "dataType" : "Float16",
98
+ "formattedType" : "MultiArray (Float16 1 × 1 × 1501 × 80)",
99
+ "shortDescription" : "",
100
+ "shape" : "[1, 1, 1501, 80]",
101
+ "name" : "melspectrogram_features",
102
+ "type" : "MultiArray"
103
+ },
104
+ {
105
+ "hasShapeFlexibility" : "0",
106
+ "isOptional" : "0",
107
+ "dataType" : "Float16",
108
+ "formattedType" : "MultiArray (Float16 1 × 1 × 1 × 1)",
109
+ "shortDescription" : "",
110
+ "shape" : "[1, 1, 1, 1]",
111
+ "name" : "input_1",
112
+ "type" : "MultiArray"
113
+ }
114
+ ],
115
+ "generatedClassName" : "AudioEncoder_mixedBitPalettized_6_bit",
116
+ "method" : "predict"
117
+ }
118
+ ]
parakeet-tdt_ctc-110m/AudioEncoder.mlmodelc/model.mil ADDED
The diff for this file is too large to render. See raw diff
 
parakeet-tdt_ctc-110m/AudioEncoder.mlmodelc/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:af0734b4a5d7465ad9e8bb170f0c53c5e6b91ebb75a9bdf88d3f59ae4ad6aebd
3
+ size 100778304
parakeet-tdt_ctc-110m/MelSpectrogram.mlmodelc/analytics/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:22f2a8cba1de25c984050566b534a1d8caf22a82f9fe6c1c6f3149a0dd7e8ae3
3
+ size 243
parakeet-tdt_ctc-110m/MelSpectrogram.mlmodelc/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3a32ec67c76aa0aa2faef518413c311493e89aeb7fa11289fa4b8653ab8a160c
3
+ size 330
parakeet-tdt_ctc-110m/MelSpectrogram.mlmodelc/metadata.json ADDED
@@ -0,0 +1,76 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [
2
+ {
3
+ "metadataOutputVersion" : "3.0",
4
+ "storagePrecision" : "Float16",
5
+ "outputSchema" : [
6
+ {
7
+ "hasShapeFlexibility" : "0",
8
+ "isOptional" : "0",
9
+ "dataType" : "Float16",
10
+ "formattedType" : "MultiArray (Float16 1 × 1 × 1501 × 80)",
11
+ "shortDescription" : "",
12
+ "shape" : "[1, 1, 1501, 80]",
13
+ "name" : "melspectrogram_features",
14
+ "type" : "MultiArray"
15
+ }
16
+ ],
17
+ "modelParameters" : [
18
+
19
+ ],
20
+ "specificationVersion" : 8,
21
+ "mlProgramOperationTypeHistogram" : {
22
+ "Ios17.mul" : 2,
23
+ "Ios17.sqrt" : 1,
24
+ "Ios17.square" : 3,
25
+ "Ios17.transpose" : 1,
26
+ "Ios17.sub" : 2,
27
+ "Ios17.matmul" : 1,
28
+ "Ios17.conv" : 2,
29
+ "Ios17.log" : 1,
30
+ "Ios17.sliceByIndex" : 2,
31
+ "Ios17.add" : 3,
32
+ "Ios16.reduceMean" : 2,
33
+ "Ios17.realDiv" : 1,
34
+ "Ios17.expandDims" : 4,
35
+ "Ios17.squeeze" : 2,
36
+ "Ios17.reshape" : 2,
37
+ "Identity" : 1,
38
+ "Pad" : 2
39
+ },
40
+ "computePrecision" : "Mixed (Float16, Float32, Int32)",
41
+ "isUpdatable" : "0",
42
+ "stateSchema" : [
43
+
44
+ ],
45
+ "availability" : {
46
+ "macOS" : "14.0",
47
+ "tvOS" : "17.0",
48
+ "visionOS" : "1.0",
49
+ "watchOS" : "10.0",
50
+ "iOS" : "17.0",
51
+ "macCatalyst" : "17.0"
52
+ },
53
+ "modelType" : {
54
+ "name" : "MLModelType_mlProgram"
55
+ },
56
+ "userDefinedMetadata" : {
57
+ "com.github.apple.coremltools.source_dialect" : "TorchScript",
58
+ "com.github.apple.coremltools.source" : "torch==2.5.0",
59
+ "com.github.apple.coremltools.version" : "8.3.0"
60
+ },
61
+ "inputSchema" : [
62
+ {
63
+ "hasShapeFlexibility" : "0",
64
+ "isOptional" : "0",
65
+ "dataType" : "Float16",
66
+ "formattedType" : "MultiArray (Float16 240000)",
67
+ "shortDescription" : "",
68
+ "shape" : "[240000]",
69
+ "name" : "audio",
70
+ "type" : "MultiArray"
71
+ }
72
+ ],
73
+ "generatedClassName" : "MelSpectrogram",
74
+ "method" : "predict"
75
+ }
76
+ ]
parakeet-tdt_ctc-110m/MelSpectrogram.mlmodelc/model.mil ADDED
@@ -0,0 +1,82 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ program(1.0)
2
+ [buildInfo = dict<tensor<string, []>, tensor<string, []>>({{"coremlc-component-MIL", "3404.16.1"}, {"coremlc-version", "3404.23.1"}, {"coremltools-component-torch", "2.5.0"}, {"coremltools-source-dialect", "TorchScript"}, {"coremltools-version", "8.3.0"}})]
3
+ {
4
+ func main<ios17>(tensor<fp16, [240000]> audio) {
5
+ tensor<int32, [1]> var_8_begin_0 = const()[name = tensor<string, []>("op_8_begin_0"), val = tensor<int32, [1]>([1])];
6
+ tensor<int32, [1]> var_8_end_0 = const()[name = tensor<string, []>("op_8_end_0"), val = tensor<int32, [1]>([240000])];
7
+ tensor<bool, [1]> var_8_end_mask_0 = const()[name = tensor<string, []>("op_8_end_mask_0"), val = tensor<bool, [1]>([true])];
8
+ tensor<fp16, [239999]> var_8_cast_fp16 = slice_by_index(begin = var_8_begin_0, end = var_8_end_0, end_mask = var_8_end_mask_0, x = audio)[name = tensor<string, []>("op_8_cast_fp16")];
9
+ tensor<int32, [1]> var_13_begin_0 = const()[name = tensor<string, []>("op_13_begin_0"), val = tensor<int32, [1]>([0])];
10
+ tensor<int32, [1]> var_13_end_0 = const()[name = tensor<string, []>("op_13_end_0"), val = tensor<int32, [1]>([239999])];
11
+ tensor<bool, [1]> var_13_end_mask_0 = const()[name = tensor<string, []>("op_13_end_mask_0"), val = tensor<bool, [1]>([false])];
12
+ tensor<fp16, [239999]> var_13_cast_fp16 = slice_by_index(begin = var_13_begin_0, end = var_13_end_0, end_mask = var_13_end_mask_0, x = audio)[name = tensor<string, []>("op_13_cast_fp16")];
13
+ tensor<fp16, []> var_14_to_fp16 = const()[name = tensor<string, []>("op_14_to_fp16"), val = tensor<fp16, []>(0x1.f0cp-1)];
14
+ tensor<fp16, [239999]> var_15_cast_fp16 = mul(x = var_13_cast_fp16, y = var_14_to_fp16)[name = tensor<string, []>("op_15_cast_fp16")];
15
+ tensor<fp16, [239999]> input_1_cast_fp16 = sub(x = var_8_cast_fp16, y = var_15_cast_fp16)[name = tensor<string, []>("input_1_cast_fp16")];
16
+ tensor<int32, [2]> input_3_pad_0 = const()[name = tensor<string, []>("input_3_pad_0"), val = tensor<int32, [2]>([1, 0])];
17
+ tensor<string, []> input_3_mode_0 = const()[name = tensor<string, []>("input_3_mode_0"), val = tensor<string, []>("constant")];
18
+ tensor<fp16, []> const_0_to_fp16 = const()[name = tensor<string, []>("const_0_to_fp16"), val = tensor<fp16, []>(0x0p+0)];
19
+ tensor<fp16, [240000]> input_3_cast_fp16 = pad(constant_val = const_0_to_fp16, mode = input_3_mode_0, pad = input_3_pad_0, x = input_1_cast_fp16)[name = tensor<string, []>("input_3_cast_fp16")];
20
+ tensor<int32, [3]> var_30 = const()[name = tensor<string, []>("op_30"), val = tensor<int32, [3]>([1, 1, 240000])];
21
+ tensor<fp16, [1, 1, 240000]> input_5_cast_fp16 = reshape(shape = var_30, x = input_3_cast_fp16)[name = tensor<string, []>("input_5_cast_fp16")];
22
+ tensor<int32, [6]> input_7_pad_0 = const()[name = tensor<string, []>("input_7_pad_0"), val = tensor<int32, [6]>([0, 0, 0, 0, 256, 256])];
23
+ tensor<string, []> input_7_mode_0 = const()[name = tensor<string, []>("input_7_mode_0"), val = tensor<string, []>("reflect")];
24
+ tensor<fp16, []> const_2_to_fp16 = const()[name = tensor<string, []>("const_2_to_fp16"), val = tensor<fp16, []>(0x0p+0)];
25
+ tensor<fp16, [1, 1, 240512]> input_7_cast_fp16 = pad(constant_val = const_2_to_fp16, mode = input_7_mode_0, pad = input_7_pad_0, x = input_5_cast_fp16)[name = tensor<string, []>("input_7_cast_fp16")];
26
+ tensor<int32, [1]> var_42 = const()[name = tensor<string, []>("op_42"), val = tensor<int32, [1]>([240512])];
27
+ tensor<fp16, [240512]> input_cast_fp16 = reshape(shape = var_42, x = input_7_cast_fp16)[name = tensor<string, []>("input_cast_fp16")];
28
+ tensor<int32, [1]> expand_dims_0_axes_0 = const()[name = tensor<string, []>("expand_dims_0_axes_0"), val = tensor<int32, [1]>([0])];
29
+ tensor<fp16, [1, 240512]> expand_dims_0_cast_fp16 = expand_dims(axes = expand_dims_0_axes_0, x = input_cast_fp16)[name = tensor<string, []>("expand_dims_0_cast_fp16")];
30
+ tensor<int32, [1]> expand_dims_3 = const()[name = tensor<string, []>("expand_dims_3"), val = tensor<int32, [1]>([160])];
31
+ tensor<int32, [1]> expand_dims_4_axes_0 = const()[name = tensor<string, []>("expand_dims_4_axes_0"), val = tensor<int32, [1]>([1])];
32
+ tensor<fp16, [1, 1, 240512]> expand_dims_4_cast_fp16 = expand_dims(axes = expand_dims_4_axes_0, x = expand_dims_0_cast_fp16)[name = tensor<string, []>("expand_dims_4_cast_fp16")];
33
+ tensor<string, []> conv_0_pad_type_0 = const()[name = tensor<string, []>("conv_0_pad_type_0"), val = tensor<string, []>("valid")];
34
+ tensor<int32, [2]> conv_0_pad_0 = const()[name = tensor<string, []>("conv_0_pad_0"), val = tensor<int32, [2]>([0, 0])];
35
+ tensor<int32, [1]> conv_0_dilations_0 = const()[name = tensor<string, []>("conv_0_dilations_0"), val = tensor<int32, [1]>([1])];
36
+ tensor<int32, []> conv_0_groups_0 = const()[name = tensor<string, []>("conv_0_groups_0"), val = tensor<int32, []>(1)];
37
+ tensor<fp16, [257, 1, 512]> expand_dims_1_to_fp16 = const()[name = tensor<string, []>("expand_dims_1_to_fp16"), val = tensor<fp16, [257, 1, 512]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(64)))];
38
+ tensor<fp16, [1, 257, 1501]> conv_0_cast_fp16 = 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_to_fp16, x = expand_dims_4_cast_fp16)[name = tensor<string, []>("conv_0_cast_fp16")];
39
+ tensor<string, []> conv_1_pad_type_0 = const()[name = tensor<string, []>("conv_1_pad_type_0"), val = tensor<string, []>("valid")];
40
+ tensor<int32, [2]> conv_1_pad_0 = const()[name = tensor<string, []>("conv_1_pad_0"), val = tensor<int32, [2]>([0, 0])];
41
+ tensor<int32, [1]> conv_1_dilations_0 = const()[name = tensor<string, []>("conv_1_dilations_0"), val = tensor<int32, [1]>([1])];
42
+ tensor<int32, []> conv_1_groups_0 = const()[name = tensor<string, []>("conv_1_groups_0"), val = tensor<int32, []>(1)];
43
+ tensor<fp16, [257, 1, 512]> expand_dims_2_to_fp16 = const()[name = tensor<string, []>("expand_dims_2_to_fp16"), val = tensor<fp16, [257, 1, 512]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(263296)))];
44
+ tensor<fp16, [1, 257, 1501]> conv_1_cast_fp16 = 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_to_fp16, x = expand_dims_4_cast_fp16)[name = tensor<string, []>("conv_1_cast_fp16")];
45
+ tensor<int32, [1]> squeeze_0_axes_0 = const()[name = tensor<string, []>("squeeze_0_axes_0"), val = tensor<int32, [1]>([0])];
46
+ tensor<fp16, [257, 1501]> squeeze_0_cast_fp16 = squeeze(axes = squeeze_0_axes_0, x = conv_0_cast_fp16)[name = tensor<string, []>("squeeze_0_cast_fp16")];
47
+ tensor<int32, [1]> squeeze_1_axes_0 = const()[name = tensor<string, []>("squeeze_1_axes_0"), val = tensor<int32, [1]>([0])];
48
+ tensor<fp16, [257, 1501]> squeeze_1_cast_fp16 = squeeze(axes = squeeze_1_axes_0, x = conv_1_cast_fp16)[name = tensor<string, []>("squeeze_1_cast_fp16")];
49
+ tensor<fp16, [257, 1501]> square_1_cast_fp16 = square(x = squeeze_0_cast_fp16)[name = tensor<string, []>("square_1_cast_fp16")];
50
+ tensor<fp16, [257, 1501]> square_2_cast_fp16 = square(x = squeeze_1_cast_fp16)[name = tensor<string, []>("square_2_cast_fp16")];
51
+ tensor<fp16, [257, 1501]> add_1_cast_fp16 = add(x = square_1_cast_fp16, y = square_2_cast_fp16)[name = tensor<string, []>("add_1_cast_fp16")];
52
+ tensor<fp16, [257, 1501]> magnitudes_cast_fp16 = identity(x = add_1_cast_fp16)[name = tensor<string, []>("magnitudes_cast_fp16")];
53
+ tensor<bool, []> mel_spec_1_transpose_x_0 = const()[name = tensor<string, []>("mel_spec_1_transpose_x_0"), val = tensor<bool, []>(false)];
54
+ tensor<bool, []> mel_spec_1_transpose_y_0 = const()[name = tensor<string, []>("mel_spec_1_transpose_y_0"), val = tensor<bool, []>(false)];
55
+ tensor<fp16, [80, 257]> mel_filters_to_fp16 = const()[name = tensor<string, []>("mel_filters_to_fp16"), val = tensor<fp16, [80, 257]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(526528)))];
56
+ tensor<fp16, [80, 1501]> mel_spec_1_cast_fp16 = matmul(transpose_x = mel_spec_1_transpose_x_0, transpose_y = mel_spec_1_transpose_y_0, x = mel_filters_to_fp16, y = magnitudes_cast_fp16)[name = tensor<string, []>("mel_spec_1_cast_fp16")];
57
+ tensor<fp16, []> var_56_to_fp16 = const()[name = tensor<string, []>("op_56_to_fp16"), val = tensor<fp16, []>(0x1p-24)];
58
+ tensor<fp16, [80, 1501]> mel_spec_3_cast_fp16 = add(x = mel_spec_1_cast_fp16, y = var_56_to_fp16)[name = tensor<string, []>("mel_spec_3_cast_fp16")];
59
+ tensor<fp32, []> mel_spec_5_epsilon_0 = const()[name = tensor<string, []>("mel_spec_5_epsilon_0"), val = tensor<fp32, []>(0x1p-149)];
60
+ tensor<fp16, [80, 1501]> mel_spec_5_cast_fp16 = log(epsilon = mel_spec_5_epsilon_0, x = mel_spec_3_cast_fp16)[name = tensor<string, []>("mel_spec_5_cast_fp16")];
61
+ tensor<int32, [1]> per_feature_mean_axes_0 = const()[name = tensor<string, []>("per_feature_mean_axes_0"), val = tensor<int32, [1]>([-1])];
62
+ tensor<bool, []> per_feature_mean_keep_dims_0 = const()[name = tensor<string, []>("per_feature_mean_keep_dims_0"), val = tensor<bool, []>(true)];
63
+ tensor<fp16, [80, 1]> per_feature_mean_cast_fp16 = reduce_mean(axes = per_feature_mean_axes_0, keep_dims = per_feature_mean_keep_dims_0, x = mel_spec_5_cast_fp16)[name = tensor<string, []>("per_feature_mean_cast_fp16")];
64
+ tensor<fp16, [80, 1501]> sub_0_cast_fp16 = sub(x = mel_spec_5_cast_fp16, y = per_feature_mean_cast_fp16)[name = tensor<string, []>("sub_0_cast_fp16")];
65
+ tensor<fp16, [80, 1501]> square_0_cast_fp16 = square(x = sub_0_cast_fp16)[name = tensor<string, []>("square_0_cast_fp16")];
66
+ tensor<int32, [1]> reduce_mean_1_axes_0 = const()[name = tensor<string, []>("reduce_mean_1_axes_0"), val = tensor<int32, [1]>([-1])];
67
+ tensor<bool, []> reduce_mean_1_keep_dims_0 = const()[name = tensor<string, []>("reduce_mean_1_keep_dims_0"), val = tensor<bool, []>(true)];
68
+ tensor<fp16, [80, 1]> reduce_mean_1_cast_fp16 = reduce_mean(axes = reduce_mean_1_axes_0, keep_dims = reduce_mean_1_keep_dims_0, x = square_0_cast_fp16)[name = tensor<string, []>("reduce_mean_1_cast_fp16")];
69
+ tensor<fp16, []> real_div_0_to_fp16 = const()[name = tensor<string, []>("real_div_0_to_fp16"), val = tensor<fp16, []>(0x1.004p+0)];
70
+ tensor<fp16, [80, 1]> mul_0_cast_fp16 = mul(x = reduce_mean_1_cast_fp16, y = real_div_0_to_fp16)[name = tensor<string, []>("mul_0_cast_fp16")];
71
+ tensor<fp16, [80, 1]> sqrt_0_cast_fp16 = sqrt(x = mul_0_cast_fp16)[name = tensor<string, []>("sqrt_0_cast_fp16")];
72
+ tensor<fp16, []> var_70_to_fp16 = const()[name = tensor<string, []>("op_70_to_fp16"), val = tensor<fp16, []>(0x1.5p-17)];
73
+ tensor<fp16, [80, 1]> per_feature_std_cast_fp16 = add(x = sqrt_0_cast_fp16, y = var_70_to_fp16)[name = tensor<string, []>("per_feature_std_cast_fp16")];
74
+ tensor<fp16, [80, 1501]> mel_spec_cast_fp16 = real_div(x = sub_0_cast_fp16, y = per_feature_std_cast_fp16)[name = tensor<string, []>("mel_spec_cast_fp16")];
75
+ tensor<int32, [2]> var_75_perm_0 = const()[name = tensor<string, []>("op_75_perm_0"), val = tensor<int32, [2]>([1, 0])];
76
+ tensor<int32, [1]> var_77_axes_0 = const()[name = tensor<string, []>("op_77_axes_0"), val = tensor<int32, [1]>([0])];
77
+ tensor<fp16, [1501, 80]> var_75_cast_fp16 = transpose(perm = var_75_perm_0, x = mel_spec_cast_fp16)[name = tensor<string, []>("transpose_0")];
78
+ tensor<fp16, [1, 1501, 80]> var_77_cast_fp16 = expand_dims(axes = var_77_axes_0, x = var_75_cast_fp16)[name = tensor<string, []>("op_77_cast_fp16")];
79
+ tensor<int32, [1]> var_79_axes_0 = const()[name = tensor<string, []>("op_79_axes_0"), val = tensor<int32, [1]>([1])];
80
+ tensor<fp16, [1, 1, 1501, 80]> melspectrogram_features = expand_dims(axes = var_79_axes_0, x = var_77_cast_fp16)[name = tensor<string, []>("op_79_cast_fp16")];
81
+ } -> (melspectrogram_features);
82
+ }
parakeet-tdt_ctc-110m/MelSpectrogram.mlmodelc/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0a89c055bfde9022029d3cc59a23e949385e063974460d8eaec3a7614c3eaaa8
3
+ size 567712
parakeet-tdt_ctc-110m/preprocessor_config.json ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "feature_extractor_type": "ParakeetFeatureExtractor",
3
+ "feature_size": 80,
4
+ "hop_length": 160,
5
+ "n_fft": 512,
6
+ "padding_side": "right",
7
+ "padding_value": 0.0,
8
+ "preemphasis": 0.97,
9
+ "processor_class": "ParakeetProcessor",
10
+ "return_attention_mask": true,
11
+ "sampling_rate": 16000,
12
+ "win_length": 400
13
+ }
parakeet-tdt_ctc-110m/special_tokens_map.json ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "pad_token": {
3
+ "content": "<pad>",
4
+ "lstrip": false,
5
+ "normalized": false,
6
+ "rstrip": false,
7
+ "single_word": false
8
+ },
9
+ "unk_token": {
10
+ "content": "<unk>",
11
+ "lstrip": false,
12
+ "normalized": false,
13
+ "rstrip": false,
14
+ "single_word": false
15
+ }
16
+ }
parakeet-tdt_ctc-110m/tokenizer.json ADDED
The diff for this file is too large to render. See raw diff
 
parakeet-tdt_ctc-110m/tokenizer_config.json ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "added_tokens_decoder": {
3
+ "0": {
4
+ "content": "<unk>",
5
+ "lstrip": false,
6
+ "normalized": false,
7
+ "rstrip": false,
8
+ "single_word": false,
9
+ "special": true
10
+ },
11
+ "1024": {
12
+ "content": "<pad>",
13
+ "lstrip": false,
14
+ "normalized": false,
15
+ "rstrip": false,
16
+ "single_word": false,
17
+ "special": true
18
+ }
19
+ },
20
+ "clean_up_tokenization_spaces": false,
21
+ "extra_special_tokens": {},
22
+ "model_max_length": 1000000000000000019884624838656,
23
+ "pad_token": "<pad>",
24
+ "processor_class": "ParakeetProcessor",
25
+ "tokenizer_class": "ParakeetTokenizerFast",
26
+ "unk_token": "<unk>"
27
+ }
parakeet-tdt_ctc-110m/vocab.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"0": "<unk>", "1": " t", "2": " th", "3": " a", "4": "in", "5": "re", "6": " the", "7": " w", "8": " s", "9": " o", "10": "er", "11": "ou", "12": "at", "13": "nd", "14": "it", "15": " h", "16": " c", "17": " b", "18": "is", "19": "en", "20": "on", "21": "ing", "22": " f", "23": " to", "24": " m", "25": "es", "26": " p", "27": "or", "28": "an", "29": " d", "30": "ll", "31": " I", "32": "ed", "33": " and", "34": " l", "35": " of", "36": " in", "37": " y", "38": "ar", "39": " g", "40": " you", "41": "as", "42": "om", "43": " n", "44": "ve", "45": " that", "46": "le", "47": "ic", "48": "us", "49": "ow", "50": "et", "51": "al", "52": " e", "53": "ut", "54": " it", "55": "ot", "56": " be", "57": " T", "58": "ion", "59": " is", "60": " wh", "61": " re", "62": " on", "63": " we", "64": "ent", "65": " A", "66": "ay", "67": " ha", "68": " Th", "69": "id", "70": " S", "71": "ac", "72": "gh", "73": "ver", "74": "ke", "75": " for", "76": "im", "77": "ly", "78": "ur", "79": "ld", "80": " he", "81": " st", "82": "all", "83": "ro", "84": "st", "85": "se", "86": "ct", "87": "ith", "88": "ir", "89": "am", "90": " this", "91": "if", "92": " W", "93": "oo", "94": "ri", "95": " was", "96": "ght", "97": " u", "98": " with", "99": "ad", "100": "ch", "101": " se", "102": " k", "103": " an", "104": " The", "105": " li", "106": " do", "107": " B", "108": " have", "109": " as", "110": "th", "111": " are", "112": " sh", "113": "ust", "114": "ce", "115": "ally", "116": "ill", "117": " H", "118": " j", "119": "ter", "120": " go", "121": " And", "122": "ation", "123": " C", "124": " so", "125": "ome", "126": " not", "127": "op", "128": "il", "129": "ore", "130": " ne", "131": " can", "132": " me", "133": " at", "134": "ould", "135": "ant", "136": " M", "137": " like", "138": "ere", "139": " they", "140": "ra", "141": "ers", "142": " ab", "143": " de", "144": " kn", "145": "ge", "146": " Y", "147": " ch", "148": "ul", "149": "pp", "150": " or", "151": " al", "152": " con", "153": " com", "154": "ess", "155": " su", "156": "out", "157": " your", "158": " So", "159": "ate", "160": " one", "161": " all", "162": " ex", "163": "est", "164": " fr", "165": " just", "166": " pro", "167": " know", "168": " O", "169": "ain", "170": " but", "171": "ol", "172": "ive", "173": " v", "174": "use", "175": "very", "176": "art", "177": "qu", "178": " my", "179": "el", "180": " N", "181": "nt", "182": " It", "183": " what", "184": "ab", "185": " P", "186": " wor", "187": " out", "188": " there", "189": " up", "190": "um", "191": " from", "192": "pe", "193": " tw", "194": " r", "195": "and", "196": "ight", "197": "ort", "198": "un", "199": " L", "200": "ist", "201": " about", "202": "ide", "203": "ig", "204": "ake", "205": " D", "206": "em", "207": "os", "208": "king", "209": "rou", "210": "ind", "211": "our", "212": "res", "213": " We", "214": " get", "215": " E", "216": " G", "217": "ack", "218": " le", "219": "ity", "220": "od", "221": " F", "222": "ard", "223": " pl", "224": " our", "225": " int", "226": "ment", "227": " will", "228": "ies", "229": " by", "230": "ink", "231": "ca", "232": " if", "233": "red", "234": "her", "235": "ie", "236": " us", "237": " some", "238": " don", "239": "ven", "240": "ood", "241": "ast", "242": " R", "243": " his", "244": " tim", "245": " tr", "246": " more", "247": "ich", "248": "ous", "249": "ame", "250": " going", "251": " had", "252": " them", "253": "ook", "254": " pe", "255": " Wh", "256": " You", "257": " But", "258": "ine", "259": " here", "260": " would", "261": "cause", "262": "right", "263": "so", "264": "ost", "265": "ure", "266": " has", "267": "ect", "268": " think", "269": " fe", "270": "ong", "271": " see", "272": " when", "273": " who", "274": " were", "275": " really", "276": " their", "277": " want", "278": "one", "279": "ople", "280": " then", "281": " time", "282": " sa", "283": "ap", "284": " te", "285": " He", "286": " ye", "287": "ck", "288": " her", "289": " thing", "290": " right", "291": " which", "292": "itt", "293": "ice", "294": "act", "295": " people", "296": "ty", "297": " two", "298": " J", "299": " im", "300": "ther", "301": "ci", "302": "ose", "303": " cl", "304": " qu", "305": " man", "306": " also", "307": "ree", "308": " en", "309": "ud", "310": " how", "311": "reat", "312": "ak", "313": "hing", "314": "ag", "315": " any", "316": "ff", "317": "ace", "318": "per", "319": " because", "320": " very", "321": "own", "322": " ad", "323": " act", "324": " been", "325": " now", "326": " ag", "327": " into", "328": " comp", "329": "ars", "330": "ions", "331": "are", "332": "ite", "333": "iv", "334": " these", "335": "ays", "336": "ep", "337": " This", "338": " she", "339": "ans", "340": "ah", "341": "een", "342": " over", "343": "ry", "344": " lo", "345": "age", "346": " pr", "347": " sp", "348": "ue", "349": " co", "350": "ick", "351": "ber", "352": " did", "353": "ip", "354": "ach", "355": " back", "356": " no", "357": " cont", "358": " other", "359": " every", "360": "pt", "361": " need", "362": " him", "363": " U", "364": " In", "365": " work", "366": "irst", "367": " part", "368": " look", "369": "ittle", "370": "ble", "371": "iz", "372": " un", "373": " make", "374": "omet", "375": "nder", "376": "ish", "377": "na", "378": " little", "379": " off", "380": " than", "381": " got", "382": "ually", "383": " per", "384": " good", "385": " way", "386": " could", "387": " ac", "388": " imp", "389": "able", "390": " where", "391": "iff", "392": " That", "393": " res", "394": "ount", "395": "pl", "396": "ance", "397": " first", "398": " ro", "399": " pre", "400": "ass", "401": " say", "402": "int", "403": "ated", "404": "ire", "405": "uch", "406": "ase", "407": " somet", "408": "ound", "409": " down", "410": " diff", "411": "sel", "412": " gu", "413": " am", "414": "ress", "415": " lot", "416": "ence", "417": " dis", "418": "orm", "419": "ix", "420": " po", "421": "ving", "422": "enty", "423": " K", "424": " spe", "425": "und", "426": "he", "427": " much", "428": " ar", "429": "round", "430": " app", "431": "co", "432": "ark", "433": " new", "434": "ater", "435": "ult", "436": "end", "437": " even", "438": " start", "439": "ations", "440": "rough", "441": "ile", "442": "fter", "443": " well", "444": "be", "445": " They", "446": " three", "447": "ign", "448": "ild", "449": " said", "450": "ough", "451": "ang", "452": " too", "453": "ade", "454": " bl", "455": "ens", "456": " inc", "457": "ia", "458": " those", "459": " mo", "460": " take", "461": " through", "462": " fl", "463": " kind", "464": " things", "465": " bet", "466": " only", "467": " St", "468": " let", "469": "cess", "470": " Ch", "471": "ary", "472": "vel", "473": " If", "474": "xt", "475": "other", "476": "av", "477": "ical", "478": "ord", "479": " again", "480": " something", "481": "onna", "482": "fore", "483": " may", "484": "ting", "485": " bu", "486": " differe", "487": "urn", "488": " gonna", "489": " does", "490": "uct", "491": "og", "492": " twenty", "493": " gr", "494": " Ye", "495": "wn", "496": " should", "497": " comm", "498": "ition", "499": " under", "500": " hel", "501": "ory", "502": " fo", "503": " use", "504": "igh", "505": "ife", "506": " actually", "507": " tal", "508": " call", "509": "ents", "510": "ious", "511": "ull", "512": " There", "513": " Yeah", "514": " most", "515": " ke", "516": "ors", "517": "ved", "518": "ys", "519": " sc", "520": " happ", "521": "ope", "522": " help", "523": "atch", "524": " What", "525": " rem", "526": "ple", "527": " Now", "528": " br", "529": "ool", "530": "oth", "531": " four", "532": "self", "533": " str", "534": "ne", "535": "thing", "536": " put", "537": "ial", "538": " great", "539": "ail", "540": "ub", "541": "ning", "542": " sm", "543": " feel", "544": " five", "545": "ody", "546": "undred", "547": "iss", "548": "ank", "549": "get", "550": "aking", "551": " many", "552": " hundred", "553": " years", "554": " being", "555": " come", "556": " mean", "557": "ily", "558": " different", "559": " after", "560": " ser", "561": " show", "562": "form", "563": "ful", "564": "oy", "565": " six", "566": " vide", "567": " V", "568": " its", "569": " point", "570": " day", "571": " des", "572": "ons", "573": " bit", "574": " bel", "575": " before", "576": " aw", "577": " end", "578": " Oh", "579": " still", "580": "ath", "581": " long", "582": " '", "583": "ise", "584": "ob", "585": "day", "586": " add", "587": "ft", "588": "ves", "589": "ces", "590": "ady", "591": " cr", "592": " around", "593": " try", "594": "les", "595": "vers", "596": "kay", "597": "ian", "598": "ates", "599": " find", "600": "ward", "601": " As", "602": " eight", "603": "lic", "604": " same", "605": " pos", "606": " em", "607": " made", "608": " supp", "609": " life", "610": " Be", "611": "pect", "612": " dec", "613": " play", "614": "ange", "615": " att", "616": " pers", "617": "ways", "618": " high", "619": " hand", "620": " next", "621": " cons", "622": " own", "623": " inv", "624": "ower", "625": " ind", "626": "ert", "627": "ng", "628": "ave", "629": " year", "630": " big", "631": "ating", "632": " world", "633": " rel", "634": " sure", "635": " tra", "636": "ew", "637": "ered", "638": " fin", "639": " Well", "640": " sl", "641": " doing", "642": "bs", "643": " set", "644": " rec", "645": "ual", "646": "cial", "647": " ph", "648": "erm", "649": " love", "650": "ph", "651": " real", "652": " last", "653": "ict", "654": " bo", "655": " ra", "656": "ible", "657": " wr", "658": "mer", "659": " count", "660": "ities", "661": " always", "662": "inet", "663": "ments", "664": "uc", "665": " might", "666": " inter", "667": " video", "668": "gin", "669": " tell", "670": " never", "671": "vent", "672": " import", "673": "ied", "674": " sy", "675": " How", "676": "ically", "677": "ought", "678": " thir", "679": " rep", "680": "ks", "681": "ib", "682": " fam", "683": "ject", "684": " bas", "685": " She", "686": " give", "687": "akes", "688": " ninet", "689": " reg", "690": " min", "691": " op", "692": " def", "693": " didn", "694": "te", "695": " cour", "696": " why", "697": " ent", "698": " place", "699": " ins", "700": " car", "701": "ather", "702": " person", "703": "ular", "704": " inst", "705": " prod", "706": "lect", "707": " Al", "708": " today", "709": " bec", "710": " sur", "711": " All", "712": " another", "713": " bus", "714": " keep", "715": "ell", "716": "ese", "717": "riend", "718": " quest", "719": " talk", "720": "als", "721": "ings", "722": " mon", "723": "cond", "724": "old", "725": " acc", "726": " la", "727": " num", "728": "ident", "729": " che", "730": "iness", "731": " turn", "732": " ear", "733": " No", "734": "ousand", "735": " better", "736": "ific", "737": " loo", "738": " gl", "739": "oc", "740": " important", "741": "ited", "742": " An", "743": " thousand", "744": "ility", "745": "llow", "746": " used", "747": " gen", "748": " sim", "749": "li", "750": " happen", "751": " Un", "752": " Let", "753": "air", "754": "ock", "755": "ably", "756": "gg", "757": " watch", "758": " For", "759": " sw", "760": "ren", "761": "ute", "762": "ever", "763": " pol", "764": " sch", "765": " When", "766": " such", "767": " fif", "768": " home", "769": " cle", "770": " contin", "771": "ouse", "772": " friend", "773": "uring", "774": " Okay", "775": "gr", "776": " able", "777": " stud", "778": " eff", "779": "hip", "780": "body", "781": " top", "782": "ness", "783": " exper", "784": " pret", "785": " both", "786": " done", "787": "cri", "788": " mark", "789": " while", "790": " old", "791": "ros", "792": "ont", "793": " second", "794": "ative", "795": " thought", "796": " best", "797": " found", "798": "iew", "799": " belie", "800": " each", "801": "erest", "802": " tri", "803": " eas", "804": " ca", "805": " fact", "806": " care", "807": " fun", "808": "atter", "809": "ures", "810": " head", "811": " lear", "812": " water", "813": " hard", "814": " few", "815": " side", "816": "ween", "817": " exp", "818": " away", "819": "its", "820": " ext", "821": "lud", "822": " run", "823": " trans", "824": "ince", "825": " sk", "826": " open", "827": "cus", "828": " between", "829": " called", "830": " wee", "831": " pretty", "832": "ason", "833": " far", "834": "ember", "835": "omm", "836": " interest", "837": "any", "838": "ner", "839": "uff", "840": " pres", "841": " cur", "842": " child", "843": "ee", "844": " toget", "845": " together", "846": "olog", "847": " God", "848": "ond", "849": " char", "850": " looking", "851": "stem", "852": "az", "853": "cent", "854": " ob", "855": " ass", "856": "land", "857": " doesn", "858": " business", "859": " course", "860": " ten", "861": "ps", "862": "arch", "863": "ced", "864": "ms", "865": "ize", "866": "nce", "867": " ref", "868": " name", "869": "ross", "870": " grow", "871": "oney", "872": " went", "873": "ics", "874": "teen", "875": " cou", "876": " prob", "877": " ret", "878": " guys", "879": " came", "880": "ash", "881": "led", "882": " Eur", "883": "ues", "884": " ide", "885": "gan", "886": " everything", "887": " getting", "888": " ask", "889": " cor", "890": " build", "891": " sign", "892": " small", "893": "uck", "894": " el", "895": " col", "896": " Is", "897": "ational", "898": "stand", "899": "cy", "900": " conf", "901": "der", "902": " bre", "903": " cap", "904": " mod", "905": "ets", "906": "ike", "907": " number", "908": " comple", "909": "ertain", "910": " ever", "911": " coll", "912": " hum", "913": " Europe", "914": " cre", "915": " met", "916": " exam", "917": " move", "918": " pass", "919": " left", "920": " system", "921": " includ", "922": " Thank", "923": "cept", "924": " wom", "925": " product", "926": "ten", "927": " rest", "928": " probably", "929": " dri", "930": " Do", "931": " gener", "932": " anything", "933": " lar", "934": " My", "935": " school", "936": " lead", "937": " sub", "938": " ty", "939": " plan", "940": " seem", "941": " whole", "942": "irect", "943": " light", "944": " must", "945": " mom", "946": " opp", "947": " support", "948": " family", "949": "ices", "950": "amp", "951": " proble", "952": " dr", "953": "ready", "954": " using", "955": "ense", "956": " prov", "957": "ush", "958": "ax", "959": " power", "960": " Re", "961": "alth", "962": " ev", "963": " stand", "964": " war", "965": "ts", "966": " ", "967": "e", "968": "t", "969": "o", "970": "a", "971": "n", "972": "i", "973": "s", "974": "r", "975": "h", "976": "l", "977": "d", "978": "u", "979": "c", "980": "m", "981": "y", "982": "g", "983": "w", "984": "f", "985": "p", "986": ".", "987": "b", "988": ",", "989": "v", "990": "k", "991": "'", "992": "I", "993": "T", "994": "A", "995": "S", "996": "x", "997": "W", "998": "j", "999": "B", "1000": "C", "1001": "H", "1002": "?", "1003": "M", "1004": "O", "1005": "Y", "1006": "N", "1007": "P", "1008": "E", "1009": "q", "1010": "L", "1011": "D", "1012": "z", "1013": "G", "1014": "F", "1015": "R", "1016": "!", "1017": "J", "1018": "U", "1019": "K", "1020": "V", "1021": "Q", "1022": "Z", "1023": "X"}