alexwengg commited on
Commit
8cf5401
·
verified ·
1 Parent(s): 5c3cc46

Upload 162 files

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. es/1120ms/decoder.mlmodelc/analytics/coremldata.bin +3 -0
  2. es/1120ms/decoder.mlmodelc/coremldata.bin +3 -0
  3. es/1120ms/decoder.mlmodelc/model.mil +64 -0
  4. es/1120ms/decoder.mlmodelc/weights/weight.bin +3 -0
  5. es/1120ms/decoder.mlpackage/Data/com.apple.CoreML/model.mlmodel +3 -0
  6. es/1120ms/decoder.mlpackage/Data/com.apple.CoreML/weights/weight.bin +3 -0
  7. es/1120ms/decoder.mlpackage/Manifest.json +18 -0
  8. es/1120ms/decoder_joint.mlmodelc/analytics/coremldata.bin +3 -0
  9. es/1120ms/decoder_joint.mlmodelc/coremldata.bin +3 -0
  10. es/1120ms/decoder_joint.mlmodelc/model.mil +83 -0
  11. es/1120ms/decoder_joint.mlmodelc/weights/weight.bin +3 -0
  12. es/1120ms/decoder_joint.mlpackage/Data/com.apple.CoreML/model.mlmodel +3 -0
  13. es/1120ms/decoder_joint.mlpackage/Data/com.apple.CoreML/weights/weight.bin +3 -0
  14. es/1120ms/decoder_joint.mlpackage/Manifest.json +18 -0
  15. es/1120ms/encoder.mlmodelc/analytics/coremldata.bin +3 -0
  16. es/1120ms/encoder.mlmodelc/coremldata.bin +3 -0
  17. es/1120ms/encoder.mlmodelc/model.mil +0 -0
  18. es/1120ms/encoder.mlmodelc/weights/weight.bin +3 -0
  19. es/1120ms/encoder.mlpackage/Data/com.apple.CoreML/model.mlmodel +3 -0
  20. es/1120ms/encoder.mlpackage/Data/com.apple.CoreML/weights/weight.bin +3 -0
  21. es/1120ms/encoder.mlpackage/Manifest.json +18 -0
  22. es/1120ms/joint.mlmodelc/analytics/coremldata.bin +3 -0
  23. es/1120ms/joint.mlmodelc/coremldata.bin +3 -0
  24. es/1120ms/joint.mlmodelc/model.mil +31 -0
  25. es/1120ms/joint.mlmodelc/weights/weight.bin +3 -0
  26. es/1120ms/joint.mlpackage/Data/com.apple.CoreML/model.mlmodel +3 -0
  27. es/1120ms/joint.mlpackage/Data/com.apple.CoreML/weights/weight.bin +3 -0
  28. es/1120ms/joint.mlpackage/Manifest.json +18 -0
  29. es/1120ms/metadata.json +198 -0
  30. es/1120ms/preprocessor.mlmodelc/analytics/coremldata.bin +3 -0
  31. es/1120ms/preprocessor.mlmodelc/coremldata.bin +3 -0
  32. es/1120ms/preprocessor.mlmodelc/model.mil +122 -0
  33. es/1120ms/preprocessor.mlmodelc/weights/weight.bin +3 -0
  34. es/1120ms/preprocessor.mlpackage/Data/com.apple.CoreML/model.mlmodel +3 -0
  35. es/1120ms/preprocessor.mlpackage/Data/com.apple.CoreML/weights/weight.bin +3 -0
  36. es/1120ms/preprocessor.mlpackage/Manifest.json +18 -0
  37. es/1120ms/tokenizer.json +834 -0
  38. es/2240ms/decoder.mlmodelc/analytics/coremldata.bin +3 -0
  39. es/2240ms/decoder.mlmodelc/coremldata.bin +3 -0
  40. es/2240ms/decoder.mlmodelc/model.mil +64 -0
  41. es/2240ms/decoder.mlmodelc/weights/weight.bin +3 -0
  42. es/2240ms/decoder.mlpackage/Data/com.apple.CoreML/model.mlmodel +3 -0
  43. es/2240ms/decoder.mlpackage/Data/com.apple.CoreML/weights/weight.bin +3 -0
  44. es/2240ms/decoder.mlpackage/Manifest.json +18 -0
  45. es/2240ms/decoder_joint.mlmodelc/analytics/coremldata.bin +3 -0
  46. es/2240ms/decoder_joint.mlmodelc/coremldata.bin +3 -0
  47. es/2240ms/decoder_joint.mlmodelc/model.mil +83 -0
  48. es/2240ms/decoder_joint.mlmodelc/weights/weight.bin +3 -0
  49. es/2240ms/decoder_joint.mlpackage/Data/com.apple.CoreML/model.mlmodel +3 -0
  50. es/2240ms/decoder_joint.mlpackage/Data/com.apple.CoreML/weights/weight.bin +3 -0
