dqnguyen commited on
Commit
352f381
1 Parent(s): fff84e6

Upload 17 files

Browse files
phowhisper-small/AudioEncoder.mlmodelc/analytics/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e963bda41b0412dfcc7bb145df46a9e66a590c7c09007d1bb2f7bb74d75186b2
3
+ size 243
phowhisper-small/AudioEncoder.mlmodelc/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0a80a5949cc4a2535618445cde7805b19ec33e00dd7b4cfdab752db8e1f80806
3
+ size 347
phowhisper-small/AudioEncoder.mlmodelc/metadata.json ADDED
@@ -0,0 +1,69 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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 × 768 × 1 × 1500)",
11
+ "shortDescription" : "",
12
+ "shape" : "[1, 768, 1, 1500]",
13
+ "name" : "encoder_output_embeds",
14
+ "type" : "MultiArray"
15
+ }
16
+ ],
17
+ "modelParameters" : [
18
+
19
+ ],
20
+ "specificationVersion" : 7,
21
+ "mlProgramOperationTypeHistogram" : {
22
+ "Concat" : 156,
23
+ "Ios16.rsqrt" : 25,
24
+ "Ios16.mul" : 626,
25
+ "SliceByIndex" : 1008,
26
+ "Ios16.sub" : 25,
27
+ "Transpose" : 12,
28
+ "Ios16.einsum" : 1152,
29
+ "Ios16.conv" : 74,
30
+ "Ios16.add" : 50,
31
+ "Ios16.reduceMean" : 50,
32
+ "Ios16.softmax" : 576,
33
+ "Ios16.gelu" : 14,
34
+ "Ios16.batchNorm" : 25
35
+ },
36
+ "computePrecision" : "Mixed (Float16, Int32)",
37
+ "isUpdatable" : "0",
38
+ "availability" : {
39
+ "macOS" : "13.0",
40
+ "tvOS" : "16.0",
41
+ "visionOS" : "1.0",
42
+ "watchOS" : "9.0",
43
+ "iOS" : "16.0",
44
+ "macCatalyst" : "16.0"
45
+ },
46
+ "modelType" : {
47
+ "name" : "MLModelType_mlProgram"
48
+ },
49
+ "userDefinedMetadata" : {
50
+ "com.github.apple.coremltools.source_dialect" : "TorchScript",
51
+ "com.github.apple.coremltools.source" : "torch==2.1.0",
52
+ "com.github.apple.coremltools.version" : "7.1"
53
+ },
54
+ "inputSchema" : [
55
+ {
56
+ "hasShapeFlexibility" : "0",
57
+ "isOptional" : "0",
58
+ "dataType" : "Float16",
59
+ "formattedType" : "MultiArray (Float16 1 × 80 × 1 × 3000)",
60
+ "shortDescription" : "",
61
+ "shape" : "[1, 80, 1, 3000]",
62
+ "name" : "melspectrogram_features",
63
+ "type" : "MultiArray"
64
+ }
65
+ ],
66
+ "generatedClassName" : "AudioEncoder",
67
+ "method" : "predict"
68
+ }
69
+ ]
phowhisper-small/AudioEncoder.mlmodelc/model.mil ADDED
The diff for this file is too large to render. See raw diff
 
