Add files using upload-large-folder tool
Browse filesThis view is limited to 50 files because it contains too many changes. See raw diff
- latin/1120ms/decoder.mlmodelc/weights/weight.bin +3 -0
- latin/1120ms/decoder_joint.mlmodelc/weights/weight.bin +3 -0
- latin/1120ms/encoder.mlmodelc/weights/weight.bin +3 -0
- latin/2240ms/decoder.mlmodelc/analytics/coremldata.bin +3 -0
- latin/2240ms/decoder.mlmodelc/weights/weight.bin +3 -0
- latin/2240ms/decoder_joint.mlmodelc/analytics/coremldata.bin +3 -0
- latin/2240ms/decoder_joint.mlmodelc/weights/weight.bin +3 -0
- latin/2240ms/encoder.mlmodelc/analytics/coremldata.bin +3 -0
- latin/2240ms/encoder.mlmodelc/weights/weight.bin +3 -0
- latin/2240ms/joint.mlmodelc/analytics/coremldata.bin +3 -0
- latin/2240ms/joint.mlmodelc/weights/weight.bin +3 -0
- latin/2240ms/preprocessor.mlmodelc/analytics/coremldata.bin +3 -0
- latin/2240ms/preprocessor.mlmodelc/weights/weight.bin +3 -0
- latin/4480ms/decoder.mlmodelc/analytics/coremldata.bin +3 -0
- latin/4480ms/decoder.mlmodelc/coremldata.bin +3 -0
- latin/4480ms/decoder.mlmodelc/model.mil +64 -0
- latin/4480ms/decoder.mlmodelc/weights/weight.bin +3 -0
- latin/4480ms/decoder_joint.mlmodelc/analytics/coremldata.bin +3 -0
- latin/4480ms/decoder_joint.mlmodelc/coremldata.bin +3 -0
- latin/4480ms/decoder_joint.mlmodelc/model.mil +83 -0
- latin/4480ms/decoder_joint.mlmodelc/weights/weight.bin +3 -0
- latin/4480ms/encoder.mlmodelc/analytics/coremldata.bin +3 -0
- latin/4480ms/encoder.mlmodelc/coremldata.bin +3 -0
- latin/4480ms/encoder.mlmodelc/model.mil +0 -0
- latin/4480ms/encoder.mlmodelc/weights/weight.bin +3 -0
- latin/4480ms/joint.mlmodelc/coremldata.bin +3 -0
- latin/4480ms/joint.mlmodelc/model.mil +31 -0
- latin/4480ms/joint.mlmodelc/weights/weight.bin +3 -0
- latin/4480ms/preprocessor.mlmodelc/analytics/coremldata.bin +3 -0
- latin/4480ms/preprocessor.mlmodelc/coremldata.bin +3 -0
- latin/4480ms/preprocessor.mlmodelc/model.mil +122 -0
- latin/4480ms/preprocessor.mlmodelc/weights/weight.bin +3 -0
- latin/560ms/decoder.mlmodelc/analytics/coremldata.bin +3 -0
- latin/560ms/decoder.mlmodelc/coremldata.bin +3 -0
- latin/560ms/decoder.mlmodelc/model.mil +64 -0
- latin/560ms/decoder.mlmodelc/weights/weight.bin +3 -0
- latin/560ms/decoder_joint.mlmodelc/analytics/coremldata.bin +3 -0
- latin/560ms/decoder_joint.mlmodelc/coremldata.bin +3 -0
- latin/560ms/decoder_joint.mlmodelc/model.mil +83 -0
- latin/560ms/decoder_joint.mlmodelc/weights/weight.bin +3 -0
- latin/560ms/encoder.mlmodelc/analytics/coremldata.bin +3 -0
- latin/560ms/encoder.mlmodelc/coremldata.bin +3 -0
- latin/560ms/encoder.mlmodelc/model.mil +0 -0
- latin/560ms/encoder.mlmodelc/weights/weight.bin +3 -0
- latin/560ms/joint.mlmodelc/analytics/coremldata.bin +3 -0
- latin/560ms/joint.mlmodelc/coremldata.bin +3 -0
- latin/560ms/joint.mlmodelc/model.mil +31 -0
- latin/560ms/joint.mlmodelc/weights/weight.bin +3 -0
- latin/560ms/preprocessor.mlmodelc/analytics/coremldata.bin +3 -0
- latin/560ms/preprocessor.mlmodelc/coremldata.bin +3 -0
latin/1120ms/decoder.mlmodelc/weights/weight.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:923df635dad8f9688d46afdf1689c0913cc977f9944db30e35a78e5b41799903
|
| 3 |
+
size 16739072
|
latin/1120ms/decoder_joint.mlmodelc/weights/weight.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:5792bda2b88daae2ccb66689069da286e801f7bd168a95aa430590efa93e8e04
|
| 3 |
+
size 22498714
|
latin/1120ms/encoder.mlmodelc/weights/weight.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:e3dbd37659c7ef51d2dc691afac42fbdd1f04998fa62816ff0f2eebec5cc3d01
|
| 3 |
+
size 564646848
|
latin/2240ms/decoder.mlmodelc/analytics/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:d2e55e9add404d86292a04d8e25a6aee3833095d6191f73bbfa2167445384e0c
|
| 3 |
+
size 243
|
latin/2240ms/decoder.mlmodelc/weights/weight.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:923df635dad8f9688d46afdf1689c0913cc977f9944db30e35a78e5b41799903
|
| 3 |
+
size 16739072
|
latin/2240ms/decoder_joint.mlmodelc/analytics/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:0908aa04510db0fde1188519ae0a067789a7826613e8f96c47832ded7d0de131
|
| 3 |
+
size 243
|
latin/2240ms/decoder_joint.mlmodelc/weights/weight.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:5792bda2b88daae2ccb66689069da286e801f7bd168a95aa430590efa93e8e04
|
| 3 |
+
size 22498714
|
latin/2240ms/encoder.mlmodelc/analytics/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:af569fd95237bdf8b91d38094691bfc990fcf3534316fa615bac5964c02809e4
|
| 3 |
+
size 243
|
latin/2240ms/encoder.mlmodelc/weights/weight.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:2e00be98049a22e095452c020f183d2b23728e145cc814ba031436931b4f2e8f
|
| 3 |
+
size 565336640
|
latin/2240ms/joint.mlmodelc/analytics/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:6dbd3bf1b03e529be08a4673cb1d5889cbc5ac40ff6c7df0c47e3676c1ef6dc7
|
| 3 |
+
size 243
|
latin/2240ms/joint.mlmodelc/weights/weight.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:66b9d7405fad48fdd8413a7275c04d44933cb9beb80d318c158f80e52ff43fba
|
| 3 |
+
size 5759706
|
latin/2240ms/preprocessor.mlmodelc/analytics/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:e918fd75105ef01a971d29b5ec28f531467b42dd60978c29afb1914c4af838af
|
| 3 |
+
size 243
|
latin/2240ms/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
|
latin/4480ms/decoder.mlmodelc/analytics/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:895e6c97a82782b2fd429e6fcfc7201bbb2e6fe668d8d5f5636e05654f334b8e
|
| 3 |
+
size 243
|
latin/4480ms/decoder.mlmodelc/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:76a3ae4c7f2dcd6cd4bf3a1ccbe40ad0c0aecd693e1cdebd8cb85fa30f44a8b9
|
| 3 |
+
size 433
|
latin/4480ms/decoder.mlmodelc/model.mil
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
program(1.0)
|
| 2 |
+
[buildInfo = dict<tensor<string, []>, tensor<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<ios17>(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 |
+
tensor<int32, []> y_axis_0 = const()[name = tensor<string, []>("y_axis_0"), val = tensor<int32, []>(0)];
|
| 6 |
+
tensor<int32, []> y_batch_dims_0 = const()[name = tensor<string, []>("y_batch_dims_0"), val = tensor<int32, []>(0)];
|
| 7 |
+
tensor<bool, []> y_validate_indices_0 = const()[name = tensor<string, []>("y_validate_indices_0"), val = tensor<bool, []>(false)];
|
| 8 |
+
tensor<fp16, [2829, 640]> module_prediction_embed_weight_to_fp16 = const()[name = tensor<string, []>("module_prediction_embed_weight_to_fp16"), val = tensor<fp16, [2829, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(64)))];
|
| 9 |
+
tensor<string, []> token_to_int16_dtype_0 = const()[name = tensor<string, []>("token_to_int16_dtype_0"), val = tensor<string, []>("int16")];
|
| 10 |
+
tensor<int16, [1, 1]> token_to_int16 = cast(dtype = token_to_int16_dtype_0, x = token)[name = tensor<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 = tensor<string, []>("y_cast_fp16_cast_uint16")];
|
| 12 |
+
tensor<int32, [3]> input_3_perm_0 = const()[name = tensor<string, []>("input_3_perm_0"), val = tensor<int32, [3]>([1, 0, 2])];
|
| 13 |
+
tensor<int32, []> split_0_num_splits_0 = const()[name = tensor<string, []>("split_0_num_splits_0"), val = tensor<int32, []>(2)];
|
| 14 |
+
tensor<int32, []> split_0_axis_0 = const()[name = tensor<string, []>("split_0_axis_0"), val = tensor<int32, []>(0)];
|
| 15 |
+
tensor<string, []> h_in_to_fp16_dtype_0 = const()[name = tensor<string, []>("h_in_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
|
| 16 |
+
tensor<fp16, [2, 1, 640]> h_in_to_fp16 = cast(dtype = h_in_to_fp16_dtype_0, x = h_in)[name = tensor<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 = tensor<string, []>("split_0_cast_fp16")];
|
| 18 |
+
tensor<int32, []> split_1_num_splits_0 = const()[name = tensor<string, []>("split_1_num_splits_0"), val = tensor<int32, []>(2)];
|
| 19 |
+
tensor<int32, []> split_1_axis_0 = const()[name = tensor<string, []>("split_1_axis_0"), val = tensor<int32, []>(0)];
|
| 20 |
+
tensor<string, []> c_in_to_fp16_dtype_0 = const()[name = tensor<string, []>("c_in_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
|
| 21 |
+
tensor<fp16, [2, 1, 640]> c_in_to_fp16 = cast(dtype = c_in_to_fp16_dtype_0, x = c_in)[name = tensor<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 = tensor<string, []>("split_1_cast_fp16")];
|
| 23 |
+
tensor<int32, [1]> input_lstm_layer_0_lstm_h0_squeeze_axes_0 = const()[name = tensor<string, []>("input_lstm_layer_0_lstm_h0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
|
| 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 = tensor<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 = tensor<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 = tensor<string, []>("input_lstm_layer_0_lstm_c0_squeeze_cast_fp16")];
|
| 27 |
+
tensor<string, []> input_lstm_layer_0_direction_0 = const()[name = tensor<string, []>("input_lstm_layer_0_direction_0"), val = tensor<string, []>("forward")];
|
| 28 |
+
tensor<bool, []> input_lstm_layer_0_output_sequence_0 = const()[name = tensor<string, []>("input_lstm_layer_0_output_sequence_0"), val = tensor<bool, []>(true)];
|
| 29 |
+
tensor<string, []> input_lstm_layer_0_recurrent_activation_0 = const()[name = tensor<string, []>("input_lstm_layer_0_recurrent_activation_0"), val = tensor<string, []>("sigmoid")];
|
| 30 |
+
tensor<string, []> input_lstm_layer_0_cell_activation_0 = const()[name = tensor<string, []>("input_lstm_layer_0_cell_activation_0"), val = tensor<string, []>("tanh")];
|
| 31 |
+
tensor<string, []> input_lstm_layer_0_activation_0 = const()[name = tensor<string, []>("input_lstm_layer_0_activation_0"), val = tensor<string, []>("tanh")];
|
| 32 |
+
tensor<fp16, [2560, 640]> concat_1_to_fp16 = const()[name = tensor<string, []>("concat_1_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(3621248)))];
|
| 33 |
+
tensor<fp16, [2560, 640]> concat_2_to_fp16 = const()[name = tensor<string, []>("concat_2_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(6898112)))];
|
| 34 |
+
tensor<fp16, [2560]> concat_0_to_fp16 = const()[name = tensor<string, []>("concat_0_to_fp16"), val = tensor<fp16, [2560]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(10174976)))];
|
| 35 |
+
tensor<fp16, [1, 1, 640]> input_3_cast_fp16 = transpose(perm = input_3_perm_0, x = y_cast_fp16_cast_uint16)[name = tensor<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 = tensor<string, []>("input_lstm_layer_0_cast_fp16")];
|
| 37 |
+
tensor<int32, [1]> input_lstm_h0_squeeze_axes_0 = const()[name = tensor<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 = tensor<string, []>("input_lstm_h0_squeeze_cast_fp16")];
|
| 39 |
+
tensor<int32, [1]> input_lstm_c0_squeeze_axes_0 = const()[name = tensor<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 = tensor<string, []>("input_lstm_c0_squeeze_cast_fp16")];
|
| 41 |
+
tensor<string, []> input_direction_0 = const()[name = tensor<string, []>("input_direction_0"), val = tensor<string, []>("forward")];
|
| 42 |
+
tensor<bool, []> input_output_sequence_0 = const()[name = tensor<string, []>("input_output_sequence_0"), val = tensor<bool, []>(true)];
|
| 43 |
+
tensor<string, []> input_recurrent_activation_0 = const()[name = tensor<string, []>("input_recurrent_activation_0"), val = tensor<string, []>("sigmoid")];
|
| 44 |
+
tensor<string, []> input_cell_activation_0 = const()[name = tensor<string, []>("input_cell_activation_0"), val = tensor<string, []>("tanh")];
|
| 45 |
+
tensor<string, []> input_activation_0 = const()[name = tensor<string, []>("input_activation_0"), val = tensor<string, []>("tanh")];
|
| 46 |
+
tensor<fp16, [2560, 640]> concat_4_to_fp16 = const()[name = tensor<string, []>("concat_4_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(10180160)))];
|
| 47 |
+
tensor<fp16, [2560, 640]> concat_5_to_fp16 = const()[name = tensor<string, []>("concat_5_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(13457024)))];
|
| 48 |
+
tensor<fp16, [2560]> concat_3_to_fp16 = const()[name = tensor<string, []>("concat_3_to_fp16"), val = tensor<fp16, [2560]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(16733888)))];
|
| 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 = tensor<string, []>("input_cast_fp16")];
|
| 50 |
+
tensor<int32, []> obj_3_axis_0 = const()[name = tensor<string, []>("obj_3_axis_0"), val = tensor<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 = tensor<string, []>("obj_3_cast_fp16")];
|
| 52 |
+
tensor<string, []> obj_3_cast_fp16_to_fp32_dtype_0 = const()[name = tensor<string, []>("obj_3_cast_fp16_to_fp32_dtype_0"), val = tensor<string, []>("fp32")];
|
| 53 |
+
tensor<int32, []> obj_axis_0 = const()[name = tensor<string, []>("obj_axis_0"), val = tensor<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 = tensor<string, []>("obj_cast_fp16")];
|
| 55 |
+
tensor<string, []> obj_cast_fp16_to_fp32_dtype_0 = const()[name = tensor<string, []>("obj_cast_fp16_to_fp32_dtype_0"), val = tensor<string, []>("fp32")];
|
| 56 |
+
tensor<int32, [3]> transpose_0_perm_0 = const()[name = tensor<string, []>("transpose_0_perm_0"), val = tensor<int32, [3]>([1, 2, 0])];
|
| 57 |
+
tensor<string, []> transpose_0_cast_fp16_to_fp32_dtype_0 = const()[name = tensor<string, []>("transpose_0_cast_fp16_to_fp32_dtype_0"), val = tensor<string, []>("fp32")];
|
| 58 |
+
tensor<fp16, [1, 640, 1]> transpose_0_cast_fp16 = transpose(perm = transpose_0_perm_0, x = input_cast_fp16_0)[name = tensor<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 = tensor<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 = tensor<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 = tensor<string, []>("cast_5")];
|
| 62 |
+
tensor<int32, [1]> token_length_tmp = identity(x = token_length)[name = tensor<string, []>("token_length_tmp")];
|
| 63 |
+
} -> (decoder_out, h_out, c_out);
|
| 64 |
+
}
|
latin/4480ms/decoder.mlmodelc/weights/weight.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:923df635dad8f9688d46afdf1689c0913cc977f9944db30e35a78e5b41799903
|
| 3 |
+
size 16739072
|
latin/4480ms/decoder_joint.mlmodelc/analytics/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:0908aa04510db0fde1188519ae0a067789a7826613e8f96c47832ded7d0de131
|
| 3 |
+
size 243
|
latin/4480ms/decoder_joint.mlmodelc/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:7a72f522aac0b6dc7490c1c71a270c607611a4eb357f1300bd3984852a98ff32
|
| 3 |
+
size 454
|
latin/4480ms/decoder_joint.mlmodelc/model.mil
ADDED
|
@@ -0,0 +1,83 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
program(1.0)
|
| 2 |
+
[buildInfo = dict<tensor<string, []>, tensor<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<ios17>(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 |
+
tensor<int32, []> y_axis_0 = const()[name = tensor<string, []>("y_axis_0"), val = tensor<int32, []>(0)];
|
| 6 |
+
tensor<int32, []> y_batch_dims_0 = const()[name = tensor<string, []>("y_batch_dims_0"), val = tensor<int32, []>(0)];
|
| 7 |
+
tensor<bool, []> y_validate_indices_0 = const()[name = tensor<string, []>("y_validate_indices_0"), val = tensor<bool, []>(false)];
|
| 8 |
+
tensor<fp16, [2829, 640]> decoder_module_prediction_embed_weight_to_fp16 = const()[name = tensor<string, []>("decoder_module_prediction_embed_weight_to_fp16"), val = tensor<fp16, [2829, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(64)))];
|
| 9 |
+
tensor<string, []> token_to_int16_dtype_0 = const()[name = tensor<string, []>("token_to_int16_dtype_0"), val = tensor<string, []>("int16")];
|
| 10 |
+
tensor<int16, [1, 1]> token_to_int16 = cast(dtype = token_to_int16_dtype_0, x = token)[name = tensor<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 = tensor<string, []>("y_cast_fp16_cast_uint16")];
|
| 12 |
+
tensor<int32, [3]> input_3_perm_0 = const()[name = tensor<string, []>("input_3_perm_0"), val = tensor<int32, [3]>([1, 0, 2])];
|
| 13 |
+
tensor<int32, []> split_0_num_splits_0 = const()[name = tensor<string, []>("split_0_num_splits_0"), val = tensor<int32, []>(2)];
|
| 14 |
+
tensor<int32, []> split_0_axis_0 = const()[name = tensor<string, []>("split_0_axis_0"), val = tensor<int32, []>(0)];
|
| 15 |
+
tensor<string, []> h_in_to_fp16_dtype_0 = const()[name = tensor<string, []>("h_in_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
|
| 16 |
+
tensor<fp16, [2, 1, 640]> h_in_to_fp16 = cast(dtype = h_in_to_fp16_dtype_0, x = h_in)[name = tensor<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 = tensor<string, []>("split_0_cast_fp16")];
|
| 18 |
+
tensor<int32, []> split_1_num_splits_0 = const()[name = tensor<string, []>("split_1_num_splits_0"), val = tensor<int32, []>(2)];
|
| 19 |
+
tensor<int32, []> split_1_axis_0 = const()[name = tensor<string, []>("split_1_axis_0"), val = tensor<int32, []>(0)];
|
| 20 |
+
tensor<string, []> c_in_to_fp16_dtype_0 = const()[name = tensor<string, []>("c_in_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
|
| 21 |
+
tensor<fp16, [2, 1, 640]> c_in_to_fp16 = cast(dtype = c_in_to_fp16_dtype_0, x = c_in)[name = tensor<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 = tensor<string, []>("split_1_cast_fp16")];
|
| 23 |
+
tensor<int32, [1]> input_5_lstm_layer_0_lstm_h0_squeeze_axes_0 = const()[name = tensor<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 = tensor<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 = tensor<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 = tensor<string, []>("input_5_lstm_layer_0_lstm_c0_squeeze_cast_fp16")];
|
| 27 |
+
tensor<string, []> input_5_lstm_layer_0_direction_0 = const()[name = tensor<string, []>("input_5_lstm_layer_0_direction_0"), val = tensor<string, []>("forward")];
|
| 28 |
+
tensor<bool, []> input_5_lstm_layer_0_output_sequence_0 = const()[name = tensor<string, []>("input_5_lstm_layer_0_output_sequence_0"), val = tensor<bool, []>(true)];
|
| 29 |
+
tensor<string, []> input_5_lstm_layer_0_recurrent_activation_0 = const()[name = tensor<string, []>("input_5_lstm_layer_0_recurrent_activation_0"), val = tensor<string, []>("sigmoid")];
|
| 30 |
+
tensor<string, []> input_5_lstm_layer_0_cell_activation_0 = const()[name = tensor<string, []>("input_5_lstm_layer_0_cell_activation_0"), val = tensor<string, []>("tanh")];
|
| 31 |
+
tensor<string, []> input_5_lstm_layer_0_activation_0 = const()[name = tensor<string, []>("input_5_lstm_layer_0_activation_0"), val = tensor<string, []>("tanh")];
|
| 32 |
+
tensor<fp16, [2560, 640]> concat_1_to_fp16 = const()[name = tensor<string, []>("concat_1_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(3621248)))];
|
| 33 |
+
tensor<fp16, [2560, 640]> concat_2_to_fp16 = const()[name = tensor<string, []>("concat_2_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(6898112)))];
|
| 34 |
+
tensor<fp16, [2560]> concat_0_to_fp16 = const()[name = tensor<string, []>("concat_0_to_fp16"), val = tensor<fp16, [2560]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(10174976)))];
|
| 35 |
+
tensor<fp16, [1, 1, 640]> input_3_cast_fp16 = transpose(perm = input_3_perm_0, x = y_cast_fp16_cast_uint16)[name = tensor<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 = tensor<string, []>("input_5_lstm_layer_0_cast_fp16")];
|
| 37 |
+
tensor<int32, [1]> input_5_lstm_h0_squeeze_axes_0 = const()[name = tensor<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 = tensor<string, []>("input_5_lstm_h0_squeeze_cast_fp16")];
|
| 39 |
+
tensor<int32, [1]> input_5_lstm_c0_squeeze_axes_0 = const()[name = tensor<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 = tensor<string, []>("input_5_lstm_c0_squeeze_cast_fp16")];
|
| 41 |
+
tensor<string, []> input_5_direction_0 = const()[name = tensor<string, []>("input_5_direction_0"), val = tensor<string, []>("forward")];
|
| 42 |
+
tensor<bool, []> input_5_output_sequence_0 = const()[name = tensor<string, []>("input_5_output_sequence_0"), val = tensor<bool, []>(true)];
|
| 43 |
+
tensor<string, []> input_5_recurrent_activation_0 = const()[name = tensor<string, []>("input_5_recurrent_activation_0"), val = tensor<string, []>("sigmoid")];
|
| 44 |
+
tensor<string, []> input_5_cell_activation_0 = const()[name = tensor<string, []>("input_5_cell_activation_0"), val = tensor<string, []>("tanh")];
|
| 45 |
+
tensor<string, []> input_5_activation_0 = const()[name = tensor<string, []>("input_5_activation_0"), val = tensor<string, []>("tanh")];
|
| 46 |
+
tensor<fp16, [2560, 640]> concat_4_to_fp16 = const()[name = tensor<string, []>("concat_4_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(10180160)))];
|
| 47 |
+
tensor<fp16, [2560, 640]> concat_5_to_fp16 = const()[name = tensor<string, []>("concat_5_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(13457024)))];
|
| 48 |
+
tensor<fp16, [2560]> concat_3_to_fp16 = const()[name = tensor<string, []>("concat_3_to_fp16"), val = tensor<fp16, [2560]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(16733888)))];
|
| 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 = tensor<string, []>("input_5_cast_fp16")];
|
| 50 |
+
tensor<int32, []> obj_3_axis_0 = const()[name = tensor<string, []>("obj_3_axis_0"), val = tensor<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 = tensor<string, []>("obj_3_cast_fp16")];
|
| 52 |
+
tensor<string, []> obj_3_cast_fp16_to_fp32_dtype_0 = const()[name = tensor<string, []>("obj_3_cast_fp16_to_fp32_dtype_0"), val = tensor<string, []>("fp32")];
|
| 53 |
+
tensor<int32, []> obj_axis_0 = const()[name = tensor<string, []>("obj_axis_0"), val = tensor<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 = tensor<string, []>("obj_cast_fp16")];
|
| 55 |
+
tensor<string, []> obj_cast_fp16_to_fp32_dtype_0 = const()[name = tensor<string, []>("obj_cast_fp16_to_fp32_dtype_0"), val = tensor<string, []>("fp32")];
|
| 56 |
+
tensor<int32, [3]> transpose_1_perm_0 = const()[name = tensor<string, []>("transpose_1_perm_0"), val = tensor<int32, [3]>([1, 0, 2])];
|
| 57 |
+
tensor<int32, [3]> input_7_perm_0 = const()[name = tensor<string, []>("input_7_perm_0"), val = tensor<int32, [3]>([0, 2, 1])];
|
| 58 |
+
tensor<string, []> encoder_to_fp16_dtype_0 = const()[name = tensor<string, []>("encoder_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
|
| 59 |
+
tensor<fp16, [640, 1024]> joint_module_enc_weight_to_fp16 = const()[name = tensor<string, []>("joint_module_enc_weight_to_fp16"), val = tensor<fp16, [640, 1024]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(16739072)))];
|
| 60 |
+
tensor<fp16, [640]> joint_module_enc_bias_to_fp16 = const()[name = tensor<string, []>("joint_module_enc_bias_to_fp16"), val = tensor<fp16, [640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(18049856)))];
|
| 61 |
+
tensor<fp16, [1, 1024, 1]> encoder_to_fp16 = cast(dtype = encoder_to_fp16_dtype_0, x = encoder)[name = tensor<string, []>("cast_4")];
|
| 62 |
+
tensor<fp16, [1, 1, 1024]> input_7_cast_fp16 = transpose(perm = input_7_perm_0, x = encoder_to_fp16)[name = tensor<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 = tensor<string, []>("linear_0_cast_fp16")];
|
| 64 |
+
tensor<fp16, [640, 640]> joint_module_pred_weight_to_fp16 = const()[name = tensor<string, []>("joint_module_pred_weight_to_fp16"), val = tensor<fp16, [640, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(18051200)))];
|
| 65 |
+
tensor<fp16, [640]> joint_module_pred_bias_to_fp16 = const()[name = tensor<string, []>("joint_module_pred_bias_to_fp16"), val = tensor<fp16, [640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(18870464)))];
|
| 66 |
+
tensor<fp16, [1, 1, 640]> transpose_1_cast_fp16 = transpose(perm = transpose_1_perm_0, x = input_5_cast_fp16_0)[name = tensor<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 = tensor<string, []>("linear_1_cast_fp16")];
|
| 68 |
+
tensor<int32, [1]> var_79_axes_0 = const()[name = tensor<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 = tensor<string, []>("op_79_cast_fp16")];
|
| 70 |
+
tensor<int32, [1]> var_80_axes_0 = const()[name = tensor<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 = tensor<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 = tensor<string, []>("input_11_cast_fp16")];
|
| 73 |
+
tensor<fp16, [1, 1, 1, 640]> input_13_cast_fp16 = relu(x = input_11_cast_fp16)[name = tensor<string, []>("input_13_cast_fp16")];
|
| 74 |
+
tensor<fp16, [2829, 640]> joint_module_joint_net_2_weight_to_fp16 = const()[name = tensor<string, []>("joint_module_joint_net_2_weight_to_fp16"), val = tensor<fp16, [2829, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(18871808)))];
|
| 75 |
+
tensor<fp16, [2829]> joint_module_joint_net_2_bias_to_fp16 = const()[name = tensor<string, []>("joint_module_joint_net_2_bias_to_fp16"), val = tensor<fp16, [2829]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(22492992)))];
|
| 76 |
+
tensor<fp16, [1, 1, 1, 2829]> 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 = tensor<string, []>("linear_2_cast_fp16")];
|
| 77 |
+
tensor<string, []> linear_2_cast_fp16_to_fp32_dtype_0 = const()[name = tensor<string, []>("linear_2_cast_fp16_to_fp32_dtype_0"), val = tensor<string, []>("fp32")];
|
| 78 |
+
tensor<fp32, [1, 1, 1, 2829]> logits = cast(dtype = linear_2_cast_fp16_to_fp32_dtype_0, x = linear_2_cast_fp16)[name = tensor<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 = tensor<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 = tensor<string, []>("cast_6")];
|
| 81 |
+
tensor<int32, [1]> token_length_tmp = identity(x = token_length)[name = tensor<string, []>("token_length_tmp")];
|
| 82 |
+
} -> (logits, h_out, c_out);
|
| 83 |
+
}
|
latin/4480ms/decoder_joint.mlmodelc/weights/weight.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:5792bda2b88daae2ccb66689069da286e801f7bd168a95aa430590efa93e8e04
|
| 3 |
+
size 22498714
|
latin/4480ms/encoder.mlmodelc/analytics/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:9a3d8e583dff43e6775dac37936793d4bf5006911c7d939a93d523dba70c81fc
|
| 3 |
+
size 243
|
latin/4480ms/encoder.mlmodelc/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:a2559ad5418947a317a172c03693799b39e4966e3ebef05fe56470fb9166df98
|
| 3 |
+
size 573
|
latin/4480ms/encoder.mlmodelc/model.mil
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
latin/4480ms/encoder.mlmodelc/weights/weight.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:faf7625ad245102745aadcb7aa80793ff74130eea5185bf991bda11dcd4f2e64
|
| 3 |
+
size 566716096
|
latin/4480ms/joint.mlmodelc/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:ed9ab0bdf1d741ecdbeafc300017a00cabb683e401736c9e207df20bfd820db5
|
| 3 |
+
size 341
|
latin/4480ms/joint.mlmodelc/model.mil
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
program(1.0)
|
| 2 |
+
[buildInfo = dict<tensor<string, []>, tensor<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<ios17>(tensor<fp32, [1, 640, 1]> decoder, tensor<fp32, [1, 1024, 1]> encoder) {
|
| 5 |
+
tensor<int32, [3]> input_1_perm_0 = const()[name = tensor<string, []>("input_1_perm_0"), val = tensor<int32, [3]>([0, 2, 1])];
|
| 6 |
+
tensor<string, []> encoder_to_fp16_dtype_0 = const()[name = tensor<string, []>("encoder_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
|
| 7 |
+
tensor<int32, [3]> input_3_perm_0 = const()[name = tensor<string, []>("input_3_perm_0"), val = tensor<int32, [3]>([0, 2, 1])];
|
| 8 |
+
tensor<string, []> decoder_to_fp16_dtype_0 = const()[name = tensor<string, []>("decoder_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
|
| 9 |
+
tensor<fp16, [640, 1024]> module_enc_weight_to_fp16 = const()[name = tensor<string, []>("module_enc_weight_to_fp16"), val = tensor<fp16, [640, 1024]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(64)))];
|
| 10 |
+
tensor<fp16, [640]> module_enc_bias_to_fp16 = const()[name = tensor<string, []>("module_enc_bias_to_fp16"), val = tensor<fp16, [640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(1310848)))];
|
| 11 |
+
tensor<fp16, [1, 1024, 1]> encoder_to_fp16 = cast(dtype = encoder_to_fp16_dtype_0, x = encoder)[name = tensor<string, []>("cast_2")];
|
| 12 |
+
tensor<fp16, [1, 1, 1024]> input_1_cast_fp16 = transpose(perm = input_1_perm_0, x = encoder_to_fp16)[name = tensor<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 = tensor<string, []>("linear_0_cast_fp16")];
|
| 14 |
+
tensor<fp16, [640, 640]> module_pred_weight_to_fp16 = const()[name = tensor<string, []>("module_pred_weight_to_fp16"), val = tensor<fp16, [640, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(1312192)))];
|
| 15 |
+
tensor<fp16, [640]> module_pred_bias_to_fp16 = const()[name = tensor<string, []>("module_pred_bias_to_fp16"), val = tensor<fp16, [640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(2131456)))];
|
| 16 |
+
tensor<fp16, [1, 640, 1]> decoder_to_fp16 = cast(dtype = decoder_to_fp16_dtype_0, x = decoder)[name = tensor<string, []>("cast_1")];
|
| 17 |
+
tensor<fp16, [1, 1, 640]> input_3_cast_fp16 = transpose(perm = input_3_perm_0, x = decoder_to_fp16)[name = tensor<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 = tensor<string, []>("linear_1_cast_fp16")];
|
| 19 |
+
tensor<int32, [1]> var_23_axes_0 = const()[name = tensor<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 = tensor<string, []>("op_23_cast_fp16")];
|
| 21 |
+
tensor<int32, [1]> var_25_axes_0 = const()[name = tensor<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 = tensor<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 = tensor<string, []>("input_5_cast_fp16")];
|
| 24 |
+
tensor<fp16, [1, 1, 1, 640]> input_7_cast_fp16 = relu(x = input_5_cast_fp16)[name = tensor<string, []>("input_7_cast_fp16")];
|
| 25 |
+
tensor<fp16, [2829, 640]> module_joint_net_2_weight_to_fp16 = const()[name = tensor<string, []>("module_joint_net_2_weight_to_fp16"), val = tensor<fp16, [2829, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(2132800)))];
|
| 26 |
+
tensor<fp16, [2829]> module_joint_net_2_bias_to_fp16 = const()[name = tensor<string, []>("module_joint_net_2_bias_to_fp16"), val = tensor<fp16, [2829]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(5753984)))];
|
| 27 |
+
tensor<fp16, [1, 1, 1, 2829]> 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 = tensor<string, []>("linear_2_cast_fp16")];
|
| 28 |
+
tensor<string, []> linear_2_cast_fp16_to_fp32_dtype_0 = const()[name = tensor<string, []>("linear_2_cast_fp16_to_fp32_dtype_0"), val = tensor<string, []>("fp32")];
|
| 29 |
+
tensor<fp32, [1, 1, 1, 2829]> logits = cast(dtype = linear_2_cast_fp16_to_fp32_dtype_0, x = linear_2_cast_fp16)[name = tensor<string, []>("cast_0")];
|
| 30 |
+
} -> (logits);
|
| 31 |
+
}
|
latin/4480ms/joint.mlmodelc/weights/weight.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:66b9d7405fad48fdd8413a7275c04d44933cb9beb80d318c158f80e52ff43fba
|
| 3 |
+
size 5759706
|
latin/4480ms/preprocessor.mlmodelc/analytics/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:394f3db1360792923d29ee45e42733a51ebce50c73cd36459ac2cfe3fed2ed5d
|
| 3 |
+
size 243
|
latin/4480ms/preprocessor.mlmodelc/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:7f6f8787b47a3d6b7b7dafd655b9fa9e562b99c28d2abca2ea2f8ac597b29549
|
| 3 |
+
size 371
|
latin/4480ms/preprocessor.mlmodelc/model.mil
ADDED
|
@@ -0,0 +1,122 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
program(1.0)
|
| 2 |
+
[buildInfo = dict<tensor<string, []>, tensor<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<ios17>(tensor<fp32, [1, ?]> audio, tensor<int32, [1]> audio_length) [FlexibleShapeInformation = tuple<tuple<tensor<string, []>, dict<tensor<string, []>, tensor<int32, [?]>>>, tuple<tensor<string, []>, dict<tensor<string, []>, list<tensor<int32, [2]>, ?>>>>((("DefaultShapes", {{"audio", [1, 1]}}), ("RangeDims", {{"audio", [[1, 1], [1, 1280000]]}})))] {
|
| 5 |
+
tensor<int32, []> var_9 = const()[name = tensor<string, []>("op_9"), val = tensor<int32, []>(1)];
|
| 6 |
+
tensor<int32, []> var_10 = const()[name = tensor<string, []>("op_10"), val = tensor<int32, []>(160)];
|
| 7 |
+
tensor<int32, []> var_12 = const()[name = tensor<string, []>("op_12"), val = tensor<int32, []>(0)];
|
| 8 |
+
tensor<int32, []> var_33 = const()[name = tensor<string, []>("op_33"), val = tensor<int32, []>(512)];
|
| 9 |
+
tensor<int32, [1]> var_34 = add(x = audio_length, y = var_33)[name = tensor<string, []>("op_34")];
|
| 10 |
+
tensor<int32, []> var_35 = const()[name = tensor<string, []>("op_35"), val = tensor<int32, []>(512)];
|
| 11 |
+
tensor<int32, [1]> var_36 = sub(x = var_34, y = var_35)[name = tensor<string, []>("op_36")];
|
| 12 |
+
tensor<int32, [1]> floor_div_0 = floor_div(x = var_36, y = var_10)[name = tensor<string, []>("floor_div_0")];
|
| 13 |
+
tensor<bool, [1]> var_39 = equal(x = audio_length, y = var_12)[name = tensor<string, []>("op_39")];
|
| 14 |
+
tensor<int32, [1]> var_40 = const()[name = tensor<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 = tensor<string, []>("seq_len")];
|
| 16 |
+
tensor<string, []> audio_to_fp16_dtype_0 = const()[name = tensor<string, []>("audio_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
|
| 17 |
+
tensor<fp16, [1, ?]> audio_to_fp16 = cast(dtype = audio_to_fp16_dtype_0, x = audio)[name = tensor<string, []>("cast_14")];
|
| 18 |
+
tensor<int32, [2]> var_42_shape_cast_fp16 = shape(x = audio_to_fp16)[name = tensor<string, []>("op_42_shape_cast_fp16")];
|
| 19 |
+
tensor<int32, []> gather_0_axis_0 = const()[name = tensor<string, []>("gather_0_axis_0"), val = tensor<int32, []>(0)];
|
| 20 |
+
tensor<int32, []> gather_0_batch_dims_0 = const()[name = tensor<string, []>("gather_0_batch_dims_0"), val = tensor<int32, []>(0)];
|
| 21 |
+
tensor<bool, []> gather_0_validate_indices_0 = const()[name = tensor<string, []>("gather_0_validate_indices_0"), val = tensor<bool, []>(false)];
|
| 22 |
+
tensor<string, []> var_42_shape_cast_fp16_to_int16_dtype_0 = const()[name = tensor<string, []>("op_42_shape_cast_fp16_to_int16_dtype_0"), val = tensor<string, []>("int16")];
|
| 23 |
+
tensor<uint16, []> select_0_to_uint16 = const()[name = tensor<string, []>("select_0_to_uint16"), val = tensor<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 = tensor<string, []>("cast_13")];
|
| 25 |
+
tensor<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 = tensor<string, []>("gather_0_cast_uint16")];
|
| 26 |
+
tensor<string, []> gather_0_cast_uint16_to_int32_dtype_0 = const()[name = tensor<string, []>("gather_0_cast_uint16_to_int32_dtype_0"), val = tensor<string, []>("int32")];
|
| 27 |
+
tensor<int32, []> const_0 = const()[name = tensor<string, []>("const_0"), val = tensor<int32, []>(0)];
|
| 28 |
+
tensor<int32, []> const_1 = const()[name = tensor<string, []>("const_1"), val = tensor<int32, []>(1)];
|
| 29 |
+
tensor<int32, []> gather_0_cast_uint16_to_int32 = cast(dtype = gather_0_cast_uint16_to_int32_dtype_0, x = gather_0_cast_uint16)[name = tensor<string, []>("cast_12")];
|
| 30 |
+
tensor<int32, [?]> var_43 = range_1d(end = gather_0_cast_uint16_to_int32, start = const_0, step = const_1)[name = tensor<string, []>("op_43")];
|
| 31 |
+
tensor<int32, [1]> var_44_axes_0 = const()[name = tensor<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 = tensor<string, []>("op_44")];
|
| 33 |
+
tensor<int32, [1]> var_45_axes_0 = const()[name = tensor<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 = tensor<string, []>("op_45")];
|
| 35 |
+
tensor<bool, [1, ?]> timemask = less(x = var_44, y = var_45)[name = tensor<string, []>("timemask")];
|
| 36 |
+
tensor<int32, [2]> var_48_begin_0 = const()[name = tensor<string, []>("op_48_begin_0"), val = tensor<int32, [2]>([0, 0])];
|
| 37 |
+
tensor<int32, [2]> var_48_end_0 = const()[name = tensor<string, []>("op_48_end_0"), val = tensor<int32, [2]>([1, 1])];
|
| 38 |
+
tensor<bool, [2]> var_48_end_mask_0 = const()[name = tensor<string, []>("op_48_end_mask_0"), val = tensor<bool, [2]>([true, false])];
|
| 39 |
+
tensor<bool, [2]> var_48_squeeze_mask_0 = const()[name = tensor<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 = tensor<string, []>("op_48_cast_fp16")];
|
| 41 |
+
tensor<int32, [1]> var_49_axes_0 = const()[name = tensor<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 = tensor<string, []>("op_49_cast_fp16")];
|
| 43 |
+
tensor<int32, [2]> var_51_begin_0 = const()[name = tensor<string, []>("op_51_begin_0"), val = tensor<int32, [2]>([0, 1])];
|
| 44 |
+
tensor<int32, [2]> var_51_end_0 = const()[name = tensor<string, []>("op_51_end_0"), val = tensor<int32, [2]>([1, 0])];
|
| 45 |
+
tensor<bool, [2]> var_51_end_mask_0 = const()[name = tensor<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 = tensor<string, []>("op_51_cast_fp16")];
|
| 47 |
+
tensor<int32, [2]> var_53_begin_0 = const()[name = tensor<string, []>("op_53_begin_0"), val = tensor<int32, [2]>([0, 0])];
|
| 48 |
+
tensor<int32, [2]> var_53_end_0 = const()[name = tensor<string, []>("op_53_end_0"), val = tensor<int32, [2]>([1, -1])];
|
| 49 |
+
tensor<bool, [2]> var_53_end_mask_0 = const()[name = tensor<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 = tensor<string, []>("op_53_cast_fp16")];
|
| 51 |
+
tensor<fp16, []> var_54_to_fp16 = const()[name = tensor<string, []>("op_54_to_fp16"), val = tensor<fp16, []>(0x1.f0cp-1)];
|
| 52 |
+
tensor<fp16, [1, ?]> var_55_cast_fp16 = mul(x = var_53_cast_fp16, y = var_54_to_fp16)[name = tensor<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 = tensor<string, []>("op_56_cast_fp16")];
|
| 54 |
+
tensor<bool, []> x_3_interleave_0 = const()[name = tensor<string, []>("x_3_interleave_0"), val = tensor<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 = tensor<string, []>("x_3_cast_fp16")];
|
| 56 |
+
tensor<bool, [1, ?]> var_59 = logical_not(x = timemask)[name = tensor<string, []>("op_59")];
|
| 57 |
+
tensor<fp16, []> var_16_to_fp16 = const()[name = tensor<string, []>("op_16_to_fp16"), val = tensor<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 = tensor<string, []>("input_1_cast_fp16")];
|
| 59 |
+
tensor<int32, [3]> concat_1x = const()[name = tensor<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 = tensor<string, []>("input_3_cast_fp16")];
|
| 61 |
+
tensor<int32, [6]> input_5_pad_0 = const()[name = tensor<string, []>("input_5_pad_0"), val = tensor<int32, [6]>([0, 0, 0, 0, 256, 256])];
|
| 62 |
+
tensor<string, []> input_5_mode_0 = const()[name = tensor<string, []>("input_5_mode_0"), val = tensor<string, []>("constant")];
|
| 63 |
+
tensor<fp16, []> const_3_to_fp16 = const()[name = tensor<string, []>("const_3_to_fp16"), val = tensor<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 = tensor<string, []>("input_5_cast_fp16")];
|
| 65 |
+
tensor<int32, [2]> concat_2x = const()[name = tensor<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 = tensor<string, []>("input_cast_fp16")];
|
| 67 |
+
tensor<int32, [1]> expand_dims_3 = const()[name = tensor<string, []>("expand_dims_3"), val = tensor<int32, [1]>([160])];
|
| 68 |
+
tensor<int32, [1]> expand_dims_4_axes_0 = const()[name = tensor<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 = tensor<string, []>("expand_dims_4_cast_fp16")];
|
| 70 |
+
tensor<string, []> conv_0_pad_type_0 = const()[name = tensor<string, []>("conv_0_pad_type_0"), val = tensor<string, []>("valid")];
|
| 71 |
+
tensor<int32, [2]> conv_0_pad_0 = const()[name = tensor<string, []>("conv_0_pad_0"), val = tensor<int32, [2]>([0, 0])];
|
| 72 |
+
tensor<int32, [1]> conv_0_dilations_0 = const()[name = tensor<string, []>("conv_0_dilations_0"), val = tensor<int32, [1]>([1])];
|
| 73 |
+
tensor<int32, []> conv_0_groups_0 = const()[name = tensor<string, []>("conv_0_groups_0"), val = tensor<int32, []>(1)];
|
| 74 |
+
tensor<fp16, [257, 1, 512]> expand_dims_1_to_fp16 = const()[name = tensor<string, []>("expand_dims_1_to_fp16"), val = tensor<fp16, [257, 1, 512]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(64)))];
|
| 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 = tensor<string, []>("conv_0_cast_fp16")];
|
| 76 |
+
tensor<string, []> conv_1_pad_type_0 = const()[name = tensor<string, []>("conv_1_pad_type_0"), val = tensor<string, []>("valid")];
|
| 77 |
+
tensor<int32, [2]> conv_1_pad_0 = const()[name = tensor<string, []>("conv_1_pad_0"), val = tensor<int32, [2]>([0, 0])];
|
| 78 |
+
tensor<int32, [1]> conv_1_dilations_0 = const()[name = tensor<string, []>("conv_1_dilations_0"), val = tensor<int32, [1]>([1])];
|
| 79 |
+
tensor<int32, []> conv_1_groups_0 = const()[name = tensor<string, []>("conv_1_groups_0"), val = tensor<int32, []>(1)];
|
| 80 |
+
tensor<fp16, [257, 1, 512]> expand_dims_2_to_fp16 = const()[name = tensor<string, []>("expand_dims_2_to_fp16"), val = tensor<fp16, [257, 1, 512]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(263296)))];
|
| 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 = tensor<string, []>("conv_1_cast_fp16")];
|
| 82 |
+
tensor<int32, []> stack_0_axis_0 = const()[name = tensor<string, []>("stack_0_axis_0"), val = tensor<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 = tensor<string, []>("stack_0_cast_fp16")];
|
| 84 |
+
tensor<fp16, []> var_19_promoted_to_fp16 = const()[name = tensor<string, []>("op_19_promoted_to_fp16"), val = tensor<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 = tensor<string, []>("op_74_cast_fp16")];
|
| 86 |
+
tensor<int32, [1]> var_76_axes_0 = const()[name = tensor<string, []>("op_76_axes_0"), val = tensor<int32, [1]>([-1])];
|
| 87 |
+
tensor<bool, []> var_76_keep_dims_0 = const()[name = tensor<string, []>("op_76_keep_dims_0"), val = tensor<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 = tensor<string, []>("op_76_cast_fp16")];
|
| 89 |
+
tensor<fp16, [1, 257, ?]> x_11_cast_fp16 = identity(x = var_76_cast_fp16)[name = tensor<string, []>("x_11_cast_fp16")];
|
| 90 |
+
tensor<bool, []> x_13_transpose_x_0 = const()[name = tensor<string, []>("x_13_transpose_x_0"), val = tensor<bool, []>(false)];
|
| 91 |
+
tensor<bool, []> x_13_transpose_y_0 = const()[name = tensor<string, []>("x_13_transpose_y_0"), val = tensor<bool, []>(false)];
|
| 92 |
+
tensor<fp16, [1, 128, 257]> const_4_to_fp16 = const()[name = tensor<string, []>("const_4_to_fp16"), val = tensor<fp16, [1, 128, 257]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<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 = tensor<string, []>("x_13_cast_fp16")];
|
| 94 |
+
tensor<fp16, []> var_83_to_fp16 = const()[name = tensor<string, []>("op_83_to_fp16"), val = tensor<fp16, []>(0x1p-24)];
|
| 95 |
+
tensor<fp16, [1, 128, ?]> var_84_cast_fp16 = add(x = x_13_cast_fp16, y = var_83_to_fp16)[name = tensor<string, []>("op_84_cast_fp16")];
|
| 96 |
+
tensor<fp32, []> x_epsilon_0 = const()[name = tensor<string, []>("x_epsilon_0"), val = tensor<fp32, []>(0x1p-149)];
|
| 97 |
+
tensor<fp16, [1, 128, ?]> x_cast_fp16 = log(epsilon = x_epsilon_0, x = var_84_cast_fp16)[name = tensor<string, []>("x_cast_fp16")];
|
| 98 |
+
tensor<int32, [3]> var_86_shape_cast_fp16 = shape(x = x_cast_fp16)[name = tensor<string, []>("op_86_shape_cast_fp16")];
|
| 99 |
+
tensor<int32, []> gather_5_axis_0 = const()[name = tensor<string, []>("gather_5_axis_0"), val = tensor<int32, []>(0)];
|
| 100 |
+
tensor<int32, []> gather_5_batch_dims_0 = const()[name = tensor<string, []>("gather_5_batch_dims_0"), val = tensor<int32, []>(0)];
|
| 101 |
+
tensor<bool, []> gather_5_validate_indices_0 = const()[name = tensor<string, []>("gather_5_validate_indices_0"), val = tensor<bool, []>(false)];
|
| 102 |
+
tensor<string, []> var_86_shape_cast_fp16_to_uint16_dtype_0 = const()[name = tensor<string, []>("op_86_shape_cast_fp16_to_uint16_dtype_0"), val = tensor<string, []>("uint16")];
|
| 103 |
+
tensor<uint16, []> select_5_to_uint16 = const()[name = tensor<string, []>("select_5_to_uint16"), val = tensor<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 = tensor<string, []>("cast_11")];
|
| 105 |
+
tensor<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 = tensor<string, []>("gather_5_cast_uint16")];
|
| 106 |
+
tensor<string, []> gather_5_cast_uint16_to_int32_dtype_0 = const()[name = tensor<string, []>("gather_5_cast_uint16_to_int32_dtype_0"), val = tensor<string, []>("int32")];
|
| 107 |
+
tensor<int32, []> const_5 = const()[name = tensor<string, []>("const_5"), val = tensor<int32, []>(0)];
|
| 108 |
+
tensor<int32, []> const_6 = const()[name = tensor<string, []>("const_6"), val = tensor<int32, []>(1)];
|
| 109 |
+
tensor<int32, []> gather_5_cast_uint16_to_int32 = cast(dtype = gather_5_cast_uint16_to_int32_dtype_0, x = gather_5_cast_uint16)[name = tensor<string, []>("cast_10")];
|
| 110 |
+
tensor<int32, [?]> mask_1 = range_1d(end = gather_5_cast_uint16_to_int32, start = const_5, step = const_6)[name = tensor<string, []>("mask_1")];
|
| 111 |
+
tensor<int32, [1]> expand_dims_0_axes_0 = const()[name = tensor<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 = tensor<string, []>("expand_dims_0")];
|
| 113 |
+
tensor<int32, [1]> var_91_axes_0 = const()[name = tensor<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 = tensor<string, []>("op_91")];
|
| 115 |
+
tensor<bool, [1, ?]> mask = greater_equal(x = expand_dims_0, y = var_91)[name = tensor<string, []>("mask")];
|
| 116 |
+
tensor<int32, [1]> var_93_axes_0 = const()[name = tensor<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 = tensor<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 = tensor<string, []>("processed_signal_cast_fp16")];
|
| 119 |
+
tensor<string, []> processed_signal_cast_fp16_to_fp32_dtype_0 = const()[name = tensor<string, []>("processed_signal_cast_fp16_to_fp32_dtype_0"), val = tensor<string, []>("fp32")];
|
| 120 |
+
tensor<fp32, [1, 128, ?]> mel = cast(dtype = processed_signal_cast_fp16_to_fp32_dtype_0, x = processed_signal_cast_fp16)[name = tensor<string, []>("cast_9")];
|
| 121 |
+
} -> (mel, mel_length);
|
| 122 |
+
}
|
latin/4480ms/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
|
latin/560ms/decoder.mlmodelc/analytics/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:55908585dbf2b684a9b8b51947317fb3f097664df47030c71f5751985e99c8a7
|
| 3 |
+
size 243
|
latin/560ms/decoder.mlmodelc/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:76a3ae4c7f2dcd6cd4bf3a1ccbe40ad0c0aecd693e1cdebd8cb85fa30f44a8b9
|
| 3 |
+
size 433
|
latin/560ms/decoder.mlmodelc/model.mil
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
program(1.0)
|
| 2 |
+
[buildInfo = dict<tensor<string, []>, tensor<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<ios17>(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 |
+
tensor<int32, []> y_axis_0 = const()[name = tensor<string, []>("y_axis_0"), val = tensor<int32, []>(0)];
|
| 6 |
+
tensor<int32, []> y_batch_dims_0 = const()[name = tensor<string, []>("y_batch_dims_0"), val = tensor<int32, []>(0)];
|
| 7 |
+
tensor<bool, []> y_validate_indices_0 = const()[name = tensor<string, []>("y_validate_indices_0"), val = tensor<bool, []>(false)];
|
| 8 |
+
tensor<fp16, [2829, 640]> module_prediction_embed_weight_to_fp16 = const()[name = tensor<string, []>("module_prediction_embed_weight_to_fp16"), val = tensor<fp16, [2829, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(64)))];
|
| 9 |
+
tensor<string, []> token_to_int16_dtype_0 = const()[name = tensor<string, []>("token_to_int16_dtype_0"), val = tensor<string, []>("int16")];
|
| 10 |
+
tensor<int16, [1, 1]> token_to_int16 = cast(dtype = token_to_int16_dtype_0, x = token)[name = tensor<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 = tensor<string, []>("y_cast_fp16_cast_uint16")];
|
| 12 |
+
tensor<int32, [3]> input_3_perm_0 = const()[name = tensor<string, []>("input_3_perm_0"), val = tensor<int32, [3]>([1, 0, 2])];
|
| 13 |
+
tensor<int32, []> split_0_num_splits_0 = const()[name = tensor<string, []>("split_0_num_splits_0"), val = tensor<int32, []>(2)];
|
| 14 |
+
tensor<int32, []> split_0_axis_0 = const()[name = tensor<string, []>("split_0_axis_0"), val = tensor<int32, []>(0)];
|
| 15 |
+
tensor<string, []> h_in_to_fp16_dtype_0 = const()[name = tensor<string, []>("h_in_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
|
| 16 |
+
tensor<fp16, [2, 1, 640]> h_in_to_fp16 = cast(dtype = h_in_to_fp16_dtype_0, x = h_in)[name = tensor<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 = tensor<string, []>("split_0_cast_fp16")];
|
| 18 |
+
tensor<int32, []> split_1_num_splits_0 = const()[name = tensor<string, []>("split_1_num_splits_0"), val = tensor<int32, []>(2)];
|
| 19 |
+
tensor<int32, []> split_1_axis_0 = const()[name = tensor<string, []>("split_1_axis_0"), val = tensor<int32, []>(0)];
|
| 20 |
+
tensor<string, []> c_in_to_fp16_dtype_0 = const()[name = tensor<string, []>("c_in_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
|
| 21 |
+
tensor<fp16, [2, 1, 640]> c_in_to_fp16 = cast(dtype = c_in_to_fp16_dtype_0, x = c_in)[name = tensor<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 = tensor<string, []>("split_1_cast_fp16")];
|
| 23 |
+
tensor<int32, [1]> input_lstm_layer_0_lstm_h0_squeeze_axes_0 = const()[name = tensor<string, []>("input_lstm_layer_0_lstm_h0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
|
| 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 = tensor<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 = tensor<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 = tensor<string, []>("input_lstm_layer_0_lstm_c0_squeeze_cast_fp16")];
|
| 27 |
+
tensor<string, []> input_lstm_layer_0_direction_0 = const()[name = tensor<string, []>("input_lstm_layer_0_direction_0"), val = tensor<string, []>("forward")];
|
| 28 |
+
tensor<bool, []> input_lstm_layer_0_output_sequence_0 = const()[name = tensor<string, []>("input_lstm_layer_0_output_sequence_0"), val = tensor<bool, []>(true)];
|
| 29 |
+
tensor<string, []> input_lstm_layer_0_recurrent_activation_0 = const()[name = tensor<string, []>("input_lstm_layer_0_recurrent_activation_0"), val = tensor<string, []>("sigmoid")];
|
| 30 |
+
tensor<string, []> input_lstm_layer_0_cell_activation_0 = const()[name = tensor<string, []>("input_lstm_layer_0_cell_activation_0"), val = tensor<string, []>("tanh")];
|
| 31 |
+
tensor<string, []> input_lstm_layer_0_activation_0 = const()[name = tensor<string, []>("input_lstm_layer_0_activation_0"), val = tensor<string, []>("tanh")];
|
| 32 |
+
tensor<fp16, [2560, 640]> concat_1_to_fp16 = const()[name = tensor<string, []>("concat_1_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(3621248)))];
|
| 33 |
+
tensor<fp16, [2560, 640]> concat_2_to_fp16 = const()[name = tensor<string, []>("concat_2_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(6898112)))];
|
| 34 |
+
tensor<fp16, [2560]> concat_0_to_fp16 = const()[name = tensor<string, []>("concat_0_to_fp16"), val = tensor<fp16, [2560]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(10174976)))];
|
| 35 |
+
tensor<fp16, [1, 1, 640]> input_3_cast_fp16 = transpose(perm = input_3_perm_0, x = y_cast_fp16_cast_uint16)[name = tensor<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 = tensor<string, []>("input_lstm_layer_0_cast_fp16")];
|
| 37 |
+
tensor<int32, [1]> input_lstm_h0_squeeze_axes_0 = const()[name = tensor<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 = tensor<string, []>("input_lstm_h0_squeeze_cast_fp16")];
|
| 39 |
+
tensor<int32, [1]> input_lstm_c0_squeeze_axes_0 = const()[name = tensor<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 = tensor<string, []>("input_lstm_c0_squeeze_cast_fp16")];
|
| 41 |
+
tensor<string, []> input_direction_0 = const()[name = tensor<string, []>("input_direction_0"), val = tensor<string, []>("forward")];
|
| 42 |
+
tensor<bool, []> input_output_sequence_0 = const()[name = tensor<string, []>("input_output_sequence_0"), val = tensor<bool, []>(true)];
|
| 43 |
+
tensor<string, []> input_recurrent_activation_0 = const()[name = tensor<string, []>("input_recurrent_activation_0"), val = tensor<string, []>("sigmoid")];
|
| 44 |
+
tensor<string, []> input_cell_activation_0 = const()[name = tensor<string, []>("input_cell_activation_0"), val = tensor<string, []>("tanh")];
|
| 45 |
+
tensor<string, []> input_activation_0 = const()[name = tensor<string, []>("input_activation_0"), val = tensor<string, []>("tanh")];
|
| 46 |
+
tensor<fp16, [2560, 640]> concat_4_to_fp16 = const()[name = tensor<string, []>("concat_4_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(10180160)))];
|
| 47 |
+
tensor<fp16, [2560, 640]> concat_5_to_fp16 = const()[name = tensor<string, []>("concat_5_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(13457024)))];
|
| 48 |
+
tensor<fp16, [2560]> concat_3_to_fp16 = const()[name = tensor<string, []>("concat_3_to_fp16"), val = tensor<fp16, [2560]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(16733888)))];
|
| 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 = tensor<string, []>("input_cast_fp16")];
|
| 50 |
+
tensor<int32, []> obj_3_axis_0 = const()[name = tensor<string, []>("obj_3_axis_0"), val = tensor<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 = tensor<string, []>("obj_3_cast_fp16")];
|
| 52 |
+
tensor<string, []> obj_3_cast_fp16_to_fp32_dtype_0 = const()[name = tensor<string, []>("obj_3_cast_fp16_to_fp32_dtype_0"), val = tensor<string, []>("fp32")];
|
| 53 |
+
tensor<int32, []> obj_axis_0 = const()[name = tensor<string, []>("obj_axis_0"), val = tensor<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 = tensor<string, []>("obj_cast_fp16")];
|
| 55 |
+
tensor<string, []> obj_cast_fp16_to_fp32_dtype_0 = const()[name = tensor<string, []>("obj_cast_fp16_to_fp32_dtype_0"), val = tensor<string, []>("fp32")];
|
| 56 |
+
tensor<int32, [3]> transpose_0_perm_0 = const()[name = tensor<string, []>("transpose_0_perm_0"), val = tensor<int32, [3]>([1, 2, 0])];
|
| 57 |
+
tensor<string, []> transpose_0_cast_fp16_to_fp32_dtype_0 = const()[name = tensor<string, []>("transpose_0_cast_fp16_to_fp32_dtype_0"), val = tensor<string, []>("fp32")];
|
| 58 |
+
tensor<fp16, [1, 640, 1]> transpose_0_cast_fp16 = transpose(perm = transpose_0_perm_0, x = input_cast_fp16_0)[name = tensor<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 = tensor<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 = tensor<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 = tensor<string, []>("cast_5")];
|
| 62 |
+
tensor<int32, [1]> token_length_tmp = identity(x = token_length)[name = tensor<string, []>("token_length_tmp")];
|
| 63 |
+
} -> (decoder_out, h_out, c_out);
|
| 64 |
+
}
|
latin/560ms/decoder.mlmodelc/weights/weight.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:923df635dad8f9688d46afdf1689c0913cc977f9944db30e35a78e5b41799903
|
| 3 |
+
size 16739072
|
latin/560ms/decoder_joint.mlmodelc/analytics/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:0908aa04510db0fde1188519ae0a067789a7826613e8f96c47832ded7d0de131
|
| 3 |
+
size 243
|
latin/560ms/decoder_joint.mlmodelc/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:e57d6034c1ff58fadcc4e89ab8ae708a153f4707a836cf7cea45b9f5daaeb77f
|
| 3 |
+
size 454
|
latin/560ms/decoder_joint.mlmodelc/model.mil
ADDED
|
@@ -0,0 +1,83 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
program(1.0)
|
| 2 |
+
[buildInfo = dict<tensor<string, []>, tensor<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<ios17>(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 |
+
tensor<int32, []> y_axis_0 = const()[name = tensor<string, []>("y_axis_0"), val = tensor<int32, []>(0)];
|
| 6 |
+
tensor<int32, []> y_batch_dims_0 = const()[name = tensor<string, []>("y_batch_dims_0"), val = tensor<int32, []>(0)];
|
| 7 |
+
tensor<bool, []> y_validate_indices_0 = const()[name = tensor<string, []>("y_validate_indices_0"), val = tensor<bool, []>(false)];
|
| 8 |
+
tensor<fp16, [2829, 640]> decoder_module_prediction_embed_weight_to_fp16 = const()[name = tensor<string, []>("decoder_module_prediction_embed_weight_to_fp16"), val = tensor<fp16, [2829, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(64)))];
|
| 9 |
+
tensor<string, []> token_to_int16_dtype_0 = const()[name = tensor<string, []>("token_to_int16_dtype_0"), val = tensor<string, []>("int16")];
|
| 10 |
+
tensor<int16, [1, 1]> token_to_int16 = cast(dtype = token_to_int16_dtype_0, x = token)[name = tensor<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 = tensor<string, []>("y_cast_fp16_cast_uint16")];
|
| 12 |
+
tensor<int32, [3]> input_3_perm_0 = const()[name = tensor<string, []>("input_3_perm_0"), val = tensor<int32, [3]>([1, 0, 2])];
|
| 13 |
+
tensor<int32, []> split_0_num_splits_0 = const()[name = tensor<string, []>("split_0_num_splits_0"), val = tensor<int32, []>(2)];
|
| 14 |
+
tensor<int32, []> split_0_axis_0 = const()[name = tensor<string, []>("split_0_axis_0"), val = tensor<int32, []>(0)];
|
| 15 |
+
tensor<string, []> h_in_to_fp16_dtype_0 = const()[name = tensor<string, []>("h_in_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
|
| 16 |
+
tensor<fp16, [2, 1, 640]> h_in_to_fp16 = cast(dtype = h_in_to_fp16_dtype_0, x = h_in)[name = tensor<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 = tensor<string, []>("split_0_cast_fp16")];
|
| 18 |
+
tensor<int32, []> split_1_num_splits_0 = const()[name = tensor<string, []>("split_1_num_splits_0"), val = tensor<int32, []>(2)];
|
| 19 |
+
tensor<int32, []> split_1_axis_0 = const()[name = tensor<string, []>("split_1_axis_0"), val = tensor<int32, []>(0)];
|
| 20 |
+
tensor<string, []> c_in_to_fp16_dtype_0 = const()[name = tensor<string, []>("c_in_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
|
| 21 |
+
tensor<fp16, [2, 1, 640]> c_in_to_fp16 = cast(dtype = c_in_to_fp16_dtype_0, x = c_in)[name = tensor<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 = tensor<string, []>("split_1_cast_fp16")];
|
| 23 |
+
tensor<int32, [1]> input_5_lstm_layer_0_lstm_h0_squeeze_axes_0 = const()[name = tensor<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 = tensor<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 = tensor<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 = tensor<string, []>("input_5_lstm_layer_0_lstm_c0_squeeze_cast_fp16")];
|
| 27 |
+
tensor<string, []> input_5_lstm_layer_0_direction_0 = const()[name = tensor<string, []>("input_5_lstm_layer_0_direction_0"), val = tensor<string, []>("forward")];
|
| 28 |
+
tensor<bool, []> input_5_lstm_layer_0_output_sequence_0 = const()[name = tensor<string, []>("input_5_lstm_layer_0_output_sequence_0"), val = tensor<bool, []>(true)];
|
| 29 |
+
tensor<string, []> input_5_lstm_layer_0_recurrent_activation_0 = const()[name = tensor<string, []>("input_5_lstm_layer_0_recurrent_activation_0"), val = tensor<string, []>("sigmoid")];
|
| 30 |
+
tensor<string, []> input_5_lstm_layer_0_cell_activation_0 = const()[name = tensor<string, []>("input_5_lstm_layer_0_cell_activation_0"), val = tensor<string, []>("tanh")];
|
| 31 |
+
tensor<string, []> input_5_lstm_layer_0_activation_0 = const()[name = tensor<string, []>("input_5_lstm_layer_0_activation_0"), val = tensor<string, []>("tanh")];
|
| 32 |
+
tensor<fp16, [2560, 640]> concat_1_to_fp16 = const()[name = tensor<string, []>("concat_1_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(3621248)))];
|
| 33 |
+
tensor<fp16, [2560, 640]> concat_2_to_fp16 = const()[name = tensor<string, []>("concat_2_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(6898112)))];
|
| 34 |
+
tensor<fp16, [2560]> concat_0_to_fp16 = const()[name = tensor<string, []>("concat_0_to_fp16"), val = tensor<fp16, [2560]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(10174976)))];
|
| 35 |
+
tensor<fp16, [1, 1, 640]> input_3_cast_fp16 = transpose(perm = input_3_perm_0, x = y_cast_fp16_cast_uint16)[name = tensor<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 = tensor<string, []>("input_5_lstm_layer_0_cast_fp16")];
|
| 37 |
+
tensor<int32, [1]> input_5_lstm_h0_squeeze_axes_0 = const()[name = tensor<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 = tensor<string, []>("input_5_lstm_h0_squeeze_cast_fp16")];
|
| 39 |
+
tensor<int32, [1]> input_5_lstm_c0_squeeze_axes_0 = const()[name = tensor<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 = tensor<string, []>("input_5_lstm_c0_squeeze_cast_fp16")];
|
| 41 |
+
tensor<string, []> input_5_direction_0 = const()[name = tensor<string, []>("input_5_direction_0"), val = tensor<string, []>("forward")];
|
| 42 |
+
tensor<bool, []> input_5_output_sequence_0 = const()[name = tensor<string, []>("input_5_output_sequence_0"), val = tensor<bool, []>(true)];
|
| 43 |
+
tensor<string, []> input_5_recurrent_activation_0 = const()[name = tensor<string, []>("input_5_recurrent_activation_0"), val = tensor<string, []>("sigmoid")];
|
| 44 |
+
tensor<string, []> input_5_cell_activation_0 = const()[name = tensor<string, []>("input_5_cell_activation_0"), val = tensor<string, []>("tanh")];
|
| 45 |
+
tensor<string, []> input_5_activation_0 = const()[name = tensor<string, []>("input_5_activation_0"), val = tensor<string, []>("tanh")];
|
| 46 |
+
tensor<fp16, [2560, 640]> concat_4_to_fp16 = const()[name = tensor<string, []>("concat_4_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(10180160)))];
|
| 47 |
+
tensor<fp16, [2560, 640]> concat_5_to_fp16 = const()[name = tensor<string, []>("concat_5_to_fp16"), val = tensor<fp16, [2560, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(13457024)))];
|
| 48 |
+
tensor<fp16, [2560]> concat_3_to_fp16 = const()[name = tensor<string, []>("concat_3_to_fp16"), val = tensor<fp16, [2560]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(16733888)))];
|
| 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 = tensor<string, []>("input_5_cast_fp16")];
|
| 50 |
+
tensor<int32, []> obj_3_axis_0 = const()[name = tensor<string, []>("obj_3_axis_0"), val = tensor<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 = tensor<string, []>("obj_3_cast_fp16")];
|
| 52 |
+
tensor<string, []> obj_3_cast_fp16_to_fp32_dtype_0 = const()[name = tensor<string, []>("obj_3_cast_fp16_to_fp32_dtype_0"), val = tensor<string, []>("fp32")];
|
| 53 |
+
tensor<int32, []> obj_axis_0 = const()[name = tensor<string, []>("obj_axis_0"), val = tensor<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 = tensor<string, []>("obj_cast_fp16")];
|
| 55 |
+
tensor<string, []> obj_cast_fp16_to_fp32_dtype_0 = const()[name = tensor<string, []>("obj_cast_fp16_to_fp32_dtype_0"), val = tensor<string, []>("fp32")];
|
| 56 |
+
tensor<int32, [3]> transpose_1_perm_0 = const()[name = tensor<string, []>("transpose_1_perm_0"), val = tensor<int32, [3]>([1, 0, 2])];
|
| 57 |
+
tensor<int32, [3]> input_7_perm_0 = const()[name = tensor<string, []>("input_7_perm_0"), val = tensor<int32, [3]>([0, 2, 1])];
|
| 58 |
+
tensor<string, []> encoder_to_fp16_dtype_0 = const()[name = tensor<string, []>("encoder_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
|
| 59 |
+
tensor<fp16, [640, 1024]> joint_module_enc_weight_to_fp16 = const()[name = tensor<string, []>("joint_module_enc_weight_to_fp16"), val = tensor<fp16, [640, 1024]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(16739072)))];
|
| 60 |
+
tensor<fp16, [640]> joint_module_enc_bias_to_fp16 = const()[name = tensor<string, []>("joint_module_enc_bias_to_fp16"), val = tensor<fp16, [640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(18049856)))];
|
| 61 |
+
tensor<fp16, [1, 1024, 1]> encoder_to_fp16 = cast(dtype = encoder_to_fp16_dtype_0, x = encoder)[name = tensor<string, []>("cast_4")];
|
| 62 |
+
tensor<fp16, [1, 1, 1024]> input_7_cast_fp16 = transpose(perm = input_7_perm_0, x = encoder_to_fp16)[name = tensor<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 = tensor<string, []>("linear_0_cast_fp16")];
|
| 64 |
+
tensor<fp16, [640, 640]> joint_module_pred_weight_to_fp16 = const()[name = tensor<string, []>("joint_module_pred_weight_to_fp16"), val = tensor<fp16, [640, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(18051200)))];
|
| 65 |
+
tensor<fp16, [640]> joint_module_pred_bias_to_fp16 = const()[name = tensor<string, []>("joint_module_pred_bias_to_fp16"), val = tensor<fp16, [640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(18870464)))];
|
| 66 |
+
tensor<fp16, [1, 1, 640]> transpose_1_cast_fp16 = transpose(perm = transpose_1_perm_0, x = input_5_cast_fp16_0)[name = tensor<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 = tensor<string, []>("linear_1_cast_fp16")];
|
| 68 |
+
tensor<int32, [1]> var_79_axes_0 = const()[name = tensor<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 = tensor<string, []>("op_79_cast_fp16")];
|
| 70 |
+
tensor<int32, [1]> var_80_axes_0 = const()[name = tensor<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 = tensor<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 = tensor<string, []>("input_11_cast_fp16")];
|
| 73 |
+
tensor<fp16, [1, 1, 1, 640]> input_13_cast_fp16 = relu(x = input_11_cast_fp16)[name = tensor<string, []>("input_13_cast_fp16")];
|
| 74 |
+
tensor<fp16, [2829, 640]> joint_module_joint_net_2_weight_to_fp16 = const()[name = tensor<string, []>("joint_module_joint_net_2_weight_to_fp16"), val = tensor<fp16, [2829, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(18871808)))];
|
| 75 |
+
tensor<fp16, [2829]> joint_module_joint_net_2_bias_to_fp16 = const()[name = tensor<string, []>("joint_module_joint_net_2_bias_to_fp16"), val = tensor<fp16, [2829]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(22492992)))];
|
| 76 |
+
tensor<fp16, [1, 1, 1, 2829]> 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 = tensor<string, []>("linear_2_cast_fp16")];
|
| 77 |
+
tensor<string, []> linear_2_cast_fp16_to_fp32_dtype_0 = const()[name = tensor<string, []>("linear_2_cast_fp16_to_fp32_dtype_0"), val = tensor<string, []>("fp32")];
|
| 78 |
+
tensor<fp32, [1, 1, 1, 2829]> logits = cast(dtype = linear_2_cast_fp16_to_fp32_dtype_0, x = linear_2_cast_fp16)[name = tensor<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 = tensor<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 = tensor<string, []>("cast_6")];
|
| 81 |
+
tensor<int32, [1]> token_length_tmp = identity(x = token_length)[name = tensor<string, []>("token_length_tmp")];
|
| 82 |
+
} -> (logits, h_out, c_out);
|
| 83 |
+
}
|
latin/560ms/decoder_joint.mlmodelc/weights/weight.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:5792bda2b88daae2ccb66689069da286e801f7bd168a95aa430590efa93e8e04
|
| 3 |
+
size 22498714
|
latin/560ms/encoder.mlmodelc/analytics/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:3409887ed9eadc8689bd4c64754d95e4119152dc0b9ee1650664d2a6a689c783
|
| 3 |
+
size 243
|
latin/560ms/encoder.mlmodelc/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:ea0651d7d9662d984039c554a2094ed07c281ffb127fba77a6f99847c64b0ca2
|
| 3 |
+
size 572
|
latin/560ms/encoder.mlmodelc/model.mil
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
latin/560ms/encoder.mlmodelc/weights/weight.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:0e994440ed6c936ac375d375eaab16eb445881ff2d9bc62384de991b411e234e
|
| 3 |
+
size 564307200
|
latin/560ms/joint.mlmodelc/analytics/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:80eab40693c0a7d60ee85044af620fdc20147ce8902086c91656ad13d04bf063
|
| 3 |
+
size 243
|
latin/560ms/joint.mlmodelc/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:b638d3d0cdd52c133da7ece37df5aa815182d41328edeaa87dfde1c306c05089
|
| 3 |
+
size 341
|
latin/560ms/joint.mlmodelc/model.mil
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
program(1.0)
|
| 2 |
+
[buildInfo = dict<tensor<string, []>, tensor<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<ios17>(tensor<fp32, [1, 640, 1]> decoder, tensor<fp32, [1, 1024, 1]> encoder) {
|
| 5 |
+
tensor<int32, [3]> input_1_perm_0 = const()[name = tensor<string, []>("input_1_perm_0"), val = tensor<int32, [3]>([0, 2, 1])];
|
| 6 |
+
tensor<string, []> encoder_to_fp16_dtype_0 = const()[name = tensor<string, []>("encoder_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
|
| 7 |
+
tensor<int32, [3]> input_3_perm_0 = const()[name = tensor<string, []>("input_3_perm_0"), val = tensor<int32, [3]>([0, 2, 1])];
|
| 8 |
+
tensor<string, []> decoder_to_fp16_dtype_0 = const()[name = tensor<string, []>("decoder_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
|
| 9 |
+
tensor<fp16, [640, 1024]> module_enc_weight_to_fp16 = const()[name = tensor<string, []>("module_enc_weight_to_fp16"), val = tensor<fp16, [640, 1024]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(64)))];
|
| 10 |
+
tensor<fp16, [640]> module_enc_bias_to_fp16 = const()[name = tensor<string, []>("module_enc_bias_to_fp16"), val = tensor<fp16, [640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(1310848)))];
|
| 11 |
+
tensor<fp16, [1, 1024, 1]> encoder_to_fp16 = cast(dtype = encoder_to_fp16_dtype_0, x = encoder)[name = tensor<string, []>("cast_2")];
|
| 12 |
+
tensor<fp16, [1, 1, 1024]> input_1_cast_fp16 = transpose(perm = input_1_perm_0, x = encoder_to_fp16)[name = tensor<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 = tensor<string, []>("linear_0_cast_fp16")];
|
| 14 |
+
tensor<fp16, [640, 640]> module_pred_weight_to_fp16 = const()[name = tensor<string, []>("module_pred_weight_to_fp16"), val = tensor<fp16, [640, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(1312192)))];
|
| 15 |
+
tensor<fp16, [640]> module_pred_bias_to_fp16 = const()[name = tensor<string, []>("module_pred_bias_to_fp16"), val = tensor<fp16, [640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(2131456)))];
|
| 16 |
+
tensor<fp16, [1, 640, 1]> decoder_to_fp16 = cast(dtype = decoder_to_fp16_dtype_0, x = decoder)[name = tensor<string, []>("cast_1")];
|
| 17 |
+
tensor<fp16, [1, 1, 640]> input_3_cast_fp16 = transpose(perm = input_3_perm_0, x = decoder_to_fp16)[name = tensor<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 = tensor<string, []>("linear_1_cast_fp16")];
|
| 19 |
+
tensor<int32, [1]> var_23_axes_0 = const()[name = tensor<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 = tensor<string, []>("op_23_cast_fp16")];
|
| 21 |
+
tensor<int32, [1]> var_25_axes_0 = const()[name = tensor<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 = tensor<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 = tensor<string, []>("input_5_cast_fp16")];
|
| 24 |
+
tensor<fp16, [1, 1, 1, 640]> input_7_cast_fp16 = relu(x = input_5_cast_fp16)[name = tensor<string, []>("input_7_cast_fp16")];
|
| 25 |
+
tensor<fp16, [2829, 640]> module_joint_net_2_weight_to_fp16 = const()[name = tensor<string, []>("module_joint_net_2_weight_to_fp16"), val = tensor<fp16, [2829, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(2132800)))];
|
| 26 |
+
tensor<fp16, [2829]> module_joint_net_2_bias_to_fp16 = const()[name = tensor<string, []>("module_joint_net_2_bias_to_fp16"), val = tensor<fp16, [2829]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(5753984)))];
|
| 27 |
+
tensor<fp16, [1, 1, 1, 2829]> 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 = tensor<string, []>("linear_2_cast_fp16")];
|
| 28 |
+
tensor<string, []> linear_2_cast_fp16_to_fp32_dtype_0 = const()[name = tensor<string, []>("linear_2_cast_fp16_to_fp32_dtype_0"), val = tensor<string, []>("fp32")];
|
| 29 |
+
tensor<fp32, [1, 1, 1, 2829]> logits = cast(dtype = linear_2_cast_fp16_to_fp32_dtype_0, x = linear_2_cast_fp16)[name = tensor<string, []>("cast_0")];
|
| 30 |
+
} -> (logits);
|
| 31 |
+
}
|
latin/560ms/joint.mlmodelc/weights/weight.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:66b9d7405fad48fdd8413a7275c04d44933cb9beb80d318c158f80e52ff43fba
|
| 3 |
+
size 5759706
|
latin/560ms/preprocessor.mlmodelc/analytics/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:5d628a4c3b5a7f15375b09ae18a50d608ac0cce12de0e6d0749d7df2e51101e1
|
| 3 |
+
size 243
|
latin/560ms/preprocessor.mlmodelc/coremldata.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:47a3f47d3034f2a3232ff6f98fecb85d44a011e47ffffb78f24b45407f5a2e16
|
| 3 |
+
size 371
|