volantis-labs's picture
Parakeet TDT 0.6B v3, ternary (Core ML and ONNX)
fc7dbb4
Raw History Blame Contribute Delete
11.2 kB
program(1.3)
[buildInfo = dict<string, string>({{"coremlc-component-MIL", "3520.4.1"}, {"coremlc-version", "3520.5.1"}, {"coremltools-component-torch", "2.14.0"}, {"coremltools-source-dialect", "TorchScript"}, {"coremltools-version", "9.0"}})]
{
func main<ios18>(tensor<int32, [1]> audio_length, tensor<fp32, [1, 240000]> audio_signal) {
tensor<fp32, [1, 1, 1501]> fidx = const()[name = string("fidx"), val = tensor<fp32, [1, 1, 1501]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(64)))];
tensor<fp32, [128, 257]> mel_1 = const()[name = string("mel"), val = tensor<fp32, [128, 257]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(6144)))];
tensor<fp32, [514, 1, 512]> basis = const()[name = string("basis"), val = tensor<fp32, [514, 1, 512]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(137792)))];
tensor<fp32, [1, 240000]> idx = const()[name = string("idx"), val = tensor<fp32, [1, 240000]>(BLOBFILE(path = string("@model_path/weights/weight.bin"), offset = uint64(1190528)))];
string L_dtype_0 = const()[name = string("L_dtype_0"), val = string("fp32")];
tensor<int32, [2]> var_21_begin_0 = const()[name = string("op_21_begin_0"), val = tensor<int32, [2]>([0, 0])];
tensor<int32, [2]> var_21_end_0 = const()[name = string("op_21_end_0"), val = tensor<int32, [2]>([1, 1])];
tensor<bool, [2]> var_21_end_mask_0 = const()[name = string("op_21_end_mask_0"), val = tensor<bool, [2]>([true, false])];
tensor<fp32, [1, 1]> var_21 = slice_by_index(begin = var_21_begin_0, end = var_21_end_0, end_mask = var_21_end_mask_0, x = audio_signal)[name = string("op_21")];
tensor<int32, [2]> var_31_begin_0 = const()[name = string("op_31_begin_0"), val = tensor<int32, [2]>([0, 1])];
tensor<int32, [2]> var_31_end_0 = const()[name = string("op_31_end_0"), val = tensor<int32, [2]>([1, 240000])];
tensor<bool, [2]> var_31_end_mask_0 = const()[name = string("op_31_end_mask_0"), val = tensor<bool, [2]>([true, true])];
tensor<fp32, [1, 239999]> var_31 = slice_by_index(begin = var_31_begin_0, end = var_31_end_0, end_mask = var_31_end_mask_0, x = audio_signal)[name = string("op_31")];
tensor<int32, [2]> var_41_begin_0 = const()[name = string("op_41_begin_0"), val = tensor<int32, [2]>([0, 0])];
tensor<int32, [2]> var_41_end_0 = const()[name = string("op_41_end_0"), val = tensor<int32, [2]>([1, 239999])];
tensor<bool, [2]> var_41_end_mask_0 = const()[name = string("op_41_end_mask_0"), val = tensor<bool, [2]>([true, false])];
tensor<fp32, [1, 239999]> var_41 = slice_by_index(begin = var_41_begin_0, end = var_41_end_0, end_mask = var_41_end_mask_0, x = audio_signal)[name = string("op_41")];
fp32 var_42 = const()[name = string("op_42"), val = fp32(0x1.f0a3d8p-1)];
tensor<fp32, [1, 239999]> var_43 = mul(x = var_41, y = var_42)[name = string("op_43")];
tensor<fp32, [1, 239999]> var_45 = sub(x = var_31, y = var_43)[name = string("op_45")];
int32 var_47 = const()[name = string("op_47"), val = int32(1)];
bool x_1_interleave_0 = const()[name = string("x_1_interleave_0"), val = bool(false)];
tensor<fp32, [1, 240000]> x_1 = concat(axis = var_47, interleave = x_1_interleave_0, values = (var_21, var_45))[name = string("x_1")];
tensor<int32, [1]> var_55_axes_0 = const()[name = string("op_55_axes_0"), val = tensor<int32, [1]>([1])];
tensor<fp32, [1]> L = cast(dtype = L_dtype_0, x = audio_length)[name = string("cast_11")];
tensor<fp32, [1, 1]> var_55 = expand_dims(axes = var_55_axes_0, x = L)[name = string("op_55")];
tensor<bool, [1, 240000]> var_56 = less(x = idx, y = var_55)[name = string("op_56")];
string var_61_dtype_0 = const()[name = string("op_61_dtype_0"), val = string("fp32")];
tensor<fp32, [1, 240000]> var_61 = cast(dtype = var_61_dtype_0, x = var_56)[name = string("cast_10")];
tensor<fp32, [1, 240000]> input = mul(x = x_1, y = var_61)[name = string("input")];
fp32 const_0 = const()[name = string("const_0"), val = fp32(0x0p+0)];
tensor<int32, [4]> var_68_pad_0 = const()[name = string("op_68_pad_0"), val = tensor<int32, [4]>([0, 0, 256, 256])];
string var_68_mode_0 = const()[name = string("op_68_mode_0"), val = string("constant")];
tensor<fp32, [1, 240512]> var_68 = pad(constant_val = const_0, mode = var_68_mode_0, pad = var_68_pad_0, x = input)[name = string("op_68")];
tensor<int32, [1]> x_axes_0 = const()[name = string("x_axes_0"), val = tensor<int32, [1]>([1])];
tensor<fp32, [1, 1, 240512]> x = expand_dims(axes = x_axes_0, x = var_68)[name = string("x")];
string spec_pad_type_0 = const()[name = string("spec_pad_type_0"), val = string("valid")];
tensor<int32, [1]> spec_strides_0 = const()[name = string("spec_strides_0"), val = tensor<int32, [1]>([160])];
tensor<int32, [2]> spec_pad_0 = const()[name = string("spec_pad_0"), val = tensor<int32, [2]>([0, 0])];
tensor<int32, [1]> spec_dilations_0 = const()[name = string("spec_dilations_0"), val = tensor<int32, [1]>([1])];
int32 spec_groups_0 = const()[name = string("spec_groups_0"), val = int32(1)];
tensor<fp32, [1, 514, 1501]> spec = conv(dilations = spec_dilations_0, groups = spec_groups_0, pad = spec_pad_0, pad_type = spec_pad_type_0, strides = spec_strides_0, weight = basis, x = x)[name = string("spec")];
tensor<int32, [3]> re_begin_0 = const()[name = string("re_begin_0"), val = tensor<int32, [3]>([0, 0, 0])];
tensor<int32, [3]> re_end_0 = const()[name = string("re_end_0"), val = tensor<int32, [3]>([1, 257, 1501])];
tensor<bool, [3]> re_end_mask_0 = const()[name = string("re_end_mask_0"), val = tensor<bool, [3]>([true, false, true])];
tensor<fp32, [1, 257, 1501]> re = slice_by_index(begin = re_begin_0, end = re_end_0, end_mask = re_end_mask_0, x = spec)[name = string("re")];
tensor<int32, [3]> im_begin_0 = const()[name = string("im_begin_0"), val = tensor<int32, [3]>([0, 257, 0])];
tensor<int32, [3]> im_end_0 = const()[name = string("im_end_0"), val = tensor<int32, [3]>([1, 514, 1501])];
tensor<bool, [3]> im_end_mask_0 = const()[name = string("im_end_mask_0"), val = tensor<bool, [3]>([true, true, true])];
tensor<fp32, [1, 257, 1501]> im = slice_by_index(begin = im_begin_0, end = im_end_0, end_mask = im_end_mask_0, x = spec)[name = string("im")];
tensor<fp32, [1, 257, 1501]> var_112 = mul(x = re, y = re)[name = string("op_112")];
tensor<fp32, [1, 257, 1501]> var_113 = mul(x = im, y = im)[name = string("op_113")];
tensor<fp32, [1, 257, 1501]> p = add(x = var_112, y = var_113)[name = string("p")];
bool var_116_transpose_x_0 = const()[name = string("op_116_transpose_x_0"), val = bool(false)];
bool var_116_transpose_y_0 = const()[name = string("op_116_transpose_y_0"), val = bool(false)];
tensor<fp32, [1, 128, 1501]> var_116 = matmul(transpose_x = var_116_transpose_x_0, transpose_y = var_116_transpose_y_0, x = mel_1, y = p)[name = string("op_116")];
fp32 var_118 = const()[name = string("op_118"), val = fp32(0x1p-24)];
tensor<fp32, [1, 128, 1501]> var_119 = add(x = var_116, y = var_118)[name = string("op_119")];
fp32 m_epsilon_0 = const()[name = string("m_epsilon_0"), val = fp32(0x1p-149)];
tensor<fp32, [1, 128, 1501]> m = log(epsilon = m_epsilon_0, x = var_119)[name = string("m")];
fp32 _inversed_122_y_0 = const()[name = string("_inversed_122_y_0"), val = fp32(0x1.99999ap-8)];
tensor<fp32, [1]> _inversed_122 = mul(x = L, y = _inversed_122_y_0)[name = string("_inversed_122")];
tensor<fp32, [1]> valid = floor(x = _inversed_122)[name = string("valid")];
tensor<int32, [1]> var_130_axes_0 = const()[name = string("op_130_axes_0"), val = tensor<int32, [1]>([1])];
tensor<fp32, [1, 1]> var_130 = expand_dims(axes = var_130_axes_0, x = valid)[name = string("op_130")];
tensor<int32, [1]> var_132_axes_0 = const()[name = string("op_132_axes_0"), val = tensor<int32, [1]>([2])];
tensor<fp32, [1, 1, 1]> var_132 = expand_dims(axes = var_132_axes_0, x = var_130)[name = string("op_132")];
tensor<bool, [1, 1, 1501]> var_133 = less(x = fidx, y = var_132)[name = string("op_133")];
string mask_dtype_0 = const()[name = string("mask_dtype_0"), val = string("fp32")];
tensor<fp32, [1, 1, 1501]> mask = cast(dtype = mask_dtype_0, x = var_133)[name = string("cast_9")];
tensor<fp32, [1, 128, 1501]> var_139 = mul(x = m, y = mask)[name = string("op_139")];
tensor<int32, [1]> var_144_axes_0 = const()[name = string("op_144_axes_0"), val = tensor<int32, [1]>([-1])];
bool var_144_keep_dims_0 = const()[name = string("op_144_keep_dims_0"), val = bool(true)];
tensor<fp32, [1, 128, 1]> var_144 = reduce_sum(axes = var_144_axes_0, keep_dims = var_144_keep_dims_0, x = var_139)[name = string("op_144")];
tensor<fp32, [1, 128, 1]> mean = real_div(x = var_144, y = var_132)[name = string("mean")];
tensor<fp32, [1, 128, 1501]> var_156 = sub(x = m, y = mean)[name = string("op_156")];
tensor<fp32, [1, 128, 1501]> d = mul(x = var_156, y = mask)[name = string("d")];
tensor<fp32, [1, 128, 1501]> var_158 = mul(x = d, y = d)[name = string("op_158")];
tensor<int32, [1]> var_163_axes_0 = const()[name = string("op_163_axes_0"), val = tensor<int32, [1]>([-1])];
bool var_163_keep_dims_0 = const()[name = string("op_163_keep_dims_0"), val = bool(true)];
tensor<fp32, [1, 128, 1]> var_163 = reduce_sum(axes = var_163_axes_0, keep_dims = var_163_keep_dims_0, x = var_158)[name = string("op_163")];
fp32 var_174 = const()[name = string("op_174"), val = fp32(0x1p+0)];
tensor<fp32, [1, 1, 1]> var_175 = sub(x = var_132, y = var_174)[name = string("op_175")];
tensor<fp32, [1, 128, 1]> var_176 = real_div(x = var_163, y = var_175)[name = string("op_176")];
tensor<fp32, [1, 128, 1]> std = sqrt(x = var_176)[name = string("std")];
fp32 var_181 = const()[name = string("op_181"), val = fp32(0x1.4f8b58p-17)];
tensor<fp32, [1, 128, 1]> var_182 = add(x = std, y = var_181)[name = string("op_182")];
tensor<fp32, [1, 128, 1501]> var_183 = real_div(x = var_156, y = var_182)[name = string("op_183")];
tensor<fp32, [1, 128, 1501]> mel = mul(x = var_183, y = mask)[name = string("op_184")];
string var_189_dtype_0 = const()[name = string("op_189_dtype_0"), val = string("int32")];
tensor<int32, [1]> mel_length = cast(dtype = var_189_dtype_0, x = valid)[name = string("cast_8")];
} -> (mel, mel_length);
}