phowhisper-small/AudioEncoder.mlmodelc/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:1566cbe2377b05cc0149af9f4278b5fe44d76936a41ea7b1c2cd9c81470e1208
3
+ size 176323456
phowhisper-small/MelSpectrogram.mlmodelc/analytics/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:be479d649bc886936cae01ec030894c784889ce2581ca3b3e030cf3e8b089e36
3
+ size 243
phowhisper-small/MelSpectrogram.mlmodelc/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:bf6e424d2e416f0a1db4157ecb86a320d83801408bbbc7679867af3fca8de1cf
3
+ size 328
phowhisper-small/MelSpectrogram.mlmodelc/metadata.json ADDED
@@ -0,0 +1,71 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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 × 80 × 1 × 3000)",
11
+ "shortDescription" : "",
12
+ "shape" : "[1, 80, 1, 3000]",
13
+ "name" : "melspectrogram_features",
14
+ "type" : "MultiArray"
15
+ }
16
+ ],
17
+ "modelParameters" : [
18
+
19
+ ],
20
+ "specificationVersion" : 7,
21
+ "mlProgramOperationTypeHistogram" : {
22
+ "Pad" : 1,
23
+ "Ios16.mul" : 2,
24
+ "SliceByIndex" : 1,
25
+ "Ios16.sub" : 1,
26
+ "Ios16.log" : 1,
27
+ "Ios16.conv" : 2,
28
+ "Ios16.add" : 3,
29
+ "Ios16.square" : 2,
30
+ "Ios16.matmul" : 1,
31
+ "Squeeze" : 2,
32
+ "Ios16.maximum" : 1,
33
+ "ExpandDims" : 4,
34
+ "Ios16.reduceMax" : 1,
35
+ "Identity" : 1,
36
+ "Ios16.reshape" : 2
37
+ },
38
+ "computePrecision" : "Mixed (Float16, Int32)",
39
+ "isUpdatable" : "0",
40
+ "availability" : {
41
+ "macOS" : "13.0",
42
+ "tvOS" : "16.0",
43
+ "visionOS" : "1.0",
44
+ "watchOS" : "9.0",
45
+ "iOS" : "16.0",
46
+ "macCatalyst" : "16.0"
47
+ },
48
+ "modelType" : {
49
+ "name" : "MLModelType_mlProgram"
50
+ },
51
+ "userDefinedMetadata" : {
52
+ "com.github.apple.coremltools.source_dialect" : "TorchScript",
53
+ "com.github.apple.coremltools.source" : "torch==2.1.0",
54
+ "com.github.apple.coremltools.version" : "7.1"
55
+ },
56
+ "inputSchema" : [
57
+ {
58
+ "hasShapeFlexibility" : "0",
59
+ "isOptional" : "0",
60
+ "dataType" : "Float16",
61
+ "formattedType" : "MultiArray (Float16 480000)",
62
+ "shortDescription" : "",
63
+ "shape" : "[480000]",
64
+ "name" : "audio",
65
+ "type" : "MultiArray"
66
+ }
67
+ ],
68
+ "generatedClassName" : "MelSpectrogram",
69
+ "method" : "predict"
70
+ }
71
+ ]
phowhisper-small/MelSpectrogram.mlmodelc/model.mil ADDED
@@ -0,0 +1,66 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ program(1.0)
2
+ [buildInfo = dict<tensor<string, []>, tensor<string, []>>({{"coremlc-component-MIL", "3304.5.2"}, {"coremlc-version", "3304.6.2"}, {"coremltools-component-torch", "2.1.0"}, {"coremltools-source-dialect", "TorchScript"}, {"coremltools-version", "7.1"}})]
3
+ {
4
+ func main<ios16>(tensor<fp16, [480000]> audio) {
5
+ tensor<int32, [3]> var_10 = const()[name = tensor<string, []>("op_10"), val = tensor<int32, [3]>([1, 1, 480000])];
6
+ tensor<fp16, [1, 1, 480000]> var_11_cast_fp16 = reshape(shape = var_10, x = audio)[name = tensor<string, []>("op_11_cast_fp16")];
7
+ tensor<int32, [6]> input_1_pad_0 = const()[name = tensor<string, []>("input_1_pad_0"), val = tensor<int32, [6]>([0, 0, 0, 0, 200, 200])];
8
+ tensor<string, []> input_1_mode_0 = const()[name = tensor<string, []>("input_1_mode_0"), val = tensor<string, []>("reflect")];
9
+ tensor<fp16, []> input_1_constant_val_0_to_fp16 = const()[name = tensor<string, []>("input_1_constant_val_0_to_fp16"), val = tensor<fp16, []>(0x0p+0)];
10
+ tensor<fp16, [1, 1, 480400]> input_1_cast_fp16 = pad(constant_val = input_1_constant_val_0_to_fp16, mode = input_1_mode_0, pad = input_1_pad_0, x = var_11_cast_fp16)[name = tensor<string, []>("input_1_cast_fp16")];
11
+ tensor<int32, [1]> var_22 = const()[name = tensor<string, []>("op_22"), val = tensor<int32, [1]>([480400])];
12
+ tensor<fp16, [480400]> input_cast_fp16 = reshape(shape = var_22, x = input_1_cast_fp16)[name = tensor<string, []>("input_cast_fp16")];
13
+ tensor<int32, [1]> expand_dims_0_axes_0 = const()[name = tensor<string, []>("expand_dims_0_axes_0"), val = tensor<int32, [1]>([0])];
14
+ tensor<fp16, [1, 480400]> 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")];
15
+ tensor<int32, [1]> expand_dims_3 = const()[name = tensor<string, []>("expand_dims_3"), val = tensor<int32, [1]>([160])];
16
+ tensor<int32, [1]> expand_dims_4_axes_0 = const()[name = tensor<string, []>("expand_dims_4_axes_0"), val = tensor<int32, [1]>([1])];
17
+ tensor<fp16, [1, 1, 480400]> 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")];
18
+ tensor<string, []> conv_0_pad_type_0 = const()[name = tensor<string, []>("conv_0_pad_type_0"), val = tensor<string, []>("valid")];
19
+ tensor<int32, [2]> conv_0_pad_0 = const()[name = tensor<string, []>("conv_0_pad_0"), val = tensor<int32, [2]>([0, 0])];
20
+ tensor<int32, [1]> conv_0_dilations_0 = const()[name = tensor<string, []>("conv_0_dilations_0"), val = tensor<int32, [1]>([1])];
21
+ tensor<int32, []> conv_0_groups_0 = const()[name = tensor<string, []>("conv_0_groups_0"), val = tensor<int32, []>(1)];
22
+ tensor<fp16, [201, 1, 400]> expand_dims_1_to_fp16 = const()[name = tensor<string, []>("expand_dims_1_to_fp16"), val = tensor<fp16, [201, 1, 400]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(64)))];
23
+ tensor<fp16, [1, 201, 3001]> 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")];
24
+ tensor<string, []> conv_1_pad_type_0 = const()[name = tensor<string, []>("conv_1_pad_type_0"), val = tensor<string, []>("valid")];
25
+ tensor<int32, [2]> conv_1_pad_0 = const()[name = tensor<string, []>("conv_1_pad_0"), val = tensor<int32, [2]>([0, 0])];
26
+ tensor<int32, [1]> conv_1_dilations_0 = const()[name = tensor<string, []>("conv_1_dilations_0"), val = tensor<int32, [1]>([1])];
27
+ tensor<int32, []> conv_1_groups_0 = const()[name = tensor<string, []>("conv_1_groups_0"), val = tensor<int32, []>(1)];
28
+ tensor<fp16, [201, 1, 400]> expand_dims_2_to_fp16 = const()[name = tensor<string, []>("expand_dims_2_to_fp16"), val = tensor<fp16, [201, 1, 400]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(160960)))];
29
+ tensor<fp16, [1, 201, 3001]> 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")];
30
+ tensor<int32, [1]> squeeze_0_axes_0 = const()[name = tensor<string, []>("squeeze_0_axes_0"), val = tensor<int32, [1]>([0])];
31
+ tensor<fp16, [201, 3001]> squeeze_0_cast_fp16 = squeeze(axes = squeeze_0_axes_0, x = conv_0_cast_fp16)[name = tensor<string, []>("squeeze_0_cast_fp16")];
32
+ tensor<int32, [1]> squeeze_1_axes_0 = const()[name = tensor<string, []>("squeeze_1_axes_0"), val = tensor<int32, [1]>([0])];
33
+ tensor<fp16, [201, 3001]> squeeze_1_cast_fp16 = squeeze(axes = squeeze_1_axes_0, x = conv_1_cast_fp16)[name = tensor<string, []>("squeeze_1_cast_fp16")];
34
+ tensor<fp16, [201, 3001]> square_0_cast_fp16 = square(x = squeeze_0_cast_fp16)[name = tensor<string, []>("square_0_cast_fp16")];
35
+ tensor<fp16, [201, 3001]> square_1_cast_fp16 = square(x = squeeze_1_cast_fp16)[name = tensor<string, []>("square_1_cast_fp16")];
36
+ tensor<fp16, [201, 3001]> add_1_cast_fp16 = add(x = square_0_cast_fp16, y = square_1_cast_fp16)[name = tensor<string, []>("add_1_cast_fp16")];
37
+ tensor<fp16, [201, 3001]> magnitudes_1_cast_fp16 = identity(x = add_1_cast_fp16)[name = tensor<string, []>("magnitudes_1_cast_fp16")];
38
+ tensor<int32, [2]> magnitudes_begin_0 = const()[name = tensor<string, []>("magnitudes_begin_0"), val = tensor<int32, [2]>([0, 0])];
39
+ tensor<int32, [2]> magnitudes_end_0 = const()[name = tensor<string, []>("magnitudes_end_0"), val = tensor<int32, [2]>([201, 3000])];
40
+ tensor<bool, [2]> magnitudes_end_mask_0 = const()[name = tensor<string, []>("magnitudes_end_mask_0"), val = tensor<bool, [2]>([true, false])];
41
+ tensor<fp16, [201, 3000]> magnitudes_cast_fp16 = slice_by_index(begin = magnitudes_begin_0, end = magnitudes_end_0, end_mask = magnitudes_end_mask_0, x = magnitudes_1_cast_fp16)[name = tensor<string, []>("magnitudes_cast_fp16")];
42
+ tensor<bool, []> mel_spec_1_transpose_x_0 = const()[name = tensor<string, []>("mel_spec_1_transpose_x_0"), val = tensor<bool, []>(false)];
43
+ tensor<bool, []> mel_spec_1_transpose_y_0 = const()[name = tensor<string, []>("mel_spec_1_transpose_y_0"), val = tensor<bool, []>(false)];
44
+ tensor<fp16, [80, 201]> mel_filters_to_fp16 = const()[name = tensor<string, []>("mel_filters_to_fp16"), val = tensor<fp16, [80, 201]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(321856)))];
45
+ tensor<fp16, [80, 3000]> 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")];
46
+ tensor<fp16, []> var_41_to_fp16 = const()[name = tensor<string, []>("op_41_to_fp16"), val = tensor<fp16, []>(0x1p-24)];
47
+ tensor<fp16, [80, 3000]> mel_spec_cast_fp16 = add(x = mel_spec_1_cast_fp16, y = var_41_to_fp16)[name = tensor<string, []>("mel_spec_cast_fp16")];
48
+ tensor<fp16, []> log_0_epsilon_0_to_fp16 = const()[name = tensor<string, []>("log_0_epsilon_0_to_fp16"), val = tensor<fp16, []>(0x0p+0)];
49
+ tensor<fp16, [80, 3000]> log_0_cast_fp16 = log(epsilon = log_0_epsilon_0_to_fp16, x = mel_spec_cast_fp16)[name = tensor<string, []>("log_0_cast_fp16")];
50
+ tensor<fp16, []> mul_0_y_0_to_fp16 = const()[name = tensor<string, []>("mul_0_y_0_to_fp16"), val = tensor<fp16, []>(0x1.bccp-2)];
51
+ tensor<fp16, [80, 3000]> mul_0_cast_fp16 = mul(x = log_0_cast_fp16, y = mul_0_y_0_to_fp16)[name = tensor<string, []>("mul_0_cast_fp16")];
52
+ tensor<bool, []> var_44_keep_dims_0 = const()[name = tensor<string, []>("op_44_keep_dims_0"), val = tensor<bool, []>(false)];
53
+ tensor<fp16, []> var_44_cast_fp16 = reduce_max(keep_dims = var_44_keep_dims_0, x = mul_0_cast_fp16)[name = tensor<string, []>("op_44_cast_fp16")];
54
+ tensor<fp16, []> var_46_to_fp16 = const()[name = tensor<string, []>("op_46_to_fp16"), val = tensor<fp16, []>(0x1p+3)];
55
+ tensor<fp16, []> var_47_cast_fp16 = sub(x = var_44_cast_fp16, y = var_46_to_fp16)[name = tensor<string, []>("op_47_cast_fp16")];
56
+ tensor<fp16, [80, 3000]> log_spec_3_cast_fp16 = maximum(x = mul_0_cast_fp16, y = var_47_cast_fp16)[name = tensor<string, []>("log_spec_3_cast_fp16")];
57
+ tensor<fp16, []> var_50_to_fp16 = const()[name = tensor<string, []>("op_50_to_fp16"), val = tensor<fp16, []>(0x1p+2)];
58
+ tensor<fp16, [80, 3000]> var_51_cast_fp16 = add(x = log_spec_3_cast_fp16, y = var_50_to_fp16)[name = tensor<string, []>("op_51_cast_fp16")];
59
+ tensor<fp16, []> _inversed_log_spec_y_0_to_fp16 = const()[name = tensor<string, []>("_inversed_log_spec_y_0_to_fp16"), val = tensor<fp16, []>(0x1p-2)];
60
+ tensor<fp16, [80, 3000]> _inversed_log_spec_cast_fp16 = mul(x = var_51_cast_fp16, y = _inversed_log_spec_y_0_to_fp16)[name = tensor<string, []>("_inversed_log_spec_cast_fp16")];
61
+ tensor<int32, [1]> var_55_axes_0 = const()[name = tensor<string, []>("op_55_axes_0"), val = tensor<int32, [1]>([0])];
62
+ tensor<fp16, [1, 80, 3000]> var_55_cast_fp16 = expand_dims(axes = var_55_axes_0, x = _inversed_log_spec_cast_fp16)[name = tensor<string, []>("op_55_cast_fp16")];
63
+ tensor<int32, [1]> var_62_axes_0 = const()[name = tensor<string, []>("op_62_axes_0"), val = tensor<int32, [1]>([2])];
64
+ tensor<fp16, [1, 80, 1, 3000]> melspectrogram_features = expand_dims(axes = var_62_axes_0, x = var_55_cast_fp16)[name = tensor<string, []>("op_62_cast_fp16")];
65
+ } -> (melspectrogram_features);
66
+ }
phowhisper-small/MelSpectrogram.mlmodelc/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9ece01bd3ba06bd538a06370b4a1fcfa5d30aa1af3875e4f2d94837f5371056c
3
+ size 354080
phowhisper-small/TextDecoder.mlmodelc/analytics/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:61bc032aa4320873e33a24ce71cc0cf2f0c490606c0227044e133ea7394a879d
3
+ size 243
phowhisper-small/TextDecoder.mlmodelc/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9097da41aa4e7b67ac78073a9ad147d631cdb1b40d55813a116e732d3f573fb9
3
+ size 633
phowhisper-small/TextDecoder.mlmodelc/metadata.json ADDED
@@ -0,0 +1,165 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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 × 51865)",
11
+ "shortDescription" : "",
12
+ "shape" : "[1, 1, 51865]",
13
+ "name" : "logits",
14
+ "type" : "MultiArray"
15
+ },
16
+ {
17
+ "hasShapeFlexibility" : "0",
18
+ "isOptional" : "0",
19
+ "dataType" : "Float16",
20
+ "formattedType" : "MultiArray (Float16 1 × 9216 × 1 × 1)",
21
+ "shortDescription" : "",
22
+ "shape" : "[1, 9216, 1, 1]",
23
+ "name" : "key_cache_updates",
24
+ "type" : "MultiArray"
25
+ },
26
+ {
27
+ "hasShapeFlexibility" : "0",
28
+ "isOptional" : "0",
29
+ "dataType" : "Float16",
30
+ "formattedType" : "MultiArray (Float16 1 × 9216 × 1 × 1)",
31
+ "shortDescription" : "",
32
+ "shape" : "[1, 9216, 1, 1]",
33
+ "name" : "value_cache_updates",
34
+ "type" : "MultiArray"
35
+ },
36
+ {
37
+ "hasShapeFlexibility" : "0",
38
+ "isOptional" : "0",
39
+ "dataType" : "Float16",
40
+ "formattedType" : "MultiArray (Float16 1 × 1500)",
41
+ "shortDescription" : "",
42
+ "shape" : "[1, 1500]",
43
+ "name" : "alignment_heads_weights",
44
+ "type" : "MultiArray"
45
+ }
46
+ ],
47
+ "modelParameters" : [
48
+
49
+ ],
50
+ "specificationVersion" : 7,
51
+ "mlProgramOperationTypeHistogram" : {
52
+ "Split" : 2,
53
+ "Concat" : 3,
54
+ "Ios16.rsqrt" : 37,
55
+ "Ios16.mul" : 146,
56
+ "Squeeze" : 1,
57
+ "SliceByIndex" : 20,
58
+ "Ios16.sub" : 38,
59
+ "Transpose" : 1,
60
+ "Ios16.conv" : 120,
61
+ "Ios16.add" : 110,
62
+ "Ios16.linear" : 1,
63
+ "Ios16.matmul" : 48,
64
+ "Ios16.gelu" : 12,
65
+ "Ios16.reduceMean" : 75,
66
+ "ExpandDims" : 6,
67
+ "Ios16.batchNorm" : 37,
68
+ "Ios16.gather" : 2,
69
+ "Ios16.reshape" : 96,
70
+ "Ios16.softmax" : 24
71
+ },
72
+ "computePrecision" : "Mixed (Float16, Int32)",
73
+ "isUpdatable" : "0",
74
+ "availability" : {
75
+ "macOS" : "13.0",
76
+ "tvOS" : "16.0",
77
+ "visionOS" : "1.0",
78
+ "watchOS" : "9.0",
79
+ "iOS" : "16.0",
80
+ "macCatalyst" : "16.0"
81
+ },
82
+ "modelType" : {
83
+ "name" : "MLModelType_mlProgram"
84
+ },
85
+ "userDefinedMetadata" : {
86
+ "com.github.apple.coremltools.source_dialect" : "TorchScript",
87
+ "com.github.apple.coremltools.source" : "torch==2.1.0",
88
+ "com.github.apple.coremltools.version" : "7.1"
89
+ },
90
+ "inputSchema" : [
91
+ {
92
+ "hasShapeFlexibility" : "0",
93
+ "isOptional" : "0",
94
+ "dataType" : "Int32",
95
+ "formattedType" : "MultiArray (Int32 1)",
96
+ "shortDescription" : "",
97
+ "shape" : "[1]",
98
+ "name" : "input_ids",
99
+ "type" : "MultiArray"
100
+ },
101
+ {
102
+ "hasShapeFlexibility" : "0",
103
+ "isOptional" : "0",
104
+ "dataType" : "Int32",
105
+ "formattedType" : "MultiArray (Int32 1)",
106
+ "shortDescription" : "",
107
+ "shape" : "[1]",
108
+ "name" : "cache_length",
109
+ "type" : "MultiArray"
110
+ },
111
+ {
112
+ "hasShapeFlexibility" : "0",
113
+ "isOptional" : "0",
114
+ "dataType" : "Float16",
115
+ "formattedType" : "MultiArray (Float16 1 × 9216 × 1 × 448)",
116
+ "shortDescription" : "",
117
+ "shape" : "[1, 9216, 1, 448]",
118
+ "name" : "key_cache",
119
+ "type" : "MultiArray"
120
+ },
121
+ {
122
+ "hasShapeFlexibility" : "0",
123
+ "isOptional" : "0",
124
+ "dataType" : "Float16",
125
+ "formattedType" : "MultiArray (Float16 1 × 9216 × 1 × 448)",
126
+ "shortDescription" : "",
127
+ "shape" : "[1, 9216, 1, 448]",
128
+ "name" : "value_cache",
129
+ "type" : "MultiArray"
130
+ },
131
+ {
132
+ "hasShapeFlexibility" : "0",
133
+ "isOptional" : "0",
134
+ "dataType" : "Float16",
135
+ "formattedType" : "MultiArray (Float16 1 × 448)",
136
+ "shortDescription" : "",
137
+ "shape" : "[1, 448]",
138
+ "name" : "kv_cache_update_mask",
139
+ "type" : "MultiArray"
140
+ },
141
+ {
142
+ "hasShapeFlexibility" : "0",
143
+ "isOptional" : "0",
144
+ "dataType" : "Float16",
145
+ "formattedType" : "MultiArray (Float16 1 × 768 × 1 × 1500)",
146
+ "shortDescription" : "",
147
+ "shape" : "[1, 768, 1, 1500]",
148
+ "name" : "encoder_output_embeds",
149
+ "type" : "MultiArray"
150
+ },
151
+ {
152
+ "hasShapeFlexibility" : "0",
153
+ "isOptional" : "0",
154
+ "dataType" : "Float16",
155
+ "formattedType" : "MultiArray (Float16 1 × 448)",
156
+ "shortDescription" : "",
157
+ "shape" : "[1, 448]",
158
+ "name" : "decoder_key_padding_mask",
159
+ "type" : "MultiArray"
160
+ }
161
+ ],
162
+ "generatedClassName" : "TextDecoder",
163
+ "method" : "predict"
164
+ }
165
+ ]
phowhisper-small/TextDecoder.mlmodelc/model.mil ADDED
The diff for this file is too large to render. See raw diff
 
phowhisper-small/TextDecoder.mlmodelc/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:60c2f591aa513f5d7f2159c6fb5e7945fa184d81ec576f54154bb18ac9feea99
3
+ size 307287346
phowhisper-small/config.json ADDED
@@ -0,0 +1,51 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_name_or_path": "./finetuned_models_FINAL/whisper-small-vi/checkpoint-8000",
3
+ "activation_dropout": 0.0,
4
+ "activation_function": "gelu",
5
+ "apply_spec_augment": false,
6
+ "architectures": [
7
+ "WhisperForConditionalGeneration"
8
+ ],
9
+ "attention_dropout": 0.0,
10
+ "begin_suppress_tokens": [
11
+ 220,
12
+ 50257
13
+ ],
14
+ "bos_token_id": 50257,
15
+ "classifier_proj_size": 256,
16
+ "d_model": 768,
17
+ "decoder_attention_heads": 12,
18
+ "decoder_ffn_dim": 3072,
19
+ "decoder_layerdrop": 0.0,
20
+ "decoder_layers": 12,
21
+ "decoder_start_token_id": 50258,
22
+ "dropout": 0.0,
23
+ "encoder_attention_heads": 12,
24
+ "encoder_ffn_dim": 3072,
25
+ "encoder_layerdrop": 0.0,
26
+ "encoder_layers": 12,
27
+ "eos_token_id": 50257,
28
+ "forced_decoder_ids": null,
29
+ "init_std": 0.02,
30
+ "is_encoder_decoder": true,
31
+ "mask_feature_length": 10,
32
+ "mask_feature_min_masks": 0,
33
+ "mask_feature_prob": 0.0,
34
+ "mask_time_length": 10,
35
+ "mask_time_min_masks": 2,
36
+ "mask_time_prob": 0.05,
37
+ "max_length": 448,
38
+ "max_source_positions": 1500,
39
+ "max_target_positions": 448,
40
+ "median_filter_width": 7,
41
+ "model_type": "whisper",
42
+ "num_hidden_layers": 12,
43
+ "num_mel_bins": 80,
44
+ "pad_token_id": 50257,
45
+ "scale_embedding": false,
46
+ "torch_dtype": "float32",
47
+ "transformers_version": "4.31.0",
48
+ "use_cache": true,
49
+ "use_weighted_layer_sum": false,
50
+ "vocab_size": 51865
51
+ }
phowhisper-small/generation_config.json ADDED
@@ -0,0 +1,263 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alignment_heads": [
3
+ [
4
+ 5,
5
+ 3
6
+ ],
7
+ [
8
+ 5,
9
+ 9
10
+ ],
11
+ [
12
+ 8,
13
+ 0
14
+ ],
15
+ [
16
+ 8,
17
+ 4
18
+ ],
19
+ [
20
+ 8,
21
+ 7
22
+ ],
23
+ [
24
+ 8,
25
+ 8
26
+ ],
27
+ [
28
+ 9,
29
+ 0
30
+ ],
31
+ [
32
+ 9,
33
+ 7
34
+ ],
35
+ [
36
+ 9,
37
+ 9
38
+ ],
39
+ [
40
+ 10,
41
+ 5
42
+ ]
43
+ ],
44
+ "begin_suppress_tokens": [
45
+ 220,
46
+ 50257
47
+ ],
48
+ "bos_token_id": 50257,
49
+ "decoder_start_token_id": 50258,
50
+ "eos_token_id": 50257,
51
+ "forced_decoder_ids": [
52
+ [
53
+ 1,
54
+ null
55
+ ],
56
+ [
57
+ 2,
58
+ 50359
59
+ ]
60
+ ],
61
+ "is_multilingual": true,
62
+ "lang_to_id": {
63
+ "<|af|>": 50327,
64
+ "<|am|>": 50334,
65
+ "<|ar|>": 50272,
66
+ "<|as|>": 50350,
67
+ "<|az|>": 50304,
68
+ "<|ba|>": 50355,
69
+ "<|be|>": 50330,
70
+ "<|bg|>": 50292,
71
+ "<|bn|>": 50302,
72
+ "<|bo|>": 50347,
73
+ "<|br|>": 50309,
74
+ "<|bs|>": 50315,
75
+ "<|ca|>": 50270,
76
+ "<|cs|>": 50283,
77
+ "<|cy|>": 50297,
78
+ "<|da|>": 50285,
79
+ "<|de|>": 50261,
80
+ "<|el|>": 50281,
81
+ "<|en|>": 50259,
82
+ "<|es|>": 50262,
83
+ "<|et|>": 50307,
84
+ "<|eu|>": 50310,
85
+ "<|fa|>": 50300,
86
+ "<|fi|>": 50277,
87
+ "<|fo|>": 50338,
88
+ "<|fr|>": 50265,
89
+ "<|gl|>": 50319,
90
+ "<|gu|>": 50333,
91
+ "<|haw|>": 50352,
92
+ "<|ha|>": 50354,
93
+ "<|he|>": 50279,
94
+ "<|hi|>": 50276,
95
+ "<|hr|>": 50291,
96
+ "<|ht|>": 50339,
97
+ "<|hu|>": 50286,
98
+ "<|hy|>": 50312,
99
+ "<|id|>": 50275,
100
+ "<|is|>": 50311,
101
+ "<|it|>": 50274,
102
+ "<|ja|>": 50266,
103
+ "<|jw|>": 50356,
104
+ "<|ka|>": 50329,
105
+ "<|kk|>": 50316,
106
+ "<|km|>": 50323,
107
+ "<|kn|>": 50306,
108
+ "<|ko|>": 50264,
109
+ "<|la|>": 50294,
110
+ "<|lb|>": 50345,
111
+ "<|ln|>": 50353,
112
+ "<|lo|>": 50336,
113
+ "<|lt|>": 50293,
114
+ "<|lv|>": 50301,
115
+ "<|mg|>": 50349,
116
+ "<|mi|>": 50295,
117
+ "<|mk|>": 50308,
118
+ "<|ml|>": 50296,
119
+ "<|mn|>": 50314,
120
+ "<|mr|>": 50320,
121
+ "<|ms|>": 50282,
122
+ "<|mt|>": 50343,
123
+ "<|my|>": 50346,
124
+ "<|ne|>": 50313,
125
+ "<|nl|>": 50271,
126
+ "<|nn|>": 50342,
127
+ "<|no|>": 50288,
128
+ "<|oc|>": 50328,
129
+ "<|pa|>": 50321,
130
+ "<|pl|>": 50269,
131
+ "<|ps|>": 50340,
132
+ "<|pt|>": 50267,
133
+ "<|ro|>": 50284,
134
+ "<|ru|>": 50263,
135
+ "<|sa|>": 50344,
136
+ "<|sd|>": 50332,
137
+ "<|si|>": 50322,
138
+ "<|sk|>": 50298,
139
+ "<|sl|>": 50305,
140
+ "<|sn|>": 50324,
141
+ "<|so|>": 50326,
142
+ "<|sq|>": 50317,
143
+ "<|sr|>": 50303,
144
+ "<|su|>": 50357,
145
+ "<|sv|>": 50273,
146
+ "<|sw|>": 50318,
147
+ "<|ta|>": 50287,
148
+ "<|te|>": 50299,
149
+ "<|tg|>": 50331,
150
+ "<|th|>": 50289,
151
+ "<|tk|>": 50341,
152
+ "<|tl|>": 50348,
153
+ "<|tr|>": 50268,
154
+ "<|tt|>": 50351,
155
+ "<|uk|>": 50280,
156
+ "<|ur|>": 50290,
157
+ "<|uz|>": 50337,
158
+ "<|vi|>": 50278,
159
+ "<|yi|>": 50335,
160
+ "<|yo|>": 50325,
161
+ "<|zh|>": 50260
162
+ },
163
+ "max_initial_timestamp_index": 1,
164
+ "max_length": 448,
165
+ "no_timestamps_token_id": 50363,
166
+ "pad_token_id": 50257,
167
+ "return_timestamps": false,
168
+ "suppress_tokens": [
169
+ 1,
170
+ 2,
171
+ 7,
172
+ 8,
173
+ 9,
174
+ 10,
175
+ 14,
176
+ 25,
177
+ 26,
178
+ 27,
179
+ 28,
180
+ 29,
181
+ 31,
182
+ 58,
183
+ 59,
184
+ 60,
185
+ 61,
186
+ 62,
187
+ 63,
188
+ 90,
189
+ 91,
190
+ 92,
191
+ 93,
192
+ 359,
193
+ 503,
194
+ 522,
195
+ 542,
196
+ 873,
197
+ 893,
198
+ 902,
199
+ 918,
200
+ 922,
201
+ 931,
202
+ 1350,
203
+ 1853,
204
+ 1982,
205
+ 2460,
206
+ 2627,
207
+ 3246,
208
+ 3253,
209
+ 3268,
210
+ 3536,
211
+ 3846,
212
+ 3961,
213
+ 4183,
214
+ 4667,
215
+ 6585,
216
+ 6647,
217
+ 7273,
218
+ 9061,
219
+ 9383,
220
+ 10428,
221
+ 10929,
222
+ 11938,
223
+ 12033,
224
+ 12331,
225
+ 12562,
226
+ 13793,
227
+ 14157,
228
+ 14635,
229
+ 15265,
230
+ 15618,
231
+ 16553,
232
+ 16604,
233
+ 18362,
234
+ 18956,
235
+ 20075,
236
+ 21675,
237
+ 22520,
238
+ 26130,
239
+ 26161,
240
+ 26435,
241
+ 28279,
242
+ 29464,
243
+ 31650,
244
+ 32302,
245
+ 32470,
246
+ 36865,
247
+ 42863,
248
+ 47425,
249
+ 49870,
250
+ 50254,
251
+ 50258,
252
+ 50358,
253
+ 50359,
254
+ 50360,
255
+ 50361,
256
+ 50362
257
+ ],
258
+ "task_to_id": {
259
+ "transcribe": 50359,
260
+ "translate": 50358
261
+ },
262
+ "transformers_version": "4.31.0"
263
+ }