es/1120ms/decoder.mlmodelc/analytics/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d8c3744468694142efbb178729d4d6a56edc642464a04a884b938cfe27c4e094
3
+ size 243
es/1120ms/decoder.mlmodelc/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3c993f8b96ce22027cd2ed42d99b7e61f93a01197bb17cadada8eb989e946dec
3
+ size 433
es/1120ms/decoder.mlmodelc/model.mil ADDED
@@ -0,0 +1,64 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ program(1.3)
2
+ [buildInfo = dict<string, string>({{"coremlc-component-MIL", "3520.4.1"}, {"coremlc-version", "3520.5.1"}, {"coremltools-component-torch", "2.5.1"}, {"coremltools-source-dialect", "TorchScript"}, {"coremltools-version", "8.3.0"}})]
3
+ {
4
+ func main<ios18>(tensor<fp32, [2, 1, 640]> c_in, tensor<fp32, [2, 1, 640]> h_in, tensor<int32, [1, 1]> token, tensor<int32, [1]> token_length) {
5
+ int32 y_axis_0 = const()[name = string("y_axis_0"), val = int32(0)];
6
+ int32 y_batch_dims_0 = const()[name = string("y_batch_dims_0"), val = int32(0)];
7
+ bool y_validate_indices_0 = const()[name = string("y_validate_indices_0"), val = bool(false)];
8
+ tensor<fp16, [832, 640]> module_prediction_embed_weight_to_fp16 = const()[name = string("module_prediction_embed_weight_to_fp16"), val = tensor<fp16, [832, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(64)))];
9
+ string token_to_int16_dtype_0 = const()[name = string("token_to_int16_dtype_0"), val = string("int16")];
10
+ tensor<int16, [1, 1]> token_to_int16 = cast(dtype = token_to_int16_dtype_0, x = token)[name = string("cast_8")];
11
+ tensor<fp16, [1, 1, 640]> y_cast_fp16_cast_uint16 = gather(axis = y_axis_0, batch_dims = y_batch_dims_0, indices = token_to_int16, validate_indices = y_validate_indices_0, x = module_prediction_embed_weight_to_fp16)[name = string("y_cast_fp16_cast_uint16")];
12
+ tensor<int32, [3]> input_3_perm_0 = const()[name = string("input_3_perm_0"), val = tensor<int32, [3]>([1, 0, 2])];
13
+ int32 split_0_num_splits_0 = const()[name = string("split_0_num_splits_0"), val = int32(2)];
14
+ int32 split_0_axis_0 = const()[name = string("split_0_axis_0"), val = int32(0)];
15
+ string h_in_to_fp16_dtype_0 = const()[name = string("h_in_to_fp16_dtype_0"), val = string("fp16")];
16
+ tensor<fp16, [2, 1, 640]> h_in_to_fp16 = cast(dtype = h_in_to_fp16_dtype_0, x = h_in)[name = string("cast_7")];
17
+ tensor<fp16, [1, 1, 640]> split_0_cast_fp16_0, tensor<fp16, [1, 1, 640]> split_0_cast_fp16_1 = split(axis = split_0_axis_0, num_splits = split_0_num_splits_0, x = h_in_to_fp16)[name = string("split_0_cast_fp16")];
18
+ int32 split_1_num_splits_0 = const()[name = string("split_1_num_splits_0"), val = int32(2)];
19
+ int32 split_1_axis_0 = const()[name = string("split_1_axis_0"), val = int32(0)];
20
+ string c_in_to_fp16_dtype_0 = const()[name = string("c_in_to_fp16_dtype_0"), val = string("fp16")];
21
+ tensor<fp16, [2, 1, 640]> c_in_to_fp16 = cast(dtype = c_in_to_fp16_dtype_0, x = c_in)[name = string("cast_6")];
22
+ tensor<fp16, [1, 1, 640]> split_1_cast_fp16_0, tensor<fp16, [1, 1, 640]> split_1_cast_fp16_1 = split(axis = split_1_axis_0, num_splits = split_1_num_splits_0, x = c_in_to_fp16)[name = string("split_1_cast_fp16")];
23
+ tensor<int32, [1]> input_lstm_layer_0_lstm_h0_squeeze_axes_0 = const()[name = string("input_lstm_layer_0_lstm_h0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
24
+ tensor<fp16, [1, 640]> input_lstm_layer_0_lstm_h0_squeeze_cast_fp16 = squeeze(axes = input_lstm_layer_0_lstm_h0_squeeze_axes_0, x = split_0_cast_fp16_0)[name = string("input_lstm_layer_0_lstm_h0_squeeze_cast_fp16")];
25
+ tensor<int32, [1]> input_lstm_layer_0_lstm_c0_squeeze_axes_0 = const()[name = string("input_lstm_layer_0_lstm_c0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
26
+ tensor<fp16, [1, 640]> input_lstm_layer_0_lstm_c0_squeeze_cast_fp16 = squeeze(axes = input_lstm_layer_0_lstm_c0_squeeze_axes_0, x = split_1_cast_fp16_0)[name = string("input_lstm_layer_0_lstm_c0_squeeze_cast_fp16")];
27
+ string input_lstm_layer_0_direction_0 = const()[name = string("input_lstm_layer_0_direction_0"), val = string("forward")];
28
+ bool input_lstm_layer_0_output_sequence_0 = const()[name = string("input_lstm_layer_0_output_sequence_0"), val = bool(true)];
29
+ string input_lstm_layer_0_recurrent_activation_0 = const()[name = string("input_lstm_layer_0_recurrent_activation_0"), val = string("sigmoid")];
30
+ string input_lstm_layer_0_cell_activation_0 = const()[name = string("input_lstm_layer_0_cell_activation_0"), val = string("tanh")];
31
+ string input_lstm_layer_0_activation_0 = const()[name = string("input_lstm_layer_0_activation_0"), val = string("tanh")];
32
+ tensor<fp16, [2560, 640]> concat_1_to_fp16 = const()[name = string("concat_1_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(1065088)))];
33
+ tensor<fp16, [2560, 640]> concat_2_to_fp16 = const()[name = string("concat_2_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(4341952)))];
34
+ tensor<fp16, [2560]> concat_0_to_fp16 = const()[name = string("concat_0_to_fp16"), val = tensor<fp16, [2560]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(7618816)))];
35
+ tensor<fp16, [1, 1, 640]> input_3_cast_fp16 = transpose(perm = input_3_perm_0, x = y_cast_fp16_cast_uint16)[name = string("transpose_2")];
36
+ tensor<fp16, [1, 1, 640]> input_lstm_layer_0_cast_fp16_0, tensor<fp16, [1, 640]> input_lstm_layer_0_cast_fp16_1, tensor<fp16, [1, 640]> input_lstm_layer_0_cast_fp16_2 = lstm(activation = input_lstm_layer_0_activation_0, bias = concat_0_to_fp16, 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_cast_fp16, initial_h = input_lstm_layer_0_lstm_h0_squeeze_cast_fp16, output_sequence = input_lstm_layer_0_output_sequence_0, recurrent_activation = input_lstm_layer_0_recurrent_activation_0, weight_hh = concat_2_to_fp16, weight_ih = concat_1_to_fp16, x = input_3_cast_fp16)[name = string("input_lstm_layer_0_cast_fp16")];
37
+ tensor<int32, [1]> input_lstm_h0_squeeze_axes_0 = const()[name = string("input_lstm_h0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
38
+ tensor<fp16, [1, 640]> input_lstm_h0_squeeze_cast_fp16 = squeeze(axes = input_lstm_h0_squeeze_axes_0, x = split_0_cast_fp16_1)[name = string("input_lstm_h0_squeeze_cast_fp16")];
39
+ tensor<int32, [1]> input_lstm_c0_squeeze_axes_0 = const()[name = string("input_lstm_c0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
40
+ tensor<fp16, [1, 640]> input_lstm_c0_squeeze_cast_fp16 = squeeze(axes = input_lstm_c0_squeeze_axes_0, x = split_1_cast_fp16_1)[name = string("input_lstm_c0_squeeze_cast_fp16")];
41
+ string input_direction_0 = const()[name = string("input_direction_0"), val = string("forward")];
42
+ bool input_output_sequence_0 = const()[name = string("input_output_sequence_0"), val = bool(true)];
43
+ string input_recurrent_activation_0 = const()[name = string("input_recurrent_activation_0"), val = string("sigmoid")];
44
+ string input_cell_activation_0 = const()[name = string("input_cell_activation_0"), val = string("tanh")];
45
+ string input_activation_0 = const()[name = string("input_activation_0"), val = string("tanh")];
46
+ tensor<fp16, [2560, 640]> concat_4_to_fp16 = const()[name = string("concat_4_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(7624000)))];
47
+ tensor<fp16, [2560, 640]> concat_5_to_fp16 = const()[name = string("concat_5_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(10900864)))];
48
+ tensor<fp16, [2560]> concat_3_to_fp16 = const()[name = string("concat_3_to_fp16"), val = tensor<fp16, [2560]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(14177728)))];
49
+ tensor<fp16, [1, 1, 640]> input_cast_fp16_0, tensor<fp16, [1, 640]> input_cast_fp16_1, tensor<fp16, [1, 640]> input_cast_fp16_2 = lstm(activation = input_activation_0, bias = concat_3_to_fp16, cell_activation = input_cell_activation_0, direction = input_direction_0, initial_c = input_lstm_c0_squeeze_cast_fp16, initial_h = input_lstm_h0_squeeze_cast_fp16, output_sequence = input_output_sequence_0, recurrent_activation = input_recurrent_activation_0, weight_hh = concat_5_to_fp16, weight_ih = concat_4_to_fp16, x = input_lstm_layer_0_cast_fp16_0)[name = string("input_cast_fp16")];
50
+ int32 obj_3_axis_0 = const()[name = string("obj_3_axis_0"), val = int32(0)];
51
+ tensor<fp16, [2, 1, 640]> obj_3_cast_fp16 = stack(axis = obj_3_axis_0, values = (input_lstm_layer_0_cast_fp16_1, input_cast_fp16_1))[name = string("obj_3_cast_fp16")];
52
+ string obj_3_cast_fp16_to_fp32_dtype_0 = const()[name = string("obj_3_cast_fp16_to_fp32_dtype_0"), val = string("fp32")];
53
+ int32 obj_axis_0 = const()[name = string("obj_axis_0"), val = int32(0)];
54
+ tensor<fp16, [2, 1, 640]> obj_cast_fp16 = stack(axis = obj_axis_0, values = (input_lstm_layer_0_cast_fp16_2, input_cast_fp16_2))[name = string("obj_cast_fp16")];
55
+ string obj_cast_fp16_to_fp32_dtype_0 = const()[name = string("obj_cast_fp16_to_fp32_dtype_0"), val = string("fp32")];
56
+ tensor<int32, [3]> transpose_0_perm_0 = const()[name = string("transpose_0_perm_0"), val = tensor<int32, [3]>([1, 2, 0])];
57
+ string transpose_0_cast_fp16_to_fp32_dtype_0 = const()[name = string("transpose_0_cast_fp16_to_fp32_dtype_0"), val = string("fp32")];
58
+ tensor<fp16, [1, 640, 1]> transpose_0_cast_fp16 = transpose(perm = transpose_0_perm_0, x = input_cast_fp16_0)[name = string("transpose_1")];
59
+ tensor<fp32, [1, 640, 1]> decoder_out = cast(dtype = transpose_0_cast_fp16_to_fp32_dtype_0, x = transpose_0_cast_fp16)[name = string("cast_3")];
60
+ tensor<fp32, [2, 1, 640]> c_out = cast(dtype = obj_cast_fp16_to_fp32_dtype_0, x = obj_cast_fp16)[name = string("cast_4")];
61
+ tensor<fp32, [2, 1, 640]> h_out = cast(dtype = obj_3_cast_fp16_to_fp32_dtype_0, x = obj_3_cast_fp16)[name = string("cast_5")];
62
+ tensor<int32, [1]> token_length_tmp = identity(x = token_length)[name = string("token_length_tmp")];
63
+ } -> (decoder_out, h_out, c_out);
64
+ }
es/1120ms/decoder.mlmodelc/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a6fd0dd21233238b9d55296b6c537f0057b621e75f2f93a4bbbe12fe1f00e99e
3
+ size 14182912
es/1120ms/decoder.mlpackage/Data/com.apple.CoreML/model.mlmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d5e3eed357e13b333dc78970ea0303fbe89c98df50e4f6be350345ed506bf5e3
3
+ size 10359
es/1120ms/decoder.mlpackage/Data/com.apple.CoreML/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a6fd0dd21233238b9d55296b6c537f0057b621e75f2f93a4bbbe12fe1f00e99e
3
+ size 14182912
es/1120ms/decoder.mlpackage/Manifest.json ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "fileFormatVersion": "1.0.0",
3
+ "itemInfoEntries": {
4
+ "1B1CD491-99B7-42CD-9B23-56E207B4734F": {
5
+ "author": "com.apple.CoreML",
6
+ "description": "CoreML Model Weights",
7
+ "name": "weights",
8
+ "path": "com.apple.CoreML/weights"
9
+ },
10
+ "68C4577A-86E9-400F-89F4-F791D33C5BC8": {
11
+ "author": "com.apple.CoreML",
12
+ "description": "CoreML Model Specification",
13
+ "name": "model.mlmodel",
14
+ "path": "com.apple.CoreML/model.mlmodel"
15
+ }
16
+ },
17
+ "rootModelIdentifier": "68C4577A-86E9-400F-89F4-F791D33C5BC8"
18
+ }
es/1120ms/decoder_joint.mlmodelc/analytics/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9229d9468fb1b6f8bf15b9a985eb2ea1bb2ca8aaf104768f3912656e4aec4364
3
+ size 243
es/1120ms/decoder_joint.mlmodelc/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:69ceb1d95a0e71aee083126abf2c95089e7eb692a50796b10f45996238a033ce
3
+ size 454
es/1120ms/decoder_joint.mlmodelc/model.mil ADDED
@@ -0,0 +1,83 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ program(1.3)
2
+ [buildInfo = dict<string, string>({{"coremlc-component-MIL", "3520.4.1"}, {"coremlc-version", "3520.5.1"}, {"coremltools-component-torch", "2.5.1"}, {"coremltools-source-dialect", "TorchScript"}, {"coremltools-version", "8.3.0"}})]
3
+ {
4
+ func main<ios18>(tensor<fp32, [2, 1, 640]> c_in, tensor<fp32, [1, 1024, 1]> encoder, tensor<fp32, [2, 1, 640]> h_in, tensor<int32, [1, 1]> token, tensor<int32, [1]> token_length) {
5
+ int32 y_axis_0 = const()[name = string("y_axis_0"), val = int32(0)];
6
+ int32 y_batch_dims_0 = const()[name = string("y_batch_dims_0"), val = int32(0)];
7
+ bool y_validate_indices_0 = const()[name = string("y_validate_indices_0"), val = bool(false)];
8
+ tensor<fp16, [832, 640]> decoder_module_prediction_embed_weight_to_fp16 = const()[name = string("decoder_module_prediction_embed_weight_to_fp16"), val = tensor<fp16, [832, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(64)))];
9
+ string token_to_int16_dtype_0 = const()[name = string("token_to_int16_dtype_0"), val = string("int16")];
10
+ tensor<int16, [1, 1]> token_to_int16 = cast(dtype = token_to_int16_dtype_0, x = token)[name = string("cast_9")];
11
+ tensor<fp16, [1, 1, 640]> y_cast_fp16_cast_uint16 = gather(axis = y_axis_0, batch_dims = y_batch_dims_0, indices = token_to_int16, validate_indices = y_validate_indices_0, x = decoder_module_prediction_embed_weight_to_fp16)[name = string("y_cast_fp16_cast_uint16")];
12
+ tensor<int32, [3]> input_3_perm_0 = const()[name = string("input_3_perm_0"), val = tensor<int32, [3]>([1, 0, 2])];
13
+ int32 split_0_num_splits_0 = const()[name = string("split_0_num_splits_0"), val = int32(2)];
14
+ int32 split_0_axis_0 = const()[name = string("split_0_axis_0"), val = int32(0)];
15
+ string h_in_to_fp16_dtype_0 = const()[name = string("h_in_to_fp16_dtype_0"), val = string("fp16")];
16
+ tensor<fp16, [2, 1, 640]> h_in_to_fp16 = cast(dtype = h_in_to_fp16_dtype_0, x = h_in)[name = string("cast_8")];
17
+ tensor<fp16, [1, 1, 640]> split_0_cast_fp16_0, tensor<fp16, [1, 1, 640]> split_0_cast_fp16_1 = split(axis = split_0_axis_0, num_splits = split_0_num_splits_0, x = h_in_to_fp16)[name = string("split_0_cast_fp16")];
18
+ int32 split_1_num_splits_0 = const()[name = string("split_1_num_splits_0"), val = int32(2)];
19
+ int32 split_1_axis_0 = const()[name = string("split_1_axis_0"), val = int32(0)];
20
+ string c_in_to_fp16_dtype_0 = const()[name = string("c_in_to_fp16_dtype_0"), val = string("fp16")];
21
+ tensor<fp16, [2, 1, 640]> c_in_to_fp16 = cast(dtype = c_in_to_fp16_dtype_0, x = c_in)[name = string("cast_7")];
22
+ tensor<fp16, [1, 1, 640]> split_1_cast_fp16_0, tensor<fp16, [1, 1, 640]> split_1_cast_fp16_1 = split(axis = split_1_axis_0, num_splits = split_1_num_splits_0, x = c_in_to_fp16)[name = string("split_1_cast_fp16")];
23
+ tensor<int32, [1]> input_5_lstm_layer_0_lstm_h0_squeeze_axes_0 = const()[name = string("input_5_lstm_layer_0_lstm_h0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
24
+ tensor<fp16, [1, 640]> input_5_lstm_layer_0_lstm_h0_squeeze_cast_fp16 = squeeze(axes = input_5_lstm_layer_0_lstm_h0_squeeze_axes_0, x = split_0_cast_fp16_0)[name = string("input_5_lstm_layer_0_lstm_h0_squeeze_cast_fp16")];
25
+ tensor<int32, [1]> input_5_lstm_layer_0_lstm_c0_squeeze_axes_0 = const()[name = string("input_5_lstm_layer_0_lstm_c0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
26
+ tensor<fp16, [1, 640]> input_5_lstm_layer_0_lstm_c0_squeeze_cast_fp16 = squeeze(axes = input_5_lstm_layer_0_lstm_c0_squeeze_axes_0, x = split_1_cast_fp16_0)[name = string("input_5_lstm_layer_0_lstm_c0_squeeze_cast_fp16")];
27
+ string input_5_lstm_layer_0_direction_0 = const()[name = string("input_5_lstm_layer_0_direction_0"), val = string("forward")];
28
+ bool input_5_lstm_layer_0_output_sequence_0 = const()[name = string("input_5_lstm_layer_0_output_sequence_0"), val = bool(true)];
29
+ string input_5_lstm_layer_0_recurrent_activation_0 = const()[name = string("input_5_lstm_layer_0_recurrent_activation_0"), val = string("sigmoid")];
30
+ string input_5_lstm_layer_0_cell_activation_0 = const()[name = string("input_5_lstm_layer_0_cell_activation_0"), val = string("tanh")];
31
+ string input_5_lstm_layer_0_activation_0 = const()[name = string("input_5_lstm_layer_0_activation_0"), val = string("tanh")];
32
+ tensor<fp16, [2560, 640]> concat_1_to_fp16 = const()[name = string("concat_1_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(1065088)))];
33
+ tensor<fp16, [2560, 640]> concat_2_to_fp16 = const()[name = string("concat_2_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(4341952)))];
34
+ tensor<fp16, [2560]> concat_0_to_fp16 = const()[name = string("concat_0_to_fp16"), val = tensor<fp16, [2560]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(7618816)))];
35
+ tensor<fp16, [1, 1, 640]> input_3_cast_fp16 = transpose(perm = input_3_perm_0, x = y_cast_fp16_cast_uint16)[name = string("transpose_4")];
36
+ tensor<fp16, [1, 1, 640]> input_5_lstm_layer_0_cast_fp16_0, tensor<fp16, [1, 640]> input_5_lstm_layer_0_cast_fp16_1, tensor<fp16, [1, 640]> input_5_lstm_layer_0_cast_fp16_2 = lstm(activation = input_5_lstm_layer_0_activation_0, bias = concat_0_to_fp16, cell_activation = input_5_lstm_layer_0_cell_activation_0, direction = input_5_lstm_layer_0_direction_0, initial_c = input_5_lstm_layer_0_lstm_c0_squeeze_cast_fp16, initial_h = input_5_lstm_layer_0_lstm_h0_squeeze_cast_fp16, output_sequence = input_5_lstm_layer_0_output_sequence_0, recurrent_activation = input_5_lstm_layer_0_recurrent_activation_0, weight_hh = concat_2_to_fp16, weight_ih = concat_1_to_fp16, x = input_3_cast_fp16)[name = string("input_5_lstm_layer_0_cast_fp16")];
37
+ tensor<int32, [1]> input_5_lstm_h0_squeeze_axes_0 = const()[name = string("input_5_lstm_h0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
38
+ tensor<fp16, [1, 640]> input_5_lstm_h0_squeeze_cast_fp16 = squeeze(axes = input_5_lstm_h0_squeeze_axes_0, x = split_0_cast_fp16_1)[name = string("input_5_lstm_h0_squeeze_cast_fp16")];
39
+ tensor<int32, [1]> input_5_lstm_c0_squeeze_axes_0 = const()[name = string("input_5_lstm_c0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
40
+ tensor<fp16, [1, 640]> input_5_lstm_c0_squeeze_cast_fp16 = squeeze(axes = input_5_lstm_c0_squeeze_axes_0, x = split_1_cast_fp16_1)[name = string("input_5_lstm_c0_squeeze_cast_fp16")];
41
+ string input_5_direction_0 = const()[name = string("input_5_direction_0"), val = string("forward")];
42
+ bool input_5_output_sequence_0 = const()[name = string("input_5_output_sequence_0"), val = bool(true)];
43
+ string input_5_recurrent_activation_0 = const()[name = string("input_5_recurrent_activation_0"), val = string("sigmoid")];
44
+ string input_5_cell_activation_0 = const()[name = string("input_5_cell_activation_0"), val = string("tanh")];
45
+ string input_5_activation_0 = const()[name = string("input_5_activation_0"), val = string("tanh")];
46
+ tensor<fp16, [2560, 640]> concat_4_to_fp16 = const()[name = string("concat_4_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(7624000)))];
47
+ tensor<fp16, [2560, 640]> concat_5_to_fp16 = const()[name = string("concat_5_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(10900864)))];
48
+ tensor<fp16, [2560]> concat_3_to_fp16 = const()[name = string("concat_3_to_fp16"), val = tensor<fp16, [2560]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(14177728)))];
49
+ tensor<fp16, [1, 1, 640]> input_5_cast_fp16_0, tensor<fp16, [1, 640]> input_5_cast_fp16_1, tensor<fp16, [1, 640]> input_5_cast_fp16_2 = lstm(activation = input_5_activation_0, bias = concat_3_to_fp16, cell_activation = input_5_cell_activation_0, direction = input_5_direction_0, initial_c = input_5_lstm_c0_squeeze_cast_fp16, initial_h = input_5_lstm_h0_squeeze_cast_fp16, output_sequence = input_5_output_sequence_0, recurrent_activation = input_5_recurrent_activation_0, weight_hh = concat_5_to_fp16, weight_ih = concat_4_to_fp16, x = input_5_lstm_layer_0_cast_fp16_0)[name = string("input_5_cast_fp16")];
50
+ int32 obj_3_axis_0 = const()[name = string("obj_3_axis_0"), val = int32(0)];
51
+ tensor<fp16, [2, 1, 640]> obj_3_cast_fp16 = stack(axis = obj_3_axis_0, values = (input_5_lstm_layer_0_cast_fp16_1, input_5_cast_fp16_1))[name = string("obj_3_cast_fp16")];
52
+ string obj_3_cast_fp16_to_fp32_dtype_0 = const()[name = string("obj_3_cast_fp16_to_fp32_dtype_0"), val = string("fp32")];
53
+ int32 obj_axis_0 = const()[name = string("obj_axis_0"), val = int32(0)];
54
+ tensor<fp16, [2, 1, 640]> obj_cast_fp16 = stack(axis = obj_axis_0, values = (input_5_lstm_layer_0_cast_fp16_2, input_5_cast_fp16_2))[name = string("obj_cast_fp16")];
55
+ string obj_cast_fp16_to_fp32_dtype_0 = const()[name = string("obj_cast_fp16_to_fp32_dtype_0"), val = string("fp32")];
56
+ tensor<int32, [3]> transpose_1_perm_0 = const()[name = string("transpose_1_perm_0"), val = tensor<int32, [3]>([1, 0, 2])];
57
+ tensor<int32, [3]> input_7_perm_0 = const()[name = string("input_7_perm_0"), val = tensor<int32, [3]>([0, 2, 1])];
58
+ string encoder_to_fp16_dtype_0 = const()[name = string("encoder_to_fp16_dtype_0"), val = string("fp16")];
59
+ tensor<fp16, [640, 1024]> joint_module_enc_weight_to_fp16 = const()[name = string("joint_module_enc_weight_to_fp16"), val = tensor<fp16, [640, 1024]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(14182912)))];
60
+ tensor<fp16, [640]> joint_module_enc_bias_to_fp16 = const()[name = string("joint_module_enc_bias_to_fp16"), val = tensor<fp16, [640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(15493696)))];
61
+ tensor<fp16, [1, 1024, 1]> encoder_to_fp16 = cast(dtype = encoder_to_fp16_dtype_0, x = encoder)[name = string("cast_4")];
62
+ tensor<fp16, [1, 1, 1024]> input_7_cast_fp16 = transpose(perm = input_7_perm_0, x = encoder_to_fp16)[name = string("transpose_2")];
63
+ tensor<fp16, [1, 1, 640]> linear_0_cast_fp16 = linear(bias = joint_module_enc_bias_to_fp16, weight = joint_module_enc_weight_to_fp16, x = input_7_cast_fp16)[name = string("linear_0_cast_fp16")];
64
+ tensor<fp16, [640, 640]> joint_module_pred_weight_to_fp16 = const()[name = string("joint_module_pred_weight_to_fp16"), val = tensor<fp16, [640, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(15495040)))];
65
+ tensor<fp16, [640]> joint_module_pred_bias_to_fp16 = const()[name = string("joint_module_pred_bias_to_fp16"), val = tensor<fp16, [640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(16314304)))];
66
+ tensor<fp16, [1, 1, 640]> transpose_1_cast_fp16 = transpose(perm = transpose_1_perm_0, x = input_5_cast_fp16_0)[name = string("transpose_3")];
67
+ tensor<fp16, [1, 1, 640]> linear_1_cast_fp16 = linear(bias = joint_module_pred_bias_to_fp16, weight = joint_module_pred_weight_to_fp16, x = transpose_1_cast_fp16)[name = string("linear_1_cast_fp16")];
68
+ tensor<int32, [1]> var_79_axes_0 = const()[name = string("op_79_axes_0"), val = tensor<int32, [1]>([2])];
69
+ tensor<fp16, [1, 1, 1, 640]> var_79_cast_fp16 = expand_dims(axes = var_79_axes_0, x = linear_0_cast_fp16)[name = string("op_79_cast_fp16")];
70
+ tensor<int32, [1]> var_80_axes_0 = const()[name = string("op_80_axes_0"), val = tensor<int32, [1]>([1])];
71
+ tensor<fp16, [1, 1, 1, 640]> var_80_cast_fp16 = expand_dims(axes = var_80_axes_0, x = linear_1_cast_fp16)[name = string("op_80_cast_fp16")];
72
+ tensor<fp16, [1, 1, 1, 640]> input_11_cast_fp16 = add(x = var_79_cast_fp16, y = var_80_cast_fp16)[name = string("input_11_cast_fp16")];
73
+ tensor<fp16, [1, 1, 1, 640]> input_13_cast_fp16 = relu(x = input_11_cast_fp16)[name = string("input_13_cast_fp16")];
74
+ tensor<fp16, [832, 640]> joint_module_joint_net_2_weight_to_fp16 = const()[name = string("joint_module_joint_net_2_weight_to_fp16"), val = tensor<fp16, [832, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(16315648)))];
75
+ tensor<fp16, [832]> joint_module_joint_net_2_bias_to_fp16 = const()[name = string("joint_module_joint_net_2_bias_to_fp16"), val = tensor<fp16, [832]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(17380672)))];
76
+ tensor<fp16, [1, 1, 1, 832]> linear_2_cast_fp16 = linear(bias = joint_module_joint_net_2_bias_to_fp16, weight = joint_module_joint_net_2_weight_to_fp16, x = input_13_cast_fp16)[name = string("linear_2_cast_fp16")];
77
+ string linear_2_cast_fp16_to_fp32_dtype_0 = const()[name = string("linear_2_cast_fp16_to_fp32_dtype_0"), val = string("fp32")];
78
+ tensor<fp32, [1, 1, 1, 832]> logits = cast(dtype = linear_2_cast_fp16_to_fp32_dtype_0, x = linear_2_cast_fp16)[name = string("cast_3")];
79
+ tensor<fp32, [2, 1, 640]> c_out = cast(dtype = obj_cast_fp16_to_fp32_dtype_0, x = obj_cast_fp16)[name = string("cast_5")];
80
+ tensor<fp32, [2, 1, 640]> h_out = cast(dtype = obj_3_cast_fp16_to_fp32_dtype_0, x = obj_3_cast_fp16)[name = string("cast_6")];
81
+ tensor<int32, [1]> token_length_tmp = identity(x = token_length)[name = string("token_length_tmp")];
82
+ } -> (logits, h_out, c_out);
83
+ }
es/1120ms/decoder_joint.mlmodelc/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:87b9845bb151ff3a361fc70b09adbc8cd194e4db3c264ad930dac0e10bd49929
3
+ size 17382400
es/1120ms/decoder_joint.mlpackage/Data/com.apple.CoreML/model.mlmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0e1d2a4cd1217384e38934290126fec1aeec3220739a5bdbcc20f742b2768860
3
+ size 13745
es/1120ms/decoder_joint.mlpackage/Data/com.apple.CoreML/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:87b9845bb151ff3a361fc70b09adbc8cd194e4db3c264ad930dac0e10bd49929
3
+ size 17382400
es/1120ms/decoder_joint.mlpackage/Manifest.json ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "fileFormatVersion": "1.0.0",
3
+ "itemInfoEntries": {
4
+ "697CAFDC-9AF0-4BDE-864E-5347D1B6BE21": {
5
+ "author": "com.apple.CoreML",
6
+ "description": "CoreML Model Specification",
7
+ "name": "model.mlmodel",
8
+ "path": "com.apple.CoreML/model.mlmodel"
9
+ },
10
+ "70D75E2B-39B1-4F21-AC9F-57B31E52DDEF": {
11
+ "author": "com.apple.CoreML",
12
+ "description": "CoreML Model Weights",
13
+ "name": "weights",
14
+ "path": "com.apple.CoreML/weights"
15
+ }
16
+ },
17
+ "rootModelIdentifier": "697CAFDC-9AF0-4BDE-864E-5347D1B6BE21"
18
+ }
es/1120ms/encoder.mlmodelc/analytics/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0638780288ed25026170632a153dbed5d798954deac843fa58ddaae3190914d4
3
+ size 243
es/1120ms/encoder.mlmodelc/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f68f09c6358cf29875a774c8dee3a5f2b79bf9f85bca6404f10e34a40ac28248
3
+ size 662
es/1120ms/encoder.mlmodelc/model.mil ADDED
The diff for this file is too large to render. See raw diff
 
es/1120ms/encoder.mlmodelc/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:011a5342cc1e2901633a8f0468be561f50dfc289ebe51851cddb4831f9a6a23f
3
+ size 565952640
es/1120ms/encoder.mlpackage/Data/com.apple.CoreML/model.mlmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:14655ea0dbccc666356247f05afc87bbea77ff469344bfb084526e00c0ce6d15
3
+ size 804512
es/1120ms/encoder.mlpackage/Data/com.apple.CoreML/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:011a5342cc1e2901633a8f0468be561f50dfc289ebe51851cddb4831f9a6a23f
3
+ size 565952640
es/1120ms/encoder.mlpackage/Manifest.json ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "fileFormatVersion": "1.0.0",
3
+ "itemInfoEntries": {
4
+ "5A1F3899-93C0-4456-9DE6-B2D78CDDE258": {
5
+ "author": "com.apple.CoreML",
6
+ "description": "CoreML Model Weights",
7
+ "name": "weights",
8
+ "path": "com.apple.CoreML/weights"
9
+ },
10
+ "E2FF78FE-1F88-4C4D-820E-E59B536101F4": {
11
+ "author": "com.apple.CoreML",
12
+ "description": "CoreML Model Specification",
13
+ "name": "model.mlmodel",
14
+ "path": "com.apple.CoreML/model.mlmodel"
15
+ }
16
+ },
17
+ "rootModelIdentifier": "E2FF78FE-1F88-4C4D-820E-E59B536101F4"
18
+ }
es/1120ms/joint.mlmodelc/analytics/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9f887b7ea560fb7d01eb634d18b5785cf01d846c22dbdd31183155f4b2f64a39
3
+ size 243
es/1120ms/joint.mlmodelc/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9374f72f67b3de1571570c8fad01a52e2003755b10f0e0b8799623e2c5ff114f
3
+ size 341
es/1120ms/joint.mlmodelc/model.mil ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ program(1.3)
2
+ [buildInfo = dict<string, string>({{"coremlc-component-MIL", "3520.4.1"}, {"coremlc-version", "3520.5.1"}, {"coremltools-component-torch", "2.5.1"}, {"coremltools-source-dialect", "TorchScript"}, {"coremltools-version", "8.3.0"}})]
3
+ {
4
+ func main<ios18>(tensor<fp32, [1, 640, 1]> decoder, tensor<fp32, [1, 1024, 1]> encoder) {
5
+ tensor<int32, [3]> input_1_perm_0 = const()[name = string("input_1_perm_0"), val = tensor<int32, [3]>([0, 2, 1])];
6
+ string encoder_to_fp16_dtype_0 = const()[name = string("encoder_to_fp16_dtype_0"), val = string("fp16")];
7
+ tensor<int32, [3]> input_3_perm_0 = const()[name = string("input_3_perm_0"), val = tensor<int32, [3]>([0, 2, 1])];
8
+ string decoder_to_fp16_dtype_0 = const()[name = string("decoder_to_fp16_dtype_0"), val = string("fp16")];
9
+ tensor<fp16, [640, 1024]> module_enc_weight_to_fp16 = const()[name = string("module_enc_weight_to_fp16"), val = tensor<fp16, [640, 1024]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(64)))];
10
+ tensor<fp16, [640]> module_enc_bias_to_fp16 = const()[name = string("module_enc_bias_to_fp16"), val = tensor<fp16, [640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(1310848)))];
11
+ tensor<fp16, [1, 1024, 1]> encoder_to_fp16 = cast(dtype = encoder_to_fp16_dtype_0, x = encoder)[name = string("cast_2")];
12
+ tensor<fp16, [1, 1, 1024]> input_1_cast_fp16 = transpose(perm = input_1_perm_0, x = encoder_to_fp16)[name = string("transpose_1")];
13
+ tensor<fp16, [1, 1, 640]> linear_0_cast_fp16 = linear(bias = module_enc_bias_to_fp16, weight = module_enc_weight_to_fp16, x = input_1_cast_fp16)[name = string("linear_0_cast_fp16")];
14
+ tensor<fp16, [640, 640]> module_pred_weight_to_fp16 = const()[name = string("module_pred_weight_to_fp16"), val = tensor<fp16, [640, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(1312192)))];
15
+ tensor<fp16, [640]> module_pred_bias_to_fp16 = const()[name = string("module_pred_bias_to_fp16"), val = tensor<fp16, [640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(2131456)))];
16
+ tensor<fp16, [1, 640, 1]> decoder_to_fp16 = cast(dtype = decoder_to_fp16_dtype_0, x = decoder)[name = string("cast_1")];
17
+ tensor<fp16, [1, 1, 640]> input_3_cast_fp16 = transpose(perm = input_3_perm_0, x = decoder_to_fp16)[name = string("transpose_0")];
18
+ tensor<fp16, [1, 1, 640]> linear_1_cast_fp16 = linear(bias = module_pred_bias_to_fp16, weight = module_pred_weight_to_fp16, x = input_3_cast_fp16)[name = string("linear_1_cast_fp16")];
19
+ tensor<int32, [1]> var_23_axes_0 = const()[name = string("op_23_axes_0"), val = tensor<int32, [1]>([2])];
20
+ tensor<fp16, [1, 1, 1, 640]> var_23_cast_fp16 = expand_dims(axes = var_23_axes_0, x = linear_0_cast_fp16)[name = string("op_23_cast_fp16")];
21
+ tensor<int32, [1]> var_25_axes_0 = const()[name = string("op_25_axes_0"), val = tensor<int32, [1]>([1])];
22
+ tensor<fp16, [1, 1, 1, 640]> var_25_cast_fp16 = expand_dims(axes = var_25_axes_0, x = linear_1_cast_fp16)[name = string("op_25_cast_fp16")];
23
+ tensor<fp16, [1, 1, 1, 640]> input_5_cast_fp16 = add(x = var_23_cast_fp16, y = var_25_cast_fp16)[name = string("input_5_cast_fp16")];
24
+ tensor<fp16, [1, 1, 1, 640]> input_7_cast_fp16 = relu(x = input_5_cast_fp16)[name = string("input_7_cast_fp16")];
25
+ tensor<fp16, [832, 640]> module_joint_net_2_weight_to_fp16 = const()[name = string("module_joint_net_2_weight_to_fp16"), val = tensor<fp16, [832, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(2132800)))];
26
+ tensor<fp16, [832]> module_joint_net_2_bias_to_fp16 = const()[name = string("module_joint_net_2_bias_to_fp16"), val = tensor<fp16, [832]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(3197824)))];
27
+ tensor<fp16, [1, 1, 1, 832]> linear_2_cast_fp16 = linear(bias = module_joint_net_2_bias_to_fp16, weight = module_joint_net_2_weight_to_fp16, x = input_7_cast_fp16)[name = string("linear_2_cast_fp16")];
28
+ string linear_2_cast_fp16_to_fp32_dtype_0 = const()[name = string("linear_2_cast_fp16_to_fp32_dtype_0"), val = string("fp32")];
29
+ tensor<fp32, [1, 1, 1, 832]> logits = cast(dtype = linear_2_cast_fp16_to_fp32_dtype_0, x = linear_2_cast_fp16)[name = string("cast_0")];
30
+ } -> (logits);
31
+ }
es/1120ms/joint.mlmodelc/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:fab26b1275d86fce5d44c967296fa6a27309cd235a8cb5b45dde07150076b5b4
3
+ size 3199552
es/1120ms/joint.mlpackage/Data/com.apple.CoreML/model.mlmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:548c27ebedec8d425f6a455597ac17e6eea792556b7855889d1828155a9d6e33
3
+ size 4486
es/1120ms/joint.mlpackage/Data/com.apple.CoreML/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:fab26b1275d86fce5d44c967296fa6a27309cd235a8cb5b45dde07150076b5b4
3
+ size 3199552
es/1120ms/joint.mlpackage/Manifest.json ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "fileFormatVersion": "1.0.0",
3
+ "itemInfoEntries": {
4
+ "229533BF-AD08-49EA-A7C8-2D97F9533D31": {
5
+ "author": "com.apple.CoreML",
6
+ "description": "CoreML Model Weights",
7
+ "name": "weights",
8
+ "path": "com.apple.CoreML/weights"
9
+ },
10
+ "CC897513-5590-4EEB-9563-434963785E7B": {
11
+ "author": "com.apple.CoreML",
12
+ "description": "CoreML Model Specification",
13
+ "name": "model.mlmodel",
14
+ "path": "com.apple.CoreML/model.mlmodel"
15
+ }
16
+ },
17
+ "rootModelIdentifier": "CC897513-5590-4EEB-9563-434963785E7B"
18
+ }
es/1120ms/metadata.json ADDED
@@ -0,0 +1,198 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model": "nvidia/nemotron-asr-streaming-multilingual-0.6b",
3
+ "model_class": "nemo.collections.asr.models.rnnt_bpe_models_prompt.EncDecRNNTBPEModelWithPrompt",
4
+ "sample_rate": 16000,
5
+ "mel_features": 128,
6
+ "chunk_mel_frames": 112,
7
+ "pre_encode_cache": 9,
8
+ "total_mel_frames": 121,
9
+ "att_context_size": [
10
+ 42,
11
+ 13
12
+ ],
13
+ "vocab_size": 831,
14
+ "blank_idx": 831,
15
+ "vocab_pruned": true,
16
+ "vocab_pruned_original_size": 13087,
17
+ "cache_channel_shape": [
18
+ 1,
19
+ 24,
20
+ 42,
21
+ 1024
22
+ ],
23
+ "cache_time_shape": [
24
+ 1,
25
+ 24,
26
+ 1024,
27
+ 8
28
+ ],
29
+ "decoder_hidden": 640,
30
+ "decoder_layers": 2,
31
+ "encoder_dim": 1024,
32
+ "num_prompts": 128,
33
+ "prompt_dictionary": {
34
+ "af-ZA": 54,
35
+ "am-ET": 49,
36
+ "ar": 7,
37
+ "ar-AR": 7,
38
+ "auto": 101,
39
+ "ay-BO": 81,
40
+ "az-AZ": 66,
41
+ "bg": 30,
42
+ "bg-BG": 30,
43
+ "bn-IN": 36,
44
+ "cs": 22,
45
+ "cs-CZ": 22,
46
+ "da": 25,
47
+ "da-DK": 25,
48
+ "de": 9,
49
+ "de-DE": 9,
50
+ "el": 21,
51
+ "el-GR": 21,
52
+ "en": 0,
53
+ "en-GB": 1,
54
+ "en-US": 0,
55
+ "enGB": 1,
56
+ "es": 3,
57
+ "es-ES": 2,
58
+ "es-US": 3,
59
+ "esES": 2,
60
+ "et": 60,
61
+ "et-EE": 60,
62
+ "fa-IR": 38,
63
+ "fi": 26,
64
+ "fi-FI": 26,
65
+ "fr": 8,
66
+ "fr-CA": 100,
67
+ "fr-FR": 8,
68
+ "gn-PY": 82,
69
+ "gu-IN": 42,
70
+ "ha-NG": 50,
71
+ "haw-US": 97,
72
+ "he-IL": 64,
73
+ "hi": 6,
74
+ "hi-HI": 6,
75
+ "hi-IN": 6,
76
+ "hr": 29,
77
+ "hr-HR": 29,
78
+ "hu": 23,
79
+ "hu-HU": 23,
80
+ "hy-AM": 68,
81
+ "id-ID": 34,
82
+ "ig-NG": 53,
83
+ "it": 15,
84
+ "it-IT": 15,
85
+ "ja-JA": 10,
86
+ "ja-JP": 10,
87
+ "ka-GE": 67,
88
+ "km-KH": 47,
89
+ "kn-IN": 43,
90
+ "ko": 14,
91
+ "ko-KO": 14,
92
+ "ko-KR": 14,
93
+ "ku-TR": 65,
94
+ "ky-KG": 71,
95
+ "ln-CD": 58,
96
+ "lt": 31,
97
+ "lt-LT": 31,
98
+ "lv": 61,
99
+ "lv-LV": 61,
100
+ "mi-NZ": 96,
101
+ "ml-IN": 44,
102
+ "mr-IN": 41,
103
+ "ms-MY": 35,
104
+ "mt-MT": 102,
105
+ "nah-MX": 83,
106
+ "nb": 103,
107
+ "nb-NO": 103,
108
+ "ne-NP": 46,
109
+ "nl": 16,
110
+ "nl-NL": 16,
111
+ "nn": 104,
112
+ "nn-NO": 104,
113
+ "no": 27,
114
+ "no-NO": 27,
115
+ "ny-MW": 57,
116
+ "or-KE": 59,
117
+ "pl": 17,
118
+ "pl-PL": 17,
119
+ "pt": 13,
120
+ "pt-BR": 12,
121
+ "pt-PT": 13,
122
+ "qu-PE": 80,
123
+ "ro": 20,
124
+ "ro-RO": 20,
125
+ "ru": 11,
126
+ "ru-RU": 11,
127
+ "rw-RW": 55,
128
+ "si-LK": 45,
129
+ "sk": 28,
130
+ "sk-SK": 28,
131
+ "sl": 62,
132
+ "sl-SI": 62,
133
+ "sm-WS": 98,
134
+ "so-SO": 56,
135
+ "sv": 24,
136
+ "sv-SE": 24,
137
+ "sw-KE": 48,
138
+ "ta-IN": 39,
139
+ "te-IN": 40,
140
+ "tg-TJ": 70,
141
+ "th-TH": 32,
142
+ "to-TO": 99,
143
+ "tr": 18,
144
+ "tr-TR": 18,
145
+ "uk": 19,
146
+ "uk-UA": 19,
147
+ "ur-PK": 37,
148
+ "uz-UZ": 69,
149
+ "vi-VN": 33,
150
+ "yo-NG": 52,
151
+ "zh-CN": 4,
152
+ "zh-TW": 5,
153
+ "zh-ZH": 4,
154
+ "zu-ZA": 51
155
+ },
156
+ "default_prompt_id": 101,
157
+ "lang_tag_token_ids": [
158
+ 1,
159
+ 59,
160
+ 117,
161
+ 165,
162
+ 226,
163
+ 227,
164
+ 260,
165
+ 275,
166
+ 332,
167
+ 364,
168
+ 379,
169
+ 429,
170
+ 448,
171
+ 470,
172
+ 493,
173
+ 523,
174
+ 559,
175
+ 583,
176
+ 584,
177
+ 596,
178
+ 607,
179
+ 628,
180
+ 629,
181
+ 647,
182
+ 669,
183
+ 681,
184
+ 740,
185
+ 750,
186
+ 769,
187
+ 770,
188
+ 772,
189
+ 773,
190
+ 774,
191
+ 778,
192
+ 794,
193
+ 812,
194
+ 813,
195
+ 827,
196
+ 828
197
+ ]
198
+ }
es/1120ms/preprocessor.mlmodelc/analytics/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:422a77fc3b64b27260a8ae2031d287abaa1630d1ebc70343e9dcd280dd4c7e5c
3
+ size 243
es/1120ms/preprocessor.mlmodelc/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:41ec4b4c1059ff1f2ac7c71d90b1da0caf9244499d06f6c9de175a1ef992bec1
3
+ size 371
es/1120ms/preprocessor.mlmodelc/model.mil ADDED
@@ -0,0 +1,122 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ program(1.3)
2
+ [buildInfo = dict<string, string>({{"coremlc-component-MIL", "3520.4.1"}, {"coremlc-version", "3520.5.1"}, {"coremltools-component-torch", "2.5.1"}, {"coremltools-source-dialect", "TorchScript"}, {"coremltools-version", "8.3.0"}})]
3
+ {
4
+ func main<ios18>(tensor<fp32, [1, ?]> audio, tensor<int32, [1]> audio_length) [FlexibleShapeInformation = tuple<tuple<string, dict<string, tensor<int32, [?]>>>, tuple<string, dict<string, list<tensor<int32, [2]>, ?>>>>((("DefaultShapes", {{"audio", [1, 1]}}), ("RangeDims", {{"audio", [[1, 1], [1, 480000]]}})))] {
5
+ int32 var_9 = const()[name = string("op_9"), val = int32(1)];
6
+ int32 var_10 = const()[name = string("op_10"), val = int32(160)];
7
+ int32 var_12 = const()[name = string("op_12"), val = int32(0)];
8
+ int32 var_33 = const()[name = string("op_33"), val = int32(512)];
9
+ tensor<int32, [1]> var_34 = add(x = audio_length, y = var_33)[name = string("op_34")];
10
+ int32 var_35 = const()[name = string("op_35"), val = int32(512)];
11
+ tensor<int32, [1]> var_36 = sub(x = var_34, y = var_35)[name = string("op_36")];
12
+ tensor<int32, [1]> floor_div_0 = floor_div(x = var_36, y = var_10)[name = string("floor_div_0")];
13
+ tensor<bool, [1]> var_39 = equal(x = audio_length, y = var_12)[name = string("op_39")];
14
+ tensor<int32, [1]> var_40 = const()[name = string("op_40"), val = tensor<int32, [1]>([0])];
15
+ tensor<int32, [1]> mel_length = select(a = var_40, b = floor_div_0, cond = var_39)[name = string("seq_len")];
16
+ string audio_to_fp16_dtype_0 = const()[name = string("audio_to_fp16_dtype_0"), val = string("fp16")];
17
+ tensor<fp16, [1, ?]> audio_to_fp16 = cast(dtype = audio_to_fp16_dtype_0, x = audio)[name = string("cast_14")];
18
+ tensor<int32, [2]> var_42_shape_cast_fp16 = shape(x = audio_to_fp16)[name = string("op_42_shape_cast_fp16")];
19
+ int32 gather_0_axis_0 = const()[name = string("gather_0_axis_0"), val = int32(0)];
20
+ int32 gather_0_batch_dims_0 = const()[name = string("gather_0_batch_dims_0"), val = int32(0)];
21
+ bool gather_0_validate_indices_0 = const()[name = string("gather_0_validate_indices_0"), val = bool(false)];
22
+ string var_42_shape_cast_fp16_to_int16_dtype_0 = const()[name = string("op_42_shape_cast_fp16_to_int16_dtype_0"), val = string("int16")];
23
+ uint16 select_0_to_uint16 = const()[name = string("select_0_to_uint16"), val = uint16(1)];
24
+ tensor<int16, [2]> var_42_shape_cast_fp16_to_int16 = cast(dtype = var_42_shape_cast_fp16_to_int16_dtype_0, x = var_42_shape_cast_fp16)[name = string("cast_13")];
25
+ int16 gather_0_cast_uint16 = gather(axis = gather_0_axis_0, batch_dims = gather_0_batch_dims_0, indices = select_0_to_uint16, validate_indices = gather_0_validate_indices_0, x = var_42_shape_cast_fp16_to_int16)[name = string("gather_0_cast_uint16")];
26
+ string gather_0_cast_uint16_to_int32_dtype_0 = const()[name = string("gather_0_cast_uint16_to_int32_dtype_0"), val = string("int32")];
27
+ int32 const_0 = const()[name = string("const_0"), val = int32(0)];
28
+ int32 const_1 = const()[name = string("const_1"), val = int32(1)];
29
+ int32 gather_0_cast_uint16_to_int32 = cast(dtype = gather_0_cast_uint16_to_int32_dtype_0, x = gather_0_cast_uint16)[name = string("cast_12")];
30
+ tensor<int32, [?]> var_43 = range_1d(end = gather_0_cast_uint16_to_int32, start = const_0, step = const_1)[name = string("op_43")];
31
+ tensor<int32, [1]> var_44_axes_0 = const()[name = string("op_44_axes_0"), val = tensor<int32, [1]>([0])];
32
+ tensor<int32, [1, ?]> var_44 = expand_dims(axes = var_44_axes_0, x = var_43)[name = string("op_44")];
33
+ tensor<int32, [1]> var_45_axes_0 = const()[name = string("op_45_axes_0"), val = tensor<int32, [1]>([1])];
34
+ tensor<int32, [1, 1]> var_45 = expand_dims(axes = var_45_axes_0, x = audio_length)[name = string("op_45")];
35
+ tensor<bool, [1, ?]> timemask = less(x = var_44, y = var_45)[name = string("timemask")];
36
+ tensor<int32, [2]> var_48_begin_0 = const()[name = string("op_48_begin_0"), val = tensor<int32, [2]>([0, 0])];
37
+ tensor<int32, [2]> var_48_end_0 = const()[name = string("op_48_end_0"), val = tensor<int32, [2]>([1, 1])];
38
+ tensor<bool, [2]> var_48_end_mask_0 = const()[name = string("op_48_end_mask_0"), val = tensor<bool, [2]>([true, false])];
39
+ tensor<bool, [2]> var_48_squeeze_mask_0 = const()[name = string("op_48_squeeze_mask_0"), val = tensor<bool, [2]>([false, true])];
40
+ tensor<fp16, [1]> var_48_cast_fp16 = slice_by_index(begin = var_48_begin_0, end = var_48_end_0, end_mask = var_48_end_mask_0, squeeze_mask = var_48_squeeze_mask_0, x = audio_to_fp16)[name = string("op_48_cast_fp16")];
41
+ tensor<int32, [1]> var_49_axes_0 = const()[name = string("op_49_axes_0"), val = tensor<int32, [1]>([1])];
42
+ tensor<fp16, [1, 1]> var_49_cast_fp16 = expand_dims(axes = var_49_axes_0, x = var_48_cast_fp16)[name = string("op_49_cast_fp16")];
43
+ tensor<int32, [2]> var_51_begin_0 = const()[name = string("op_51_begin_0"), val = tensor<int32, [2]>([0, 1])];
44
+ tensor<int32, [2]> var_51_end_0 = const()[name = string("op_51_end_0"), val = tensor<int32, [2]>([1, 0])];
45
+ tensor<bool, [2]> var_51_end_mask_0 = const()[name = string("op_51_end_mask_0"), val = tensor<bool, [2]>([true, true])];
46
+ tensor<fp16, [1, ?]> var_51_cast_fp16 = slice_by_index(begin = var_51_begin_0, end = var_51_end_0, end_mask = var_51_end_mask_0, x = audio_to_fp16)[name = string("op_51_cast_fp16")];
47
+ tensor<int32, [2]> var_53_begin_0 = const()[name = string("op_53_begin_0"), val = tensor<int32, [2]>([0, 0])];
48
+ tensor<int32, [2]> var_53_end_0 = const()[name = string("op_53_end_0"), val = tensor<int32, [2]>([1, -1])];
49
+ tensor<bool, [2]> var_53_end_mask_0 = const()[name = string("op_53_end_mask_0"), val = tensor<bool, [2]>([true, false])];
50
+ tensor<fp16, [1, ?]> var_53_cast_fp16 = slice_by_index(begin = var_53_begin_0, end = var_53_end_0, end_mask = var_53_end_mask_0, x = audio_to_fp16)[name = string("op_53_cast_fp16")];
51
+ fp16 var_54_to_fp16 = const()[name = string("op_54_to_fp16"), val = fp16(0x1.f0cp-1)];
52
+ tensor<fp16, [1, ?]> var_55_cast_fp16 = mul(x = var_53_cast_fp16, y = var_54_to_fp16)[name = string("op_55_cast_fp16")];
53
+ tensor<fp16, [1, ?]> var_56_cast_fp16 = sub(x = var_51_cast_fp16, y = var_55_cast_fp16)[name = string("op_56_cast_fp16")];
54
+ bool x_3_interleave_0 = const()[name = string("x_3_interleave_0"), val = bool(false)];
55
+ tensor<fp16, [1, ?]> x_3_cast_fp16 = concat(axis = var_9, interleave = x_3_interleave_0, values = (var_49_cast_fp16, var_56_cast_fp16))[name = string("x_3_cast_fp16")];
56
+ tensor<bool, [1, ?]> var_59 = logical_not(x = timemask)[name = string("op_59")];
57
+ fp16 var_16_to_fp16 = const()[name = string("op_16_to_fp16"), val = fp16(0x0p+0)];
58
+ tensor<fp16, [1, ?]> input_1_cast_fp16 = select(a = var_16_to_fp16, b = x_3_cast_fp16, cond = var_59)[name = string("input_1_cast_fp16")];
59
+ tensor<int32, [3]> concat_1x = const()[name = string("concat_1x"), val = tensor<int32, [3]>([1, 1, -1])];
60
+ tensor<fp16, [1, 1, ?]> input_3_cast_fp16 = reshape(shape = concat_1x, x = input_1_cast_fp16)[name = string("input_3_cast_fp16")];
61
+ tensor<int32, [6]> input_5_pad_0 = const()[name = string("input_5_pad_0"), val = tensor<int32, [6]>([0, 0, 0, 0, 256, 256])];
62
+ string input_5_mode_0 = const()[name = string("input_5_mode_0"), val = string("constant")];
63
+ fp16 const_3_to_fp16 = const()[name = string("const_3_to_fp16"), val = fp16(0x0p+0)];
64
+ tensor<fp16, [1, 1, ?]> input_5_cast_fp16 = pad(constant_val = const_3_to_fp16, mode = input_5_mode_0, pad = input_5_pad_0, x = input_3_cast_fp16)[name = string("input_5_cast_fp16")];
65
+ tensor<int32, [2]> concat_2x = const()[name = string("concat_2x"), val = tensor<int32, [2]>([1, -1])];
66
+ tensor<fp16, [1, ?]> input_cast_fp16 = reshape(shape = concat_2x, x = input_5_cast_fp16)[name = string("input_cast_fp16")];
67
+ tensor<int32, [1]> expand_dims_3 = const()[name = string("expand_dims_3"), val = tensor<int32, [1]>([160])];
68
+ tensor<int32, [1]> expand_dims_4_axes_0 = const()[name = string("expand_dims_4_axes_0"), val = tensor<int32, [1]>([1])];
69
+ tensor<fp16, [1, 1, ?]> expand_dims_4_cast_fp16 = expand_dims(axes = expand_dims_4_axes_0, x = input_cast_fp16)[name = string("expand_dims_4_cast_fp16")];
70
+ string conv_0_pad_type_0 = const()[name = string("conv_0_pad_type_0"), val = string("valid")];
71
+ tensor<int32, [2]> conv_0_pad_0 = const()[name = string("conv_0_pad_0"), val = tensor<int32, [2]>([0, 0])];
72
+ tensor<int32, [1]> conv_0_dilations_0 = const()[name = string("conv_0_dilations_0"), val = tensor<int32, [1]>([1])];
73
+ int32 conv_0_groups_0 = const()[name = string("conv_0_groups_0"), val = int32(1)];
74
+ tensor<fp16, [257, 1, 512]> expand_dims_1_to_fp16 = const()[name = string("expand_dims_1_to_fp16"), val = tensor<fp16, [257, 1, 512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(64)))];
75
+ tensor<fp16, [1, 257, ?]> 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 = string("conv_0_cast_fp16")];
76
+ string conv_1_pad_type_0 = const()[name = string("conv_1_pad_type_0"), val = string("valid")];
77
+ tensor<int32, [2]> conv_1_pad_0 = const()[name = string("conv_1_pad_0"), val = tensor<int32, [2]>([0, 0])];
78
+ tensor<int32, [1]> conv_1_dilations_0 = const()[name = string("conv_1_dilations_0"), val = tensor<int32, [1]>([1])];
79
+ int32 conv_1_groups_0 = const()[name = string("conv_1_groups_0"), val = int32(1)];
80
+ tensor<fp16, [257, 1, 512]> expand_dims_2_to_fp16 = const()[name = string("expand_dims_2_to_fp16"), val = tensor<fp16, [257, 1, 512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(263296)))];
81
+ tensor<fp16, [1, 257, ?]> 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 = string("conv_1_cast_fp16")];
82
+ int32 stack_0_axis_0 = const()[name = string("stack_0_axis_0"), val = int32(-1)];
83
+ tensor<fp16, [1, 257, ?, 2]> stack_0_cast_fp16 = stack(axis = stack_0_axis_0, values = (conv_0_cast_fp16, conv_1_cast_fp16))[name = string("stack_0_cast_fp16")];
84
+ fp16 var_19_promoted_to_fp16 = const()[name = string("op_19_promoted_to_fp16"), val = fp16(0x1p+1)];
85
+ tensor<fp16, [1, 257, ?, 2]> var_74_cast_fp16 = pow(x = stack_0_cast_fp16, y = var_19_promoted_to_fp16)[name = string("op_74_cast_fp16")];
86
+ tensor<int32, [1]> var_76_axes_0 = const()[name = string("op_76_axes_0"), val = tensor<int32, [1]>([-1])];
87
+ bool var_76_keep_dims_0 = const()[name = string("op_76_keep_dims_0"), val = bool(false)];
88
+ tensor<fp16, [1, 257, ?]> var_76_cast_fp16 = reduce_sum(axes = var_76_axes_0, keep_dims = var_76_keep_dims_0, x = var_74_cast_fp16)[name = string("op_76_cast_fp16")];
89
+ tensor<fp16, [1, 257, ?]> x_11_cast_fp16 = identity(x = var_76_cast_fp16)[name = string("x_11_cast_fp16")];
90
+ bool x_13_transpose_x_0 = const()[name = string("x_13_transpose_x_0"), val = bool(false)];
91
+ bool x_13_transpose_y_0 = const()[name = string("x_13_transpose_y_0"), val = bool(false)];
92
+ tensor<fp16, [1, 128, 257]> const_4_to_fp16 = const()[name = string("const_4_to_fp16"), val = tensor<fp16, [1, 128, 257]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(526528)))];
93
+ tensor<fp16, [1, 128, ?]> x_13_cast_fp16 = matmul(transpose_x = x_13_transpose_x_0, transpose_y = x_13_transpose_y_0, x = const_4_to_fp16, y = x_11_cast_fp16)[name = string("x_13_cast_fp16")];
94
+ fp16 var_83_to_fp16 = const()[name = string("op_83_to_fp16"), val = fp16(0x1p-24)];
95
+ tensor<fp16, [1, 128, ?]> var_84_cast_fp16 = add(x = x_13_cast_fp16, y = var_83_to_fp16)[name = string("op_84_cast_fp16")];
96
+ fp32 x_epsilon_0 = const()[name = string("x_epsilon_0"), val = fp32(0x1p-149)];
97
+ tensor<fp16, [1, 128, ?]> x_cast_fp16 = log(epsilon = x_epsilon_0, x = var_84_cast_fp16)[name = string("x_cast_fp16")];
98
+ tensor<int32, [3]> var_86_shape_cast_fp16 = shape(x = x_cast_fp16)[name = string("op_86_shape_cast_fp16")];
99
+ int32 gather_5_axis_0 = const()[name = string("gather_5_axis_0"), val = int32(0)];
100
+ int32 gather_5_batch_dims_0 = const()[name = string("gather_5_batch_dims_0"), val = int32(0)];
101
+ bool gather_5_validate_indices_0 = const()[name = string("gather_5_validate_indices_0"), val = bool(false)];
102
+ string var_86_shape_cast_fp16_to_uint16_dtype_0 = const()[name = string("op_86_shape_cast_fp16_to_uint16_dtype_0"), val = string("uint16")];
103
+ uint16 select_5_to_uint16 = const()[name = string("select_5_to_uint16"), val = uint16(2)];
104
+ tensor<uint16, [3]> var_86_shape_cast_fp16_to_uint16 = cast(dtype = var_86_shape_cast_fp16_to_uint16_dtype_0, x = var_86_shape_cast_fp16)[name = string("cast_11")];
105
+ uint16 gather_5_cast_uint16 = gather(axis = gather_5_axis_0, batch_dims = gather_5_batch_dims_0, indices = select_5_to_uint16, validate_indices = gather_5_validate_indices_0, x = var_86_shape_cast_fp16_to_uint16)[name = string("gather_5_cast_uint16")];
106
+ string gather_5_cast_uint16_to_int32_dtype_0 = const()[name = string("gather_5_cast_uint16_to_int32_dtype_0"), val = string("int32")];
107
+ int32 const_5 = const()[name = string("const_5"), val = int32(0)];
108
+ int32 const_6 = const()[name = string("const_6"), val = int32(1)];
109
+ int32 gather_5_cast_uint16_to_int32 = cast(dtype = gather_5_cast_uint16_to_int32_dtype_0, x = gather_5_cast_uint16)[name = string("cast_10")];
110
+ tensor<int32, [?]> mask_1 = range_1d(end = gather_5_cast_uint16_to_int32, start = const_5, step = const_6)[name = string("mask_1")];
111
+ tensor<int32, [1]> expand_dims_0_axes_0 = const()[name = string("expand_dims_0_axes_0"), val = tensor<int32, [1]>([0])];
112
+ tensor<int32, [1, ?]> expand_dims_0 = expand_dims(axes = expand_dims_0_axes_0, x = mask_1)[name = string("expand_dims_0")];
113
+ tensor<int32, [1]> var_91_axes_0 = const()[name = string("op_91_axes_0"), val = tensor<int32, [1]>([1])];
114
+ tensor<int32, [1, 1]> var_91 = expand_dims(axes = var_91_axes_0, x = mel_length)[name = string("op_91")];
115
+ tensor<bool, [1, ?]> mask = greater_equal(x = expand_dims_0, y = var_91)[name = string("mask")];
116
+ tensor<int32, [1]> var_93_axes_0 = const()[name = string("op_93_axes_0"), val = tensor<int32, [1]>([1])];
117
+ tensor<bool, [1, 1, ?]> var_93 = expand_dims(axes = var_93_axes_0, x = mask)[name = string("op_93")];
118
+ tensor<fp16, [1, 128, ?]> processed_signal_cast_fp16 = select(a = var_16_to_fp16, b = x_cast_fp16, cond = var_93)[name = string("processed_signal_cast_fp16")];
119
+ string processed_signal_cast_fp16_to_fp32_dtype_0 = const()[name = string("processed_signal_cast_fp16_to_fp32_dtype_0"), val = string("fp32")];
120
+ tensor<fp32, [1, 128, ?]> mel = cast(dtype = processed_signal_cast_fp16_to_fp32_dtype_0, x = processed_signal_cast_fp16)[name = string("cast_9")];
121
+ } -> (mel, mel_length);
122
+ }
es/1120ms/preprocessor.mlmodelc/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:297514e2b211d14b0e53cb97193d679bb89ead98d28e578f3f1d049ddbcc36b3
3
+ size 592384
es/1120ms/preprocessor.mlpackage/Data/com.apple.CoreML/model.mlmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:912e39c12c0ddeb4d3716693621d0140bb7de556056ab8dc9e5cd9336ebf1baa
3
+ size 15878
es/1120ms/preprocessor.mlpackage/Data/com.apple.CoreML/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:297514e2b211d14b0e53cb97193d679bb89ead98d28e578f3f1d049ddbcc36b3
3
+ size 592384
es/1120ms/preprocessor.mlpackage/Manifest.json ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "fileFormatVersion": "1.0.0",
3
+ "itemInfoEntries": {
4
+ "470B2EDA-A2F1-4777-8F1D-55E0D6A275A8": {
5
+ "author": "com.apple.CoreML",
6
+ "description": "CoreML Model Specification",
7
+ "name": "model.mlmodel",
8
+ "path": "com.apple.CoreML/model.mlmodel"
9
+ },
10
+ "D83A1966-0388-45B9-9CA7-1DACB258C26C": {
11
+ "author": "com.apple.CoreML",
12
+ "description": "CoreML Model Weights",
13
+ "name": "weights",
14
+ "path": "com.apple.CoreML/weights"
15
+ }
16
+ },
17
+ "rootModelIdentifier": "470B2EDA-A2F1-4777-8F1D-55E0D6A275A8"
18
+ }
es/1120ms/tokenizer.json ADDED
@@ -0,0 +1,834 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "0": "<unk>",
3
+ "1": "<bg-BG>",
4
+ "2": "▁",
5
+ "3": ".",
6
+ "4": ",",
7
+ "5": "e",
8
+ "6": "t",
9
+ "7": "a",
10
+ "8": "s",
11
+ "9": "o",
12
+ "10": "i",
13
+ "11": "r",
14
+ "12": "l",
15
+ "13": "u",
16
+ "14": "d",
17
+ "15": "c",
18
+ "16": "h",
19
+ "17": "m",
20
+ "18": "p",
21
+ "19": "n",
22
+ "20": "g",
23
+ "21": "f",
24
+ "22": "en",
25
+ "23": "in",
26
+ "24": "on",
27
+ "25": "y",
28
+ "26": "er",
29
+ "27": "an",
30
+ "28": "w",
31
+ "29": "0",
32
+ "30": "b",
33
+ "31": "v",
34
+ "32": "2",
35
+ "33": "1",
36
+ "34": "k",
37
+ "35": "?",
38
+ "36": "3",
39
+ "37": "5",
40
+ "38": "I",
41
+ "39": "é",
42
+ "40": "4",
43
+ "41": "z",
44
+ "42": "6",
45
+ "43": "j",
46
+ "44": "7",
47
+ "45": "8",
48
+ "46": "9",
49
+ "47": "S",
50
+ "48": "x",
51
+ "49": "P",
52
+ "50": "U",
53
+ "51": "L",
54
+ "52": "V",
55
+ "53": "R",
56
+ "54": "ó",
57
+ "55": "ü",
58
+ "56": "J",
59
+ "57": "í",
60
+ "58": "á",
61
+ "59": "<cs-CZ>",
62
+ "60": "st",
63
+ "61": "ch",
64
+ "62": "ní",
65
+ "63": "le",
66
+ "64": "li",
67
+ "65": "▁po",
68
+ "66": "no",
69
+ "67": "to",
70
+ "68": "me",
71
+ "69": "te",
72
+ "70": "ho",
73
+ "71": "▁pro",
74
+ "72": "ro",
75
+ "73": "▁na",
76
+ "74": "ce",
77
+ "75": "la",
78
+ "76": "ni",
79
+ "77": "ra",
80
+ "78": "ti",
81
+ "79": "lo",
82
+ "80": "ko",
83
+ "81": "ná",
84
+ "82": "po",
85
+ "83": "je",
86
+ "84": "de",
87
+ "85": "na",
88
+ "86": "mi",
89
+ "87": "ci",
90
+ "88": "▁by",
91
+ "89": "ve",
92
+ "90": "▁za",
93
+ "91": "▁A",
94
+ "92": "re",
95
+ "93": "ou",
96
+ "94": "vo",
97
+ "95": "né",
98
+ "96": "va",
99
+ "97": "mo",
100
+ "98": "ne",
101
+ "99": "ka",
102
+ "100": "ji",
103
+ "101": "rá",
104
+ "102": "cí",
105
+ "103": "▁jak",
106
+ "104": "ny",
107
+ "105": "ví",
108
+ "106": "vi",
109
+ "107": "ú",
110
+ "108": "ent",
111
+ "109": "▁pan",
112
+ "110": "Z",
113
+ "111": "dob",
114
+ "112": "▁To",
115
+ "113": "▁Je",
116
+ "114": "ă",
117
+ "115": "X",
118
+ "116": "Ú",
119
+ "117": "<da-DK>",
120
+ "118": "▁for",
121
+ "119": "▁det",
122
+ "120": "▁at",
123
+ "121": "et",
124
+ "122": "▁vi",
125
+ "123": "al",
126
+ "124": "▁de",
127
+ "125": "▁der",
128
+ "126": "or",
129
+ "127": "om",
130
+ "128": "and",
131
+ "129": "▁har",
132
+ "130": "at",
133
+ "131": "▁af",
134
+ "132": "ge",
135
+ "133": "ar",
136
+ "134": "is",
137
+ "135": "▁med",
138
+ "136": "▁be",
139
+ "137": "un",
140
+ "138": "lig",
141
+ "139": "▁man",
142
+ "140": "ig",
143
+ "141": "▁som",
144
+ "142": "el",
145
+ "143": "ag",
146
+ "144": "erne",
147
+ "145": "▁den",
148
+ "146": "ste",
149
+ "147": "id",
150
+ "148": "▁kan",
151
+ "149": "iv",
152
+ "150": "▁her",
153
+ "151": "ion",
154
+ "152": "am",
155
+ "153": "ur",
156
+ "154": "for",
157
+ "155": "▁pr",
158
+ "156": "▁sig",
159
+ "157": "▁men",
160
+ "158": "▁ind",
161
+ "159": "ende",
162
+ "160": "▁Vi",
163
+ "161": "▁op",
164
+ "162": "▁fra",
165
+ "163": "▁Men",
166
+ "164": "▁var",
167
+ "165": "<de-DE>",
168
+ "166": "▁die",
169
+ "167": "▁und",
170
+ "168": "sch",
171
+ "169": "it",
172
+ "170": "gen",
173
+ "171": "▁W",
174
+ "172": "▁B",
175
+ "173": "▁E",
176
+ "174": "▁F",
177
+ "175": "ll",
178
+ "176": "▁es",
179
+ "177": "▁K",
180
+ "178": "ie",
181
+ "179": "au",
182
+ "180": "ich",
183
+ "181": "ck",
184
+ "182": "ten",
185
+ "183": "mal",
186
+ "184": "ein",
187
+ "185": "▁T",
188
+ "186": "▁mit",
189
+ "187": "ter",
190
+ "188": "tz",
191
+ "189": "▁G",
192
+ "190": "ben",
193
+ "191": "um",
194
+ "192": "us",
195
+ "193": "il",
196
+ "194": "▁noch",
197
+ "195": "▁ver",
198
+ "196": "▁hier",
199
+ "197": "ri",
200
+ "198": "ach",
201
+ "199": "ol",
202
+ "200": "▁Da",
203
+ "201": "sp",
204
+ "202": "ell",
205
+ "203": "▁was",
206
+ "204": "▁ja",
207
+ "205": "uch",
208
+ "206": "wi",
209
+ "207": "rei",
210
+ "208": "▁Ge",
211
+ "209": "und",
212
+ "210": "▁sie",
213
+ "211": "▁Ja",
214
+ "212": "▁du",
215
+ "213": "▁dem",
216
+ "214": "▁Sch",
217
+ "215": "▁habe",
218
+ "216": "▁Ma",
219
+ "217": "▁De",
220
+ "218": "iert",
221
+ "219": "▁Le",
222
+ "220": "▁In",
223
+ "221": "▁Ver",
224
+ "222": "▁Re",
225
+ "223": "ieren",
226
+ "224": "▁Mi",
227
+ "225": "▁Ha",
228
+ "226": "<el-GR>",
229
+ "227": "<et-EE>",
230
+ "228": "ma",
231
+ "229": "ta",
232
+ "230": "se",
233
+ "231": "da",
234
+ "232": "si",
235
+ "233": "ks",
236
+ "234": "ga",
237
+ "235": "he",
238
+ "236": "mu",
239
+ "237": "tu",
240
+ "238": "ha",
241
+ "239": "ja",
242
+ "240": "<blank>",
243
+ "241": "▁ole",
244
+ "242": "gu",
245
+ "243": "ju",
246
+ "244": "est",
247
+ "245": "▁pa",
248
+ "246": "tud",
249
+ "247": "nda",
250
+ "248": "vad",
251
+ "249": "ke",
252
+ "250": "sta",
253
+ "251": "sed",
254
+ "252": "di",
255
+ "253": "▁su",
256
+ "254": "ide",
257
+ "255": "val",
258
+ "256": "▁Me",
259
+ "257": "ment",
260
+ "258": "Q",
261
+ "259": "ñ",
262
+ "260": "<fi-FI>",
263
+ "261": "lla",
264
+ "262": "ki",
265
+ "263": "pa",
266
+ "264": "lle",
267
+ "265": "lu",
268
+ "266": "tta",
269
+ "267": "isi",
270
+ "268": "ise",
271
+ "269": "tte",
272
+ "270": "ista",
273
+ "271": "inen",
274
+ "272": "llis",
275
+ "273": "vu",
276
+ "274": "iden",
277
+ "275": "<fr-FR>",
278
+ "276": "▁est",
279
+ "277": "▁c",
280
+ "278": "▁que",
281
+ "279": "es",
282
+ "280": "▁un",
283
+ "281": "▁pas",
284
+ "282": "▁les",
285
+ "283": "▁qui",
286
+ "284": "▁il",
287
+ "285": "▁des",
288
+ "286": "▁par",
289
+ "287": "▁une",
290
+ "288": "ant",
291
+ "289": "ais",
292
+ "290": "ez",
293
+ "291": "▁C",
294
+ "292": "tre",
295
+ "293": "ir",
296
+ "294": "elle",
297
+ "295": "eur",
298
+ "296": "▁sur",
299
+ "297": "▁con",
300
+ "298": "tion",
301
+ "299": "té",
302
+ "300": "mp",
303
+ "301": "ique",
304
+ "302": "▁dé",
305
+ "303": "qu",
306
+ "304": "ac",
307
+ "305": "ait",
308
+ "306": "che",
309
+ "307": "que",
310
+ "308": "ul",
311
+ "309": "▁bien",
312
+ "310": "age",
313
+ "311": "▁mon",
314
+ "312": "end",
315
+ "313": "ver",
316
+ "314": "tra",
317
+ "315": "cha",
318
+ "316": "ille",
319
+ "317": "ff",
320
+ "318": "▁ex",
321
+ "319": "▁Il",
322
+ "320": "im",
323
+ "321": "ité",
324
+ "322": "▁dire",
325
+ "323": "ance",
326
+ "324": "aire",
327
+ "325": "mé",
328
+ "326": "▁app",
329
+ "327": "mb",
330
+ "328": "man",
331
+ "329": "port",
332
+ "330": "form",
333
+ "331": "ign",
334
+ "332": "<hu-HU>",
335
+ "333": "ás",
336
+ "334": "ok",
337
+ "335": "gy",
338
+ "336": "ek",
339
+ "337": "ál",
340
+ "338": "és",
341
+ "339": "em",
342
+ "340": "ár",
343
+ "341": "▁is",
344
+ "342": "os",
345
+ "343": "ak",
346
+ "344": "ban",
347
+ "345": "ít",
348
+ "346": "ik",
349
+ "347": "oz",
350
+ "348": "án",
351
+ "349": "át",
352
+ "350": "cs",
353
+ "351": "él",
354
+ "352": "ér",
355
+ "353": "nek",
356
+ "354": "én",
357
+ "355": "▁ha",
358
+ "356": "▁fel",
359
+ "357": "vé",
360
+ "358": "leg",
361
+ "359": "▁ami",
362
+ "360": "É",
363
+ "361": "rend",
364
+ "362": "Á",
365
+ "363": "Í",
366
+ "364": "<hr-HR>",
367
+ "365": "▁bi",
368
+ "366": "▁sa",
369
+ "367": "ru",
370
+ "368": "go",
371
+ "369": "nje",
372
+ "370": "sti",
373
+ "371": "▁pri",
374
+ "372": "ima",
375
+ "373": "nu",
376
+ "374": "▁pre",
377
+ "375": "zi",
378
+ "376": "ca",
379
+ "377": "ba",
380
+ "378": "▁raz",
381
+ "379": "<it-IT>",
382
+ "380": "▁di",
383
+ "381": "▁che",
384
+ "382": "co",
385
+ "383": "▁per",
386
+ "384": "do",
387
+ "385": "so",
388
+ "386": "amo",
389
+ "387": "sa",
390
+ "388": "ndo",
391
+ "389": "▁una",
392
+ "390": "fi",
393
+ "391": "pi",
394
+ "392": "nti",
395
+ "393": "tro",
396
+ "394": "▁fa",
397
+ "395": "chi",
398
+ "396": "bi",
399
+ "397": "▁del",
400
+ "398": "mente",
401
+ "399": "pe",
402
+ "400": "▁sono",
403
+ "401": "nte",
404
+ "402": "tti",
405
+ "403": "nta",
406
+ "404": "▁come",
407
+ "405": "cu",
408
+ "406": "nza",
409
+ "407": "sto",
410
+ "408": "gra",
411
+ "409": "spe",
412
+ "410": "nde",
413
+ "411": "mento",
414
+ "412": "fe",
415
+ "413": "gio",
416
+ "414": "pu",
417
+ "415": "sci",
418
+ "416": "sco",
419
+ "417": "stra",
420
+ "418": "qui",
421
+ "419": "▁cosa",
422
+ "420": "▁inter",
423
+ "421": "▁com",
424
+ "422": "▁comp",
425
+ "423": "▁prima",
426
+ "424": "▁parte",
427
+ "425": "▁video",
428
+ "426": "▁imp",
429
+ "427": "sione",
430
+ "428": "scri",
431
+ "429": "<lt-LT>",
432
+ "430": "▁ir",
433
+ "431": "as",
434
+ "432": "▁tai",
435
+ "433": "uo",
436
+ "434": "tin",
437
+ "435": "▁vis",
438
+ "436": "ly",
439
+ "437": "gal",
440
+ "438": "jo",
441
+ "439": "tar",
442
+ "440": "▁Ir",
443
+ "441": "ijos",
444
+ "442": "▁turi",
445
+ "443": "▁Tai",
446
+ "444": "▁nu",
447
+ "445": "▁mes",
448
+ "446": "imas",
449
+ "447": "darb",
450
+ "448": "<lv-LV>",
451
+ "449": "iem",
452
+ "450": "▁pie",
453
+ "451": "ies",
454
+ "452": "ot",
455
+ "453": "▁vien",
456
+ "454": "gad",
457
+ "455": "▁Un",
458
+ "456": "▁Ta",
459
+ "457": "dar",
460
+ "458": "ija",
461
+ "459": "sim",
462
+ "460": "dien",
463
+ "461": "gan",
464
+ "462": "▁ap",
465
+ "463": "▁nav",
466
+ "464": "▁lab",
467
+ "465": "aug",
468
+ "466": "▁Nu",
469
+ "467": "▁Ne",
470
+ "468": "zin",
471
+ "469": "▁20",
472
+ "470": "<nl-NL>",
473
+ "471": "▁dat",
474
+ "472": "▁we",
475
+ "473": "ij",
476
+ "474": "▁En",
477
+ "475": "▁dan",
478
+ "476": "▁zo",
479
+ "477": "▁met",
480
+ "478": "▁wat",
481
+ "479": "ken",
482
+ "480": "der",
483
+ "481": "ui",
484
+ "482": "den",
485
+ "483": "op",
486
+ "484": "oor",
487
+ "485": "▁of",
488
+ "486": "ven",
489
+ "487": "▁even",
490
+ "488": "ond",
491
+ "489": "▁wil",
492
+ "490": "vol",
493
+ "491": "▁Dan",
494
+ "492": "▁hem",
495
+ "493": "<pl-PL>",
496
+ "494": "nie",
497
+ "495": "wa",
498
+ "496": "cie",
499
+ "497": "nia",
500
+ "498": "wo",
501
+ "499": "rze",
502
+ "500": "ej",
503
+ "501": "by",
504
+ "502": "za",
505
+ "503": "dy",
506
+ "504": "ry",
507
+ "505": "ego",
508
+ "506": "mie",
509
+ "507": "rz",
510
+ "508": "pie",
511
+ "509": "▁pod",
512
+ "510": "▁ale",
513
+ "511": "uje",
514
+ "512": "▁bo",
515
+ "513": "bie",
516
+ "514": "▁Po",
517
+ "515": "ski",
518
+ "516": "nego",
519
+ "517": "▁Nie",
520
+ "518": "▁No",
521
+ "519": "▁Na",
522
+ "520": "▁prac",
523
+ "521": "▁Was",
524
+ "522": "▁musi",
525
+ "523": "<pt-BR>",
526
+ "524": "pt",
527
+ "525": "-",
528
+ "526": "▁para",
529
+ "527": "▁pe",
530
+ "528": "▁tem",
531
+ "529": "▁gente",
532
+ "530": "▁O",
533
+ "531": "▁ele",
534
+ "532": "pre",
535
+ "533": "ria",
536
+ "534": "▁fo",
537
+ "535": "mos",
538
+ "536": "bo",
539
+ "537": "nha",
540
+ "538": "▁por",
541
+ "539": "nto",
542
+ "540": "▁Eu",
543
+ "541": "▁está",
544
+ "542": "idade",
545
+ "543": "be",
546
+ "544": "▁pode",
547
+ "545": "▁como",
548
+ "546": "ente",
549
+ "547": "▁mas",
550
+ "548": "▁lá",
551
+ "549": "fica",
552
+ "550": "▁porque",
553
+ "551": "▁Se",
554
+ "552": "...",
555
+ "553": "▁só",
556
+ "554": "▁Por",
557
+ "555": "▁Co",
558
+ "556": "iza",
559
+ "557": "▁todo",
560
+ "558": "ciona",
561
+ "559": "<ro-RO>",
562
+ "560": "sc",
563
+ "561": "are",
564
+ "562": "▁din",
565
+ "563": "▁este",
566
+ "564": "rea",
567
+ "565": "ele",
568
+ "566": "du",
569
+ "567": "▁M",
570
+ "568": "▁fac",
571
+ "569": "lor",
572
+ "570": "▁mult",
573
+ "571": "per",
574
+ "572": "cur",
575
+ "573": "tor",
576
+ "574": "inte",
577
+ "575": "tat",
578
+ "576": "ori",
579
+ "577": "▁sub",
580
+ "578": "▁prin",
581
+ "579": "▁alt",
582
+ "580": "stru",
583
+ "581": "fer",
584
+ "582": "▁acum",
585
+ "583": "<ru-RU>",
586
+ "584": "<sk-SK>",
587
+ "585": "ob",
588
+ "586": "tá",
589
+ "587": "▁bol",
590
+ "588": "▁sú",
591
+ "589": "ali",
592
+ "590": "▁má",
593
+ "591": "nov",
594
+ "592": "nú",
595
+ "593": "rob",
596
+ "594": "enie",
597
+ "595": "osti",
598
+ "596": "<sl-SL>",
599
+ "597": "sl",
600
+ "598": "udi",
601
+ "599": "▁sem",
602
+ "600": "▁samo",
603
+ "601": "▁pred",
604
+ "602": "▁Pre",
605
+ "603": "▁prot",
606
+ "604": "▁pisa",
607
+ "605": "▁internet",
608
+ "606": "▁film",
609
+ "607": "<sv-SE>",
610
+ "608": "▁och",
611
+ "609": "▁inte",
612
+ "610": "▁av",
613
+ "611": "▁ut",
614
+ "612": "all",
615
+ "613": "era",
616
+ "614": "pp",
617
+ "615": "▁upp",
618
+ "616": "het",
619
+ "617": "▁vill",
620
+ "618": "erna",
621
+ "619": "ande",
622
+ "620": "ade",
623
+ "621": "▁hur",
624
+ "622": "bil",
625
+ "623": "▁bara",
626
+ "624": "▁min",
627
+ "625": "lev",
628
+ "626": "land",
629
+ "627": "text",
630
+ "628": "<uk-UA>",
631
+ "629": "<ar-AR>",
632
+ "630": "ft",
633
+ "631": "ved",
634
+ "632": "'",
635
+ "633": "▁H",
636
+ "634": "▁D",
637
+ "635": "aus",
638
+ "636": "▁N",
639
+ "637": "▁Be",
640
+ "638": "mm",
641
+ "639": "ab",
642
+ "640": "▁Er",
643
+ "641": "hn",
644
+ "642": "rie",
645
+ "643": "lei",
646
+ "644": "▁An",
647
+ "645": "▁So",
648
+ "646": "▁Aus",
649
+ "647": "<en-GB>",
650
+ "648": "▁and",
651
+ "649": "▁can",
652
+ "650": "ed",
653
+ "651": "▁just",
654
+ "652": "ay",
655
+ "653": "th",
656
+ "654": "ic",
657
+ "655": "▁much",
658
+ "656": "hi",
659
+ "657": "▁Oh",
660
+ "658": "ight",
661
+ "659": "ex",
662
+ "660": "▁great",
663
+ "661": "▁call",
664
+ "662": "ill",
665
+ "663": "▁don",
666
+ "664": "▁problem",
667
+ "665": "▁fine",
668
+ "666": "able",
669
+ "667": "ever",
670
+ "668": "▁send",
671
+ "669": "<en-US>",
672
+ "670": "ate",
673
+ "671": "ad",
674
+ "672": "ect",
675
+ "673": "ng",
676
+ "674": "ther",
677
+ "675": "act",
678
+ "676": "ist",
679
+ "677": "▁his",
680
+ "678": "▁He",
681
+ "679": "▁part",
682
+ "680": "side",
683
+ "681": "<es-ES>",
684
+ "682": "ción",
685
+ "683": "▁Es",
686
+ "684": "res",
687
+ "685": "▁los",
688
+ "686": "▁La",
689
+ "687": "dos",
690
+ "688": "ía",
691
+ "689": "▁El",
692
+ "690": "▁las",
693
+ "691": "▁más",
694
+ "692": "men",
695
+ "693": "ño",
696
+ "694": "▁esta",
697
+ "695": "idad",
698
+ "696": "par",
699
+ "697": "¿",
700
+ "698": "ría",
701
+ "699": "▁fue",
702
+ "700": "rio",
703
+ "701": "enta",
704
+ "702": "ón",
705
+ "703": "cho",
706
+ "704": "ciones",
707
+ "705": "ble",
708
+ "706": "▁Ca",
709
+ "707": "▁muy",
710
+ "708": "▁también",
711
+ "709": "▁tiene",
712
+ "710": "ña",
713
+ "711": "▁Su",
714
+ "712": "▁pero",
715
+ "713": "▁son",
716
+ "714": "encia",
717
+ "715": "sión",
718
+ "716": "▁hay",
719
+ "717": "▁puede",
720
+ "718": "ncia",
721
+ "719": "▁mucho",
722
+ "720": "▁pues",
723
+ "721": "miento",
724
+ "722": "▁Con",
725
+ "723": "ones",
726
+ "724": "ecto",
727
+ "725": "iendo",
728
+ "726": "▁día",
729
+ "727": "▁sobre",
730
+ "728": "▁primer",
731
+ "729": "▁qué",
732
+ "730": "▁San",
733
+ "731": "▁hacer",
734
+ "732": "cional",
735
+ "733": "▁persona",
736
+ "734": "▁pasa",
737
+ "735": "▁mejor",
738
+ "736": "quí",
739
+ "737": "▁Fue",
740
+ "738": "▁Com",
741
+ "739": "▁ciudad",
742
+ "740": "<es-US>",
743
+ "741": "cia",
744
+ "742": "▁Y",
745
+ "743": "ron",
746
+ "744": "les",
747
+ "745": "cio",
748
+ "746": "bu",
749
+ "747": "▁sí",
750
+ "748": "▁Pero",
751
+ "749": "▁así",
752
+ "750": "<fr-CA>",
753
+ "751": "ré",
754
+ "752": "our",
755
+ "753": "▁Ce",
756
+ "754": "com",
757
+ "755": "ale",
758
+ "756": "if",
759
+ "757": "iste",
760
+ "758": "▁parti",
761
+ "759": "avec",
762
+ "760": "app",
763
+ "761": "cul",
764
+ "762": "gue",
765
+ "763": "▁nombre",
766
+ "764": "Une",
767
+ "765": "pri",
768
+ "766": "sion",
769
+ "767": "ix",
770
+ "768": "ard",
771
+ "769": "<he-IL>",
772
+ "770": "<hi-IN>",
773
+ "771": "!",
774
+ "772": "<ja-JP>",
775
+ "773": "<ko-KR>",
776
+ "774": "<nb-NO>",
777
+ "775": "ene",
778
+ "776": "▁Han",
779
+ "777": "▁han",
780
+ "778": "<nn-NO>",
781
+ "779": "eg",
782
+ "780": "kk",
783
+ "781": "dig",
784
+ "782": "tid",
785
+ "783": "ord",
786
+ "784": "▁tru",
787
+ "785": "▁sei",
788
+ "786": "ller",
789
+ "787": "car",
790
+ "788": "ito",
791
+ "789": "ram",
792
+ "790": "fa",
793
+ "791": "▁compra",
794
+ "792": "▁mil",
795
+ "793": "▁casa",
796
+ "794": "<pt-PT>",
797
+ "795": "das",
798
+ "796": "▁Pa",
799
+ "797": "tura",
800
+ "798": "forma",
801
+ "799": "▁Esta",
802
+ "800": "▁pelo",
803
+ "801": "tua",
804
+ "802": "mar",
805
+ "803": "este",
806
+ "804": "▁entre",
807
+ "805": "fun",
808
+ "806": "gua",
809
+ "807": "▁grande",
810
+ "808": "icos",
811
+ "809": "▁Este",
812
+ "810": "▁encontra",
813
+ "811": "var",
814
+ "812": "<th-TH>",
815
+ "813": "<tr-TR>",
816
+ "814": "ş",
817
+ "815": "ğ",
818
+ "816": "ya",
819
+ "817": "▁ve",
820
+ "818": "lar",
821
+ "819": "ler",
822
+ "820": "ye",
823
+ "821": "▁bu",
824
+ "822": "lan",
825
+ "823": "ara",
826
+ "824": "▁Bu",
827
+ "825": "inde",
828
+ "826": "yo",
829
+ "827": "<zh-CN>",
830
+ "828": "<vi-VN>",
831
+ "829": "▁t",
832
+ "830": "nh",
833
+ "831": "<blank>"
834
+ }
es/2240ms/decoder.mlmodelc/analytics/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d8c3744468694142efbb178729d4d6a56edc642464a04a884b938cfe27c4e094
3
+ size 243
es/2240ms/decoder.mlmodelc/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3c993f8b96ce22027cd2ed42d99b7e61f93a01197bb17cadada8eb989e946dec
3
+ size 433
es/2240ms/decoder.mlmodelc/model.mil ADDED
@@ -0,0 +1,64 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ program(1.3)
2
+ [buildInfo = dict<string, string>({{"coremlc-component-MIL", "3520.4.1"}, {"coremlc-version", "3520.5.1"}, {"coremltools-component-torch", "2.5.1"}, {"coremltools-source-dialect", "TorchScript"}, {"coremltools-version", "8.3.0"}})]
3
+ {
4
+ func main<ios18>(tensor<fp32, [2, 1, 640]> c_in, tensor<fp32, [2, 1, 640]> h_in, tensor<int32, [1, 1]> token, tensor<int32, [1]> token_length) {
5
+ int32 y_axis_0 = const()[name = string("y_axis_0"), val = int32(0)];
6
+ int32 y_batch_dims_0 = const()[name = string("y_batch_dims_0"), val = int32(0)];
7
+ bool y_validate_indices_0 = const()[name = string("y_validate_indices_0"), val = bool(false)];
8
+ tensor<fp16, [832, 640]> module_prediction_embed_weight_to_fp16 = const()[name = string("module_prediction_embed_weight_to_fp16"), val = tensor<fp16, [832, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(64)))];
9
+ string token_to_int16_dtype_0 = const()[name = string("token_to_int16_dtype_0"), val = string("int16")];
10
+ tensor<int16, [1, 1]> token_to_int16 = cast(dtype = token_to_int16_dtype_0, x = token)[name = string("cast_8")];
11
+ tensor<fp16, [1, 1, 640]> y_cast_fp16_cast_uint16 = gather(axis = y_axis_0, batch_dims = y_batch_dims_0, indices = token_to_int16, validate_indices = y_validate_indices_0, x = module_prediction_embed_weight_to_fp16)[name = string("y_cast_fp16_cast_uint16")];
12
+ tensor<int32, [3]> input_3_perm_0 = const()[name = string("input_3_perm_0"), val = tensor<int32, [3]>([1, 0, 2])];
13
+ int32 split_0_num_splits_0 = const()[name = string("split_0_num_splits_0"), val = int32(2)];
14
+ int32 split_0_axis_0 = const()[name = string("split_0_axis_0"), val = int32(0)];
15
+ string h_in_to_fp16_dtype_0 = const()[name = string("h_in_to_fp16_dtype_0"), val = string("fp16")];
16
+ tensor<fp16, [2, 1, 640]> h_in_to_fp16 = cast(dtype = h_in_to_fp16_dtype_0, x = h_in)[name = string("cast_7")];
17
+ tensor<fp16, [1, 1, 640]> split_0_cast_fp16_0, tensor<fp16, [1, 1, 640]> split_0_cast_fp16_1 = split(axis = split_0_axis_0, num_splits = split_0_num_splits_0, x = h_in_to_fp16)[name = string("split_0_cast_fp16")];
18
+ int32 split_1_num_splits_0 = const()[name = string("split_1_num_splits_0"), val = int32(2)];
19
+ int32 split_1_axis_0 = const()[name = string("split_1_axis_0"), val = int32(0)];
20
+ string c_in_to_fp16_dtype_0 = const()[name = string("c_in_to_fp16_dtype_0"), val = string("fp16")];
21
+ tensor<fp16, [2, 1, 640]> c_in_to_fp16 = cast(dtype = c_in_to_fp16_dtype_0, x = c_in)[name = string("cast_6")];
22
+ tensor<fp16, [1, 1, 640]> split_1_cast_fp16_0, tensor<fp16, [1, 1, 640]> split_1_cast_fp16_1 = split(axis = split_1_axis_0, num_splits = split_1_num_splits_0, x = c_in_to_fp16)[name = string("split_1_cast_fp16")];
23
+ tensor<int32, [1]> input_lstm_layer_0_lstm_h0_squeeze_axes_0 = const()[name = string("input_lstm_layer_0_lstm_h0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
24
+ tensor<fp16, [1, 640]> input_lstm_layer_0_lstm_h0_squeeze_cast_fp16 = squeeze(axes = input_lstm_layer_0_lstm_h0_squeeze_axes_0, x = split_0_cast_fp16_0)[name = string("input_lstm_layer_0_lstm_h0_squeeze_cast_fp16")];
25
+ tensor<int32, [1]> input_lstm_layer_0_lstm_c0_squeeze_axes_0 = const()[name = string("input_lstm_layer_0_lstm_c0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
26
+ tensor<fp16, [1, 640]> input_lstm_layer_0_lstm_c0_squeeze_cast_fp16 = squeeze(axes = input_lstm_layer_0_lstm_c0_squeeze_axes_0, x = split_1_cast_fp16_0)[name = string("input_lstm_layer_0_lstm_c0_squeeze_cast_fp16")];
27
+ string input_lstm_layer_0_direction_0 = const()[name = string("input_lstm_layer_0_direction_0"), val = string("forward")];
28
+ bool input_lstm_layer_0_output_sequence_0 = const()[name = string("input_lstm_layer_0_output_sequence_0"), val = bool(true)];
29
+ string input_lstm_layer_0_recurrent_activation_0 = const()[name = string("input_lstm_layer_0_recurrent_activation_0"), val = string("sigmoid")];
30
+ string input_lstm_layer_0_cell_activation_0 = const()[name = string("input_lstm_layer_0_cell_activation_0"), val = string("tanh")];
31
+ string input_lstm_layer_0_activation_0 = const()[name = string("input_lstm_layer_0_activation_0"), val = string("tanh")];
32
+ tensor<fp16, [2560, 640]> concat_1_to_fp16 = const()[name = string("concat_1_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(1065088)))];
33
+ tensor<fp16, [2560, 640]> concat_2_to_fp16 = const()[name = string("concat_2_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(4341952)))];
34
+ tensor<fp16, [2560]> concat_0_to_fp16 = const()[name = string("concat_0_to_fp16"), val = tensor<fp16, [2560]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(7618816)))];
35
+ tensor<fp16, [1, 1, 640]> input_3_cast_fp16 = transpose(perm = input_3_perm_0, x = y_cast_fp16_cast_uint16)[name = string("transpose_2")];
36
+ tensor<fp16, [1, 1, 640]> input_lstm_layer_0_cast_fp16_0, tensor<fp16, [1, 640]> input_lstm_layer_0_cast_fp16_1, tensor<fp16, [1, 640]> input_lstm_layer_0_cast_fp16_2 = lstm(activation = input_lstm_layer_0_activation_0, bias = concat_0_to_fp16, 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_cast_fp16, initial_h = input_lstm_layer_0_lstm_h0_squeeze_cast_fp16, output_sequence = input_lstm_layer_0_output_sequence_0, recurrent_activation = input_lstm_layer_0_recurrent_activation_0, weight_hh = concat_2_to_fp16, weight_ih = concat_1_to_fp16, x = input_3_cast_fp16)[name = string("input_lstm_layer_0_cast_fp16")];
37
+ tensor<int32, [1]> input_lstm_h0_squeeze_axes_0 = const()[name = string("input_lstm_h0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
38
+ tensor<fp16, [1, 640]> input_lstm_h0_squeeze_cast_fp16 = squeeze(axes = input_lstm_h0_squeeze_axes_0, x = split_0_cast_fp16_1)[name = string("input_lstm_h0_squeeze_cast_fp16")];
39
+ tensor<int32, [1]> input_lstm_c0_squeeze_axes_0 = const()[name = string("input_lstm_c0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
40
+ tensor<fp16, [1, 640]> input_lstm_c0_squeeze_cast_fp16 = squeeze(axes = input_lstm_c0_squeeze_axes_0, x = split_1_cast_fp16_1)[name = string("input_lstm_c0_squeeze_cast_fp16")];
41
+ string input_direction_0 = const()[name = string("input_direction_0"), val = string("forward")];
42
+ bool input_output_sequence_0 = const()[name = string("input_output_sequence_0"), val = bool(true)];
43
+ string input_recurrent_activation_0 = const()[name = string("input_recurrent_activation_0"), val = string("sigmoid")];
44
+ string input_cell_activation_0 = const()[name = string("input_cell_activation_0"), val = string("tanh")];
45
+ string input_activation_0 = const()[name = string("input_activation_0"), val = string("tanh")];
46
+ tensor<fp16, [2560, 640]> concat_4_to_fp16 = const()[name = string("concat_4_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(7624000)))];
47
+ tensor<fp16, [2560, 640]> concat_5_to_fp16 = const()[name = string("concat_5_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(10900864)))];
48
+ tensor<fp16, [2560]> concat_3_to_fp16 = const()[name = string("concat_3_to_fp16"), val = tensor<fp16, [2560]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(14177728)))];
49
+ tensor<fp16, [1, 1, 640]> input_cast_fp16_0, tensor<fp16, [1, 640]> input_cast_fp16_1, tensor<fp16, [1, 640]> input_cast_fp16_2 = lstm(activation = input_activation_0, bias = concat_3_to_fp16, cell_activation = input_cell_activation_0, direction = input_direction_0, initial_c = input_lstm_c0_squeeze_cast_fp16, initial_h = input_lstm_h0_squeeze_cast_fp16, output_sequence = input_output_sequence_0, recurrent_activation = input_recurrent_activation_0, weight_hh = concat_5_to_fp16, weight_ih = concat_4_to_fp16, x = input_lstm_layer_0_cast_fp16_0)[name = string("input_cast_fp16")];
50
+ int32 obj_3_axis_0 = const()[name = string("obj_3_axis_0"), val = int32(0)];
51
+ tensor<fp16, [2, 1, 640]> obj_3_cast_fp16 = stack(axis = obj_3_axis_0, values = (input_lstm_layer_0_cast_fp16_1, input_cast_fp16_1))[name = string("obj_3_cast_fp16")];
52
+ string obj_3_cast_fp16_to_fp32_dtype_0 = const()[name = string("obj_3_cast_fp16_to_fp32_dtype_0"), val = string("fp32")];
53
+ int32 obj_axis_0 = const()[name = string("obj_axis_0"), val = int32(0)];
54
+ tensor<fp16, [2, 1, 640]> obj_cast_fp16 = stack(axis = obj_axis_0, values = (input_lstm_layer_0_cast_fp16_2, input_cast_fp16_2))[name = string("obj_cast_fp16")];
55
+ string obj_cast_fp16_to_fp32_dtype_0 = const()[name = string("obj_cast_fp16_to_fp32_dtype_0"), val = string("fp32")];
56
+ tensor<int32, [3]> transpose_0_perm_0 = const()[name = string("transpose_0_perm_0"), val = tensor<int32, [3]>([1, 2, 0])];
57
+ string transpose_0_cast_fp16_to_fp32_dtype_0 = const()[name = string("transpose_0_cast_fp16_to_fp32_dtype_0"), val = string("fp32")];
58
+ tensor<fp16, [1, 640, 1]> transpose_0_cast_fp16 = transpose(perm = transpose_0_perm_0, x = input_cast_fp16_0)[name = string("transpose_1")];
59
+ tensor<fp32, [1, 640, 1]> decoder_out = cast(dtype = transpose_0_cast_fp16_to_fp32_dtype_0, x = transpose_0_cast_fp16)[name = string("cast_3")];
60
+ tensor<fp32, [2, 1, 640]> c_out = cast(dtype = obj_cast_fp16_to_fp32_dtype_0, x = obj_cast_fp16)[name = string("cast_4")];
61
+ tensor<fp32, [2, 1, 640]> h_out = cast(dtype = obj_3_cast_fp16_to_fp32_dtype_0, x = obj_3_cast_fp16)[name = string("cast_5")];
62
+ tensor<int32, [1]> token_length_tmp = identity(x = token_length)[name = string("token_length_tmp")];
63
+ } -> (decoder_out, h_out, c_out);
64
+ }
es/2240ms/decoder.mlmodelc/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a6fd0dd21233238b9d55296b6c537f0057b621e75f2f93a4bbbe12fe1f00e99e
3
+ size 14182912
es/2240ms/decoder.mlpackage/Data/com.apple.CoreML/model.mlmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d5e3eed357e13b333dc78970ea0303fbe89c98df50e4f6be350345ed506bf5e3
3
+ size 10359
es/2240ms/decoder.mlpackage/Data/com.apple.CoreML/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a6fd0dd21233238b9d55296b6c537f0057b621e75f2f93a4bbbe12fe1f00e99e
3
+ size 14182912
es/2240ms/decoder.mlpackage/Manifest.json ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "fileFormatVersion": "1.0.0",
3
+ "itemInfoEntries": {
4
+ "1B1CD491-99B7-42CD-9B23-56E207B4734F": {
5
+ "author": "com.apple.CoreML",
6
+ "description": "CoreML Model Weights",
7
+ "name": "weights",
8
+ "path": "com.apple.CoreML/weights"
9
+ },
10
+ "68C4577A-86E9-400F-89F4-F791D33C5BC8": {
11
+ "author": "com.apple.CoreML",
12
+ "description": "CoreML Model Specification",
13
+ "name": "model.mlmodel",
14
+ "path": "com.apple.CoreML/model.mlmodel"
15
+ }
16
+ },
17
+ "rootModelIdentifier": "68C4577A-86E9-400F-89F4-F791D33C5BC8"
18
+ }
es/2240ms/decoder_joint.mlmodelc/analytics/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9229d9468fb1b6f8bf15b9a985eb2ea1bb2ca8aaf104768f3912656e4aec4364
3
+ size 243
es/2240ms/decoder_joint.mlmodelc/coremldata.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:69ceb1d95a0e71aee083126abf2c95089e7eb692a50796b10f45996238a033ce
3
+ size 454
es/2240ms/decoder_joint.mlmodelc/model.mil ADDED
@@ -0,0 +1,83 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ program(1.3)
2
+ [buildInfo = dict<string, string>({{"coremlc-component-MIL", "3520.4.1"}, {"coremlc-version", "3520.5.1"}, {"coremltools-component-torch", "2.5.1"}, {"coremltools-source-dialect", "TorchScript"}, {"coremltools-version", "8.3.0"}})]
3
+ {
4
+ func main<ios18>(tensor<fp32, [2, 1, 640]> c_in, tensor<fp32, [1, 1024, 1]> encoder, tensor<fp32, [2, 1, 640]> h_in, tensor<int32, [1, 1]> token, tensor<int32, [1]> token_length) {
5
+ int32 y_axis_0 = const()[name = string("y_axis_0"), val = int32(0)];
6
+ int32 y_batch_dims_0 = const()[name = string("y_batch_dims_0"), val = int32(0)];
7
+ bool y_validate_indices_0 = const()[name = string("y_validate_indices_0"), val = bool(false)];
8
+ tensor<fp16, [832, 640]> decoder_module_prediction_embed_weight_to_fp16 = const()[name = string("decoder_module_prediction_embed_weight_to_fp16"), val = tensor<fp16, [832, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(64)))];
9
+ string token_to_int16_dtype_0 = const()[name = string("token_to_int16_dtype_0"), val = string("int16")];
10
+ tensor<int16, [1, 1]> token_to_int16 = cast(dtype = token_to_int16_dtype_0, x = token)[name = string("cast_9")];
11
+ tensor<fp16, [1, 1, 640]> y_cast_fp16_cast_uint16 = gather(axis = y_axis_0, batch_dims = y_batch_dims_0, indices = token_to_int16, validate_indices = y_validate_indices_0, x = decoder_module_prediction_embed_weight_to_fp16)[name = string("y_cast_fp16_cast_uint16")];
12
+ tensor<int32, [3]> input_3_perm_0 = const()[name = string("input_3_perm_0"), val = tensor<int32, [3]>([1, 0, 2])];
13
+ int32 split_0_num_splits_0 = const()[name = string("split_0_num_splits_0"), val = int32(2)];
14
+ int32 split_0_axis_0 = const()[name = string("split_0_axis_0"), val = int32(0)];
15
+ string h_in_to_fp16_dtype_0 = const()[name = string("h_in_to_fp16_dtype_0"), val = string("fp16")];
16
+ tensor<fp16, [2, 1, 640]> h_in_to_fp16 = cast(dtype = h_in_to_fp16_dtype_0, x = h_in)[name = string("cast_8")];
17
+ tensor<fp16, [1, 1, 640]> split_0_cast_fp16_0, tensor<fp16, [1, 1, 640]> split_0_cast_fp16_1 = split(axis = split_0_axis_0, num_splits = split_0_num_splits_0, x = h_in_to_fp16)[name = string("split_0_cast_fp16")];
18
+ int32 split_1_num_splits_0 = const()[name = string("split_1_num_splits_0"), val = int32(2)];
19
+ int32 split_1_axis_0 = const()[name = string("split_1_axis_0"), val = int32(0)];
20
+ string c_in_to_fp16_dtype_0 = const()[name = string("c_in_to_fp16_dtype_0"), val = string("fp16")];
21
+ tensor<fp16, [2, 1, 640]> c_in_to_fp16 = cast(dtype = c_in_to_fp16_dtype_0, x = c_in)[name = string("cast_7")];
22
+ tensor<fp16, [1, 1, 640]> split_1_cast_fp16_0, tensor<fp16, [1, 1, 640]> split_1_cast_fp16_1 = split(axis = split_1_axis_0, num_splits = split_1_num_splits_0, x = c_in_to_fp16)[name = string("split_1_cast_fp16")];
23
+ tensor<int32, [1]> input_5_lstm_layer_0_lstm_h0_squeeze_axes_0 = const()[name = string("input_5_lstm_layer_0_lstm_h0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
24
+ tensor<fp16, [1, 640]> input_5_lstm_layer_0_lstm_h0_squeeze_cast_fp16 = squeeze(axes = input_5_lstm_layer_0_lstm_h0_squeeze_axes_0, x = split_0_cast_fp16_0)[name = string("input_5_lstm_layer_0_lstm_h0_squeeze_cast_fp16")];
25
+ tensor<int32, [1]> input_5_lstm_layer_0_lstm_c0_squeeze_axes_0 = const()[name = string("input_5_lstm_layer_0_lstm_c0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
26
+ tensor<fp16, [1, 640]> input_5_lstm_layer_0_lstm_c0_squeeze_cast_fp16 = squeeze(axes = input_5_lstm_layer_0_lstm_c0_squeeze_axes_0, x = split_1_cast_fp16_0)[name = string("input_5_lstm_layer_0_lstm_c0_squeeze_cast_fp16")];
27
+ string input_5_lstm_layer_0_direction_0 = const()[name = string("input_5_lstm_layer_0_direction_0"), val = string("forward")];
28
+ bool input_5_lstm_layer_0_output_sequence_0 = const()[name = string("input_5_lstm_layer_0_output_sequence_0"), val = bool(true)];
29
+ string input_5_lstm_layer_0_recurrent_activation_0 = const()[name = string("input_5_lstm_layer_0_recurrent_activation_0"), val = string("sigmoid")];
30
+ string input_5_lstm_layer_0_cell_activation_0 = const()[name = string("input_5_lstm_layer_0_cell_activation_0"), val = string("tanh")];
31
+ string input_5_lstm_layer_0_activation_0 = const()[name = string("input_5_lstm_layer_0_activation_0"), val = string("tanh")];
32
+ tensor<fp16, [2560, 640]> concat_1_to_fp16 = const()[name = string("concat_1_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(1065088)))];
33
+ tensor<fp16, [2560, 640]> concat_2_to_fp16 = const()[name = string("concat_2_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(4341952)))];
34
+ tensor<fp16, [2560]> concat_0_to_fp16 = const()[name = string("concat_0_to_fp16"), val = tensor<fp16, [2560]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(7618816)))];
35
+ tensor<fp16, [1, 1, 640]> input_3_cast_fp16 = transpose(perm = input_3_perm_0, x = y_cast_fp16_cast_uint16)[name = string("transpose_4")];
36
+ tensor<fp16, [1, 1, 640]> input_5_lstm_layer_0_cast_fp16_0, tensor<fp16, [1, 640]> input_5_lstm_layer_0_cast_fp16_1, tensor<fp16, [1, 640]> input_5_lstm_layer_0_cast_fp16_2 = lstm(activation = input_5_lstm_layer_0_activation_0, bias = concat_0_to_fp16, cell_activation = input_5_lstm_layer_0_cell_activation_0, direction = input_5_lstm_layer_0_direction_0, initial_c = input_5_lstm_layer_0_lstm_c0_squeeze_cast_fp16, initial_h = input_5_lstm_layer_0_lstm_h0_squeeze_cast_fp16, output_sequence = input_5_lstm_layer_0_output_sequence_0, recurrent_activation = input_5_lstm_layer_0_recurrent_activation_0, weight_hh = concat_2_to_fp16, weight_ih = concat_1_to_fp16, x = input_3_cast_fp16)[name = string("input_5_lstm_layer_0_cast_fp16")];
37
+ tensor<int32, [1]> input_5_lstm_h0_squeeze_axes_0 = const()[name = string("input_5_lstm_h0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
38
+ tensor<fp16, [1, 640]> input_5_lstm_h0_squeeze_cast_fp16 = squeeze(axes = input_5_lstm_h0_squeeze_axes_0, x = split_0_cast_fp16_1)[name = string("input_5_lstm_h0_squeeze_cast_fp16")];
39
+ tensor<int32, [1]> input_5_lstm_c0_squeeze_axes_0 = const()[name = string("input_5_lstm_c0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
40
+ tensor<fp16, [1, 640]> input_5_lstm_c0_squeeze_cast_fp16 = squeeze(axes = input_5_lstm_c0_squeeze_axes_0, x = split_1_cast_fp16_1)[name = string("input_5_lstm_c0_squeeze_cast_fp16")];
41
+ string input_5_direction_0 = const()[name = string("input_5_direction_0"), val = string("forward")];
42
+ bool input_5_output_sequence_0 = const()[name = string("input_5_output_sequence_0"), val = bool(true)];
43
+ string input_5_recurrent_activation_0 = const()[name = string("input_5_recurrent_activation_0"), val = string("sigmoid")];
44
+ string input_5_cell_activation_0 = const()[name = string("input_5_cell_activation_0"), val = string("tanh")];
45
+ string input_5_activation_0 = const()[name = string("input_5_activation_0"), val = string("tanh")];
46
+ tensor<fp16, [2560, 640]> concat_4_to_fp16 = const()[name = string("concat_4_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(7624000)))];
47
+ tensor<fp16, [2560, 640]> concat_5_to_fp16 = const()[name = string("concat_5_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(10900864)))];
48
+ tensor<fp16, [2560]> concat_3_to_fp16 = const()[name = string("concat_3_to_fp16"), val = tensor<fp16, [2560]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(14177728)))];
49
+ tensor<fp16, [1, 1, 640]> input_5_cast_fp16_0, tensor<fp16, [1, 640]> input_5_cast_fp16_1, tensor<fp16, [1, 640]> input_5_cast_fp16_2 = lstm(activation = input_5_activation_0, bias = concat_3_to_fp16, cell_activation = input_5_cell_activation_0, direction = input_5_direction_0, initial_c = input_5_lstm_c0_squeeze_cast_fp16, initial_h = input_5_lstm_h0_squeeze_cast_fp16, output_sequence = input_5_output_sequence_0, recurrent_activation = input_5_recurrent_activation_0, weight_hh = concat_5_to_fp16, weight_ih = concat_4_to_fp16, x = input_5_lstm_layer_0_cast_fp16_0)[name = string("input_5_cast_fp16")];
50
+ int32 obj_3_axis_0 = const()[name = string("obj_3_axis_0"), val = int32(0)];
51
+ tensor<fp16, [2, 1, 640]> obj_3_cast_fp16 = stack(axis = obj_3_axis_0, values = (input_5_lstm_layer_0_cast_fp16_1, input_5_cast_fp16_1))[name = string("obj_3_cast_fp16")];
52
+ string obj_3_cast_fp16_to_fp32_dtype_0 = const()[name = string("obj_3_cast_fp16_to_fp32_dtype_0"), val = string("fp32")];
53
+ int32 obj_axis_0 = const()[name = string("obj_axis_0"), val = int32(0)];
54
+ tensor<fp16, [2, 1, 640]> obj_cast_fp16 = stack(axis = obj_axis_0, values = (input_5_lstm_layer_0_cast_fp16_2, input_5_cast_fp16_2))[name = string("obj_cast_fp16")];
55
+ string obj_cast_fp16_to_fp32_dtype_0 = const()[name = string("obj_cast_fp16_to_fp32_dtype_0"), val = string("fp32")];
56
+ tensor<int32, [3]> transpose_1_perm_0 = const()[name = string("transpose_1_perm_0"), val = tensor<int32, [3]>([1, 0, 2])];
57
+ tensor<int32, [3]> input_7_perm_0 = const()[name = string("input_7_perm_0"), val = tensor<int32, [3]>([0, 2, 1])];
58
+ string encoder_to_fp16_dtype_0 = const()[name = string("encoder_to_fp16_dtype_0"), val = string("fp16")];
59
+ tensor<fp16, [640, 1024]> joint_module_enc_weight_to_fp16 = const()[name = string("joint_module_enc_weight_to_fp16"), val = tensor<fp16, [640, 1024]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(14182912)))];
60
+ tensor<fp16, [640]> joint_module_enc_bias_to_fp16 = const()[name = string("joint_module_enc_bias_to_fp16"), val = tensor<fp16, [640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(15493696)))];
61
+ tensor<fp16, [1, 1024, 1]> encoder_to_fp16 = cast(dtype = encoder_to_fp16_dtype_0, x = encoder)[name = string("cast_4")];
62
+ tensor<fp16, [1, 1, 1024]> input_7_cast_fp16 = transpose(perm = input_7_perm_0, x = encoder_to_fp16)[name = string("transpose_2")];
63
+ tensor<fp16, [1, 1, 640]> linear_0_cast_fp16 = linear(bias = joint_module_enc_bias_to_fp16, weight = joint_module_enc_weight_to_fp16, x = input_7_cast_fp16)[name = string("linear_0_cast_fp16")];
64
+ tensor<fp16, [640, 640]> joint_module_pred_weight_to_fp16 = const()[name = string("joint_module_pred_weight_to_fp16"), val = tensor<fp16, [640, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(15495040)))];
65
+ tensor<fp16, [640]> joint_module_pred_bias_to_fp16 = const()[name = string("joint_module_pred_bias_to_fp16"), val = tensor<fp16, [640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(16314304)))];
66
+ tensor<fp16, [1, 1, 640]> transpose_1_cast_fp16 = transpose(perm = transpose_1_perm_0, x = input_5_cast_fp16_0)[name = string("transpose_3")];
67
+ tensor<fp16, [1, 1, 640]> linear_1_cast_fp16 = linear(bias = joint_module_pred_bias_to_fp16, weight = joint_module_pred_weight_to_fp16, x = transpose_1_cast_fp16)[name = string("linear_1_cast_fp16")];
68
+ tensor<int32, [1]> var_79_axes_0 = const()[name = string("op_79_axes_0"), val = tensor<int32, [1]>([2])];
69
+ tensor<fp16, [1, 1, 1, 640]> var_79_cast_fp16 = expand_dims(axes = var_79_axes_0, x = linear_0_cast_fp16)[name = string("op_79_cast_fp16")];
70
+ tensor<int32, [1]> var_80_axes_0 = const()[name = string("op_80_axes_0"), val = tensor<int32, [1]>([1])];
71
+ tensor<fp16, [1, 1, 1, 640]> var_80_cast_fp16 = expand_dims(axes = var_80_axes_0, x = linear_1_cast_fp16)[name = string("op_80_cast_fp16")];
72
+ tensor<fp16, [1, 1, 1, 640]> input_11_cast_fp16 = add(x = var_79_cast_fp16, y = var_80_cast_fp16)[name = string("input_11_cast_fp16")];
73
+ tensor<fp16, [1, 1, 1, 640]> input_13_cast_fp16 = relu(x = input_11_cast_fp16)[name = string("input_13_cast_fp16")];
74
+ tensor<fp16, [832, 640]> joint_module_joint_net_2_weight_to_fp16 = const()[name = string("joint_module_joint_net_2_weight_to_fp16"), val = tensor<fp16, [832, 640]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(16315648)))];
75
+ tensor<fp16, [832]> joint_module_joint_net_2_bias_to_fp16 = const()[name = string("joint_module_joint_net_2_bias_to_fp16"), val = tensor<fp16, [832]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(17380672)))];
76
+ tensor<fp16, [1, 1, 1, 832]> linear_2_cast_fp16 = linear(bias = joint_module_joint_net_2_bias_to_fp16, weight = joint_module_joint_net_2_weight_to_fp16, x = input_13_cast_fp16)[name = string("linear_2_cast_fp16")];
77
+ string linear_2_cast_fp16_to_fp32_dtype_0 = const()[name = string("linear_2_cast_fp16_to_fp32_dtype_0"), val = string("fp32")];
78
+ tensor<fp32, [1, 1, 1, 832]> logits = cast(dtype = linear_2_cast_fp16_to_fp32_dtype_0, x = linear_2_cast_fp16)[name = string("cast_3")];
79
+ tensor<fp32, [2, 1, 640]> c_out = cast(dtype = obj_cast_fp16_to_fp32_dtype_0, x = obj_cast_fp16)[name = string("cast_5")];
80
+ tensor<fp32, [2, 1, 640]> h_out = cast(dtype = obj_3_cast_fp16_to_fp32_dtype_0, x = obj_3_cast_fp16)[name = string("cast_6")];
81
+ tensor<int32, [1]> token_length_tmp = identity(x = token_length)[name = string("token_length_tmp")];
82
+ } -> (logits, h_out, c_out);
83
+ }
es/2240ms/decoder_joint.mlmodelc/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:87b9845bb151ff3a361fc70b09adbc8cd194e4db3c264ad930dac0e10bd49929
3
+ size 17382400
es/2240ms/decoder_joint.mlpackage/Data/com.apple.CoreML/model.mlmodel ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0e1d2a4cd1217384e38934290126fec1aeec3220739a5bdbcc20f742b2768860
3
+ size 13745
es/2240ms/decoder_joint.mlpackage/Data/com.apple.CoreML/weights/weight.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:87b9845bb151ff3a361fc70b09adbc8cd194e4db3c264ad930dac0e10bd49929
3
+ size 17382400