bigbigbei's picture
Duplicate from aufklarer/Parakeet-EOU-120M-CoreML-INT8
530ff49
program(1.0)
[buildInfo = dict<tensor<string, []>, tensor<string, []>>({{"coremlc-component-MIL", "3520.4.1"}, {"coremlc-version", "3520.5.1"}, {"coremltools-component-torch", "2.3.1"}, {"coremltools-source-dialect", "TorchScript"}, {"coremltools-version", "8.3.0"}})]
{
func main<ios17>(tensor<fp32, [1, 1, 640]> c, tensor<fp32, [1, 1, 640]> h, tensor<int32, [1, 1]> token) {
tensor<int32, []> y_1_axis_0 = const()[name = tensor<string, []>("y_1_axis_0"), val = tensor<int32, []>(0)];
tensor<int32, []> y_1_batch_dims_0 = const()[name = tensor<string, []>("y_1_batch_dims_0"), val = tensor<int32, []>(0)];
tensor<bool, []> y_1_validate_indices_0 = const()[name = tensor<string, []>("y_1_validate_indices_0"), val = tensor<bool, []>(false)];
tensor<fp16, [1027, 640]> decoder_prediction_embed_weight_to_fp16 = const()[name = tensor<string, []>("decoder_prediction_embed_weight_to_fp16"), val = tensor<fp16, [1027, 640]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(64)))];
tensor<string, []> token_to_int16_dtype_0 = const()[name = tensor<string, []>("token_to_int16_dtype_0"), val = tensor<string, []>("int16")];
tensor<int16, [1, 1]> token_to_int16 = cast(dtype = token_to_int16_dtype_0, x = token)[name = tensor<string, []>("cast_6")];
tensor<fp16, [1, 1, 640]> y_1_cast_fp16_cast_uint16 = gather(axis = y_1_axis_0, batch_dims = y_1_batch_dims_0, indices = token_to_int16, validate_indices = y_1_validate_indices_0, x = decoder_prediction_embed_weight_to_fp16)[name = tensor<string, []>("y_1_cast_fp16_cast_uint16")];
tensor<int32, [3]> input_1_perm_0 = const()[name = tensor<string, []>("input_1_perm_0"), val = tensor<int32, [3]>([1, 0, 2])];
tensor<int32, [1]> input0_1_lstm_h0_squeeze_axes_0 = const()[name = tensor<string, []>("input0_1_lstm_h0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
tensor<string, []> h_to_fp16_dtype_0 = const()[name = tensor<string, []>("h_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
tensor<fp16, [1, 1, 640]> h_to_fp16 = cast(dtype = h_to_fp16_dtype_0, x = h)[name = tensor<string, []>("cast_5")];
tensor<fp16, [1, 640]> input0_1_lstm_h0_squeeze_cast_fp16 = squeeze(axes = input0_1_lstm_h0_squeeze_axes_0, x = h_to_fp16)[name = tensor<string, []>("input0_1_lstm_h0_squeeze_cast_fp16")];
tensor<int32, [1]> input0_1_lstm_c0_squeeze_axes_0 = const()[name = tensor<string, []>("input0_1_lstm_c0_squeeze_axes_0"), val = tensor<int32, [1]>([0])];
tensor<string, []> c_to_fp16_dtype_0 = const()[name = tensor<string, []>("c_to_fp16_dtype_0"), val = tensor<string, []>("fp16")];
tensor<fp16, [1, 1, 640]> c_to_fp16 = cast(dtype = c_to_fp16_dtype_0, x = c)[name = tensor<string, []>("cast_4")];
tensor<fp16, [1, 640]> input0_1_lstm_c0_squeeze_cast_fp16 = squeeze(axes = input0_1_lstm_c0_squeeze_axes_0, x = c_to_fp16)[name = tensor<string, []>("input0_1_lstm_c0_squeeze_cast_fp16")];
tensor<string, []> input0_1_direction_0 = const()[name = tensor<string, []>("input0_1_direction_0"), val = tensor<string, []>("forward")];
tensor<bool, []> input0_1_output_sequence_0 = const()[name = tensor<string, []>("input0_1_output_sequence_0"), val = tensor<bool, []>(true)];
tensor<string, []> input0_1_recurrent_activation_0 = const()[name = tensor<string, []>("input0_1_recurrent_activation_0"), val = tensor<string, []>("sigmoid")];
tensor<string, []> input0_1_cell_activation_0 = const()[name = tensor<string, []>("input0_1_cell_activation_0"), val = tensor<string, []>("tanh")];
tensor<string, []> input0_1_activation_0 = const()[name = tensor<string, []>("input0_1_activation_0"), val = tensor<string, []>("tanh")];
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, []>(1314688)))];
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, []>(4591552)))];
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, []>(7868416)))];
tensor<fp16, [1, 1, 640]> input_1_cast_fp16 = transpose(perm = input_1_perm_0, x = y_1_cast_fp16_cast_uint16)[name = tensor<string, []>("transpose_1")];
tensor<fp16, [1, 1, 640]> input0_1_cast_fp16_0, tensor<fp16, [1, 640]> input0_1_cast_fp16_1, tensor<fp16, [1, 640]> input0_1_cast_fp16_2 = lstm(activation = input0_1_activation_0, bias = concat_0_to_fp16, cell_activation = input0_1_cell_activation_0, direction = input0_1_direction_0, initial_c = input0_1_lstm_c0_squeeze_cast_fp16, initial_h = input0_1_lstm_h0_squeeze_cast_fp16, output_sequence = input0_1_output_sequence_0, recurrent_activation = input0_1_recurrent_activation_0, weight_hh = concat_2_to_fp16, weight_ih = concat_1_to_fp16, x = input_1_cast_fp16)[name = tensor<string, []>("input0_1_cast_fp16")];
tensor<int32, [1]> var_29_axes_0 = const()[name = tensor<string, []>("op_29_axes_0"), val = tensor<int32, [1]>([0])];
tensor<fp16, [1, 1, 640]> h_out = expand_dims(axes = var_29_axes_0, x = input0_1_cast_fp16_1)[name = tensor<string, []>("op_29_cast_fp16")];
tensor<int32, [1]> var_30_axes_0 = const()[name = tensor<string, []>("op_30_axes_0"), val = tensor<int32, [1]>([0])];
tensor<fp16, [1, 1, 640]> c_out = expand_dims(axes = var_30_axes_0, x = input0_1_cast_fp16_2)[name = tensor<string, []>("op_30_cast_fp16")];
tensor<int32, [3]> output_1_perm_0 = const()[name = tensor<string, []>("output_1_perm_0"), val = tensor<int32, [3]>([1, 0, 2])];
tensor<fp16, [1, 1, 640]> decoder_output = transpose(perm = output_1_perm_0, x = input0_1_cast_fp16_0)[name = tensor<string, []>("transpose_0")];
} -> (decoder_output, h_out, c_out);
}