program(1.0) [buildInfo = dict, tensor>({{"coremlc-component-MIL", "3520.4.1"}, {"coremlc-version", "3520.5.1"}})] { func main(tensor d, tensor pred_dur, tensor t_en) [FlexibleShapeInformation = tuple, dict, tensor>>, tuple, dict, list, ?>>>>((("DefaultShapes", {{"d", [1, 48, 640]}, {"pred_dur", [1, 48]}, {"t_en", [1, 512, 48]}}), ("RangeDims", {{"d", [[1, 1], [2, 512], [640, 640]]}, {"pred_dur", [[1, 1], [2, 512]]}, {"t_en", [[1, 1], [512, 512], [2, 512]]}})))] { tensor var_19 = const()[name = tensor("op_19"), val = tensor(-1)]; tensor cum_dur_exclusive_0 = const()[name = tensor("cum_dur_exclusive_0"), val = tensor(false)]; tensor cum_dur_reverse_0 = const()[name = tensor("cum_dur_reverse_0"), val = tensor(false)]; tensor dur_to_fp16_dtype_0 = const()[name = tensor("dur_to_fp16_dtype_0"), val = tensor("fp16")]; tensor pred_dur_to_fp16 = cast(dtype = dur_to_fp16_dtype_0, x = pred_dur)[name = tensor("cast_3")]; tensor cum_dur_cast_fp16 = cumsum(axis = var_19, exclusive = cum_dur_exclusive_0, reverse = cum_dur_reverse_0, x = pred_dur_to_fp16)[name = tensor("cum_dur_cast_fp16")]; tensor starts_cast_fp16 = sub(x = cum_dur_cast_fp16, y = pred_dur_to_fp16)[name = tensor("starts_cast_fp16")]; tensor var_40_axes_0 = const()[name = tensor("op_40_axes_0"), val = tensor([-1])]; tensor var_40_cast_fp16 = expand_dims(axes = var_40_axes_0, x = starts_cast_fp16)[name = tensor("op_40_cast_fp16")]; tensor frames_to_fp16 = const()[name = tensor("frames_to_fp16"), val = tensor(BLOBFILE(path = tensor("@model_path/weights/weight.bin"), offset = tensor(64)))]; tensor var_41_cast_fp16 = greater_equal(x = frames_to_fp16, y = var_40_cast_fp16)[name = tensor("op_41_cast_fp16")]; tensor var_43_axes_0 = const()[name = tensor("op_43_axes_0"), val = tensor([-1])]; tensor var_43_cast_fp16 = expand_dims(axes = var_43_axes_0, x = cum_dur_cast_fp16)[name = tensor("op_43_cast_fp16")]; tensor var_44_cast_fp16 = less(x = frames_to_fp16, y = var_43_cast_fp16)[name = tensor("op_44_cast_fp16")]; tensor var_45 = logical_and(x = var_41_cast_fp16, y = var_44_cast_fp16)[name = tensor("op_45")]; tensor en_transpose_x_1 = const()[name = tensor("en_transpose_x_1"), val = tensor(true)]; tensor en_transpose_y_1 = const()[name = tensor("en_transpose_y_1"), val = tensor(false)]; tensor alignment_to_fp16_dtype_0 = const()[name = tensor("alignment_to_fp16_dtype_0"), val = tensor("fp16")]; tensor var_45_to_fp16 = cast(dtype = alignment_to_fp16_dtype_0, x = var_45)[name = tensor("cast_2")]; tensor en_cast_fp16 = matmul(transpose_x = en_transpose_x_1, transpose_y = en_transpose_y_1, x = d, y = var_45_to_fp16)[name = tensor("en_cast_fp16")]; tensor asr_transpose_x_0 = const()[name = tensor("asr_transpose_x_0"), val = tensor(false)]; tensor asr_transpose_y_0 = const()[name = tensor("asr_transpose_y_0"), val = tensor(false)]; tensor asr_cast_fp16 = matmul(transpose_x = asr_transpose_x_0, transpose_y = asr_transpose_y_0, x = t_en, y = var_45_to_fp16)[name = tensor("asr_cast_fp16")]; tensor var_65_begin_0 = const()[name = tensor("op_65_begin_0"), val = tensor([0, -1])]; tensor var_65_end_0 = const()[name = tensor("op_65_end_0"), val = tensor([1, 0])]; tensor var_65_end_mask_0 = const()[name = tensor("op_65_end_mask_0"), val = tensor([true, true])]; tensor var_65_cast_fp16 = slice_by_index(begin = var_65_begin_0, end = var_65_end_0, end_mask = var_65_end_mask_0, x = cum_dur_cast_fp16)[name = tensor("op_65_cast_fp16")]; tensor var_70_to_int16_dtype_0 = const()[name = tensor("op_70_to_int16_dtype_0"), val = tensor("int16")]; tensor var_65_cast_fp16_to_int16 = cast(dtype = var_70_to_int16_dtype_0, x = var_65_cast_fp16)[name = tensor("cast_1")]; tensor T_a_cast_int16 = squeeze(x = var_65_cast_fp16_to_int16)[name = tensor("T_a_cast_int16")]; tensor T_a_cast_int16_to_int32_dtype_0 = const()[name = tensor("T_a_cast_int16_to_int32_dtype_0"), val = tensor("int32")]; tensor concat_0_values0_0 = const()[name = tensor("concat_0_values0_0"), val = tensor(1)]; tensor concat_0_values1_0 = const()[name = tensor("concat_0_values1_0"), val = tensor(640)]; tensor concat_0_axis_0 = const()[name = tensor("concat_0_axis_0"), val = tensor(0)]; tensor concat_0_interleave_0 = const()[name = tensor("concat_0_interleave_0"), val = tensor(false)]; tensor T_a_cast_int16_to_int32 = cast(dtype = T_a_cast_int16_to_int32_dtype_0, x = T_a_cast_int16)[name = tensor("cast_0")]; tensor concat_0 = concat(axis = concat_0_axis_0, interleave = concat_0_interleave_0, values = (concat_0_values0_0, concat_0_values1_0, T_a_cast_int16_to_int32))[name = tensor("concat_0")]; tensor var_87_begin_0 = const()[name = tensor("op_87_begin_0"), val = tensor([0, 0, 0])]; tensor var_87_end_mask_0 = const()[name = tensor("op_87_end_mask_0"), val = tensor([true, true, false])]; tensor en = slice_by_index(begin = var_87_begin_0, end = concat_0, end_mask = var_87_end_mask_0, x = en_cast_fp16)[name = tensor("op_87_cast_fp16")]; tensor concat_1_values0_0 = const()[name = tensor("concat_1_values0_0"), val = tensor(1)]; tensor concat_1_values1_0 = const()[name = tensor("concat_1_values1_0"), val = tensor(512)]; tensor concat_1_axis_0 = const()[name = tensor("concat_1_axis_0"), val = tensor(0)]; tensor concat_1_interleave_0 = const()[name = tensor("concat_1_interleave_0"), val = tensor(false)]; tensor concat_1 = concat(axis = concat_1_axis_0, interleave = concat_1_interleave_0, values = (concat_1_values0_0, concat_1_values1_0, T_a_cast_int16_to_int32))[name = tensor("concat_1")]; tensor var_101_begin_0 = const()[name = tensor("op_101_begin_0"), val = tensor([0, 0, 0])]; tensor var_101_end_mask_0 = const()[name = tensor("op_101_end_mask_0"), val = tensor([true, true, false])]; tensor asr = slice_by_index(begin = var_101_begin_0, end = concat_1, end_mask = var_101_end_mask_0, x = asr_cast_fp16)[name = tensor("op_101_cast_fp16")]; } -> (en, asr); }