Download CamPlusPreprocessor_v2.mlmodelc/model.mil from FluidInference/campplus-coreml: direct link, hf CLI and curl.
- Browser
- Download file 5.1 kB
-
https://huggingface.co/FluidInference/campplus-coreml/resolve/main/CamPlusPreprocessor_v2.mlmodelc/model.mil
- Command line
-
hf download hf://FluidInference/campplus-coreml/CamPlusPreprocessor_v2.mlmodelc/model.mil
-
curl -L -o model.mil https://huggingface.co/FluidInference/campplus-coreml/resolve/main/CamPlusPreprocessor_v2.mlmodelc/model.mil
5.1 kB
| program(1.0) | |
| [buildInfo = dict<tensor<string, []>, tensor<string, []>>({{"coremlc-component-MIL", "3600.16.1"}, {"coremlc-version", "3600.25.1"}, {"coremltools-component-torch", "2.5.1"}, {"coremltools-source-dialect", "TorchScript"}, {"coremltools-version", "8.3.0"}})] | |
| { | |
| func main<ios17>(tensor<fp32, [1, ?]> waveform) [FlexibleShapeInformation = tuple<tuple<tensor<string, []>, dict<tensor<string, []>, tensor<int32, [?]>>>, tuple<tensor<string, []>, dict<tensor<string, []>, list<tensor<int32, [2]>, ?>>>>((("DefaultShapes", {{"waveform", [1, 64000]}}), ("RangeDims", {{"waveform", [[1, 1], [400, 960000]]}})))] { | |
| tensor<fp32, [80, 257]> mel = const()[name = tensor<string, []>("mel"), val = tensor<fp32, [80, 257]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(64)))]; | |
| tensor<fp32, [514, 1, 400]> kernel = const()[name = tensor<string, []>("kernel"), val = tensor<fp32, [514, 1, 400]>(BLOBFILE(path = tensor<string, []>("@model_path/weights/weight.bin"), offset = tensor<uint64, []>(82368)))]; | |
| tensor<int32, [1]> var_10_axes_0 = const()[name = tensor<string, []>("op_10_axes_0"), val = tensor<int32, [1]>([1])]; | |
| tensor<fp32, [1, 1, ?]> var_10 = expand_dims(axes = var_10_axes_0, x = waveform)[name = tensor<string, []>("op_10")]; | |
| tensor<string, []> spec_pad_type_0 = const()[name = tensor<string, []>("spec_pad_type_0"), val = tensor<string, []>("valid")]; | |
| tensor<int32, [1]> spec_strides_0 = const()[name = tensor<string, []>("spec_strides_0"), val = tensor<int32, [1]>([160])]; | |
| tensor<int32, [2]> spec_pad_0 = const()[name = tensor<string, []>("spec_pad_0"), val = tensor<int32, [2]>([0, 0])]; | |
| tensor<int32, [1]> spec_dilations_0 = const()[name = tensor<string, []>("spec_dilations_0"), val = tensor<int32, [1]>([1])]; | |
| tensor<int32, []> spec_groups_0 = const()[name = tensor<string, []>("spec_groups_0"), val = tensor<int32, []>(1)]; | |
| tensor<fp32, [1, 514, ?]> 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 = kernel, x = var_10)[name = tensor<string, []>("spec")]; | |
| tensor<int32, [3]> re_begin_0 = const()[name = tensor<string, []>("re_begin_0"), val = tensor<int32, [3]>([0, 0, 0])]; | |
| tensor<int32, [3]> re_end_0 = const()[name = tensor<string, []>("re_end_0"), val = tensor<int32, [3]>([1, 257, 0])]; | |
| tensor<bool, [3]> re_end_mask_0 = const()[name = tensor<string, []>("re_end_mask_0"), val = tensor<bool, [3]>([true, false, true])]; | |
| tensor<fp32, [1, 257, ?]> re = slice_by_index(begin = re_begin_0, end = re_end_0, end_mask = re_end_mask_0, x = spec)[name = tensor<string, []>("re")]; | |
| tensor<int32, [3]> im_begin_0 = const()[name = tensor<string, []>("im_begin_0"), val = tensor<int32, [3]>([0, 257, 0])]; | |
| tensor<int32, [3]> im_end_0 = const()[name = tensor<string, []>("im_end_0"), val = tensor<int32, [3]>([1, 514, 0])]; | |
| tensor<bool, [3]> im_end_mask_0 = const()[name = tensor<string, []>("im_end_mask_0"), val = tensor<bool, [3]>([true, true, true])]; | |
| tensor<fp32, [1, 257, ?]> im = slice_by_index(begin = im_begin_0, end = im_end_0, end_mask = im_end_mask_0, x = spec)[name = tensor<string, []>("im")]; | |
| tensor<fp32, [1, 257, ?]> var_52 = mul(x = re, y = re)[name = tensor<string, []>("op_52")]; | |
| tensor<fp32, [1, 257, ?]> var_53 = mul(x = im, y = im)[name = tensor<string, []>("op_53")]; | |
| tensor<fp32, [1, 257, ?]> power = add(x = var_52, y = var_53)[name = tensor<string, []>("power")]; | |
| tensor<bool, []> mel_1_transpose_x_0 = const()[name = tensor<string, []>("mel_1_transpose_x_0"), val = tensor<bool, []>(false)]; | |
| tensor<bool, []> mel_1_transpose_y_0 = const()[name = tensor<string, []>("mel_1_transpose_y_0"), val = tensor<bool, []>(false)]; | |
| tensor<fp32, [1, 80, ?]> mel_1 = matmul(transpose_x = mel_1_transpose_x_0, transpose_y = mel_1_transpose_y_0, x = mel, y = power)[name = tensor<string, []>("mel_1")]; | |
| tensor<fp32, []> var_57 = const()[name = tensor<string, []>("op_57"), val = tensor<fp32, []>(0x1p-23)]; | |
| tensor<fp32, []> const_0 = const()[name = tensor<string, []>("const_0"), val = tensor<fp32, []>(0x1.fffffep+127)]; | |
| tensor<fp32, [1, 80, ?]> clip_0 = clip(alpha = var_57, beta = const_0, x = mel_1)[name = tensor<string, []>("clip_0")]; | |
| tensor<fp32, []> var_60_epsilon_0 = const()[name = tensor<string, []>("op_60_epsilon_0"), val = tensor<fp32, []>(0x1p-149)]; | |
| tensor<fp32, [1, 80, ?]> var_60 = log(epsilon = var_60_epsilon_0, x = clip_0)[name = tensor<string, []>("op_60")]; | |
| tensor<int32, [3]> var_63_perm_0 = const()[name = tensor<string, []>("op_63_perm_0"), val = tensor<int32, [3]>([0, 2, 1])]; | |
| tensor<fp32, [1, ?, 80]> features = transpose(perm = var_63_perm_0, x = var_60)[name = tensor<string, []>("transpose_0")]; | |
| } -> (features); | |
| } |