Open b8591340 opened 11 months ago
import torch import coremltools as ct import numpy as np model, _ = torch.hub.load( repo_or_dir="snakers4/silero-vad", model="silero_vad", force_reload=True ) model.eval() seconds_of_audio = 60 sample_rate = 16000 num_samples = sample_rate * seconds_of_audio sample_input = torch.randn(1, num_samples, dtype=torch.float32) input_features = [ ct.TensorType(name="audio_input", shape=sample_input.shape), ct.TensorType(name="sequence_length", shape=ct.Shape((1,)), dtype=np.int64), ] output_features = [ct.TensorType(name="output")] coreml_model = ct.convert( traced_model, inputs=input_features, outputs=output_features, minimum_deployment_target=ct.target.iOS17, skip_model_load=True, ) coreml_model.save("SileroVAD.mlmodel")
Traceback (most recent call last): File "/silero-vad-to-coreml/convert.py", line 29, in <module> coreml_model = ct.convert( ^^^^^^^^^^^ File "/.pyvenv/coreml/lib/python3.11/site-packages/coremltools/converters/_converters_entry.py", line 574, in convert mlmodel = mil_convert( ^^^^^^^^^^^^ File "/.pyvenv/coreml/lib/python3.11/site-packages/coremltools/converters/mil/converter.py", line 188, in mil_convert return _mil_convert(model, convert_from, convert_to, ConverterRegistry, MLModel, compute_units, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/.pyvenv/coreml/lib/python3.11/site-packages/coremltools/converters/mil/converter.py", line 212, in _mil_convert proto, mil_program = mil_convert_to_proto( ^^^^^^^^^^^^^^^^^^^^^ File "/.pyvenv/coreml/lib/python3.11/site-packages/coremltools/converters/mil/converter.py", line 286, in mil_convert_to_proto prog = frontend_converter(model, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/.pyvenv/coreml/lib/python3.11/site-packages/coremltools/converters/mil/converter.py", line 108, in __call__ return load(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^ File "/.pyvenv/coreml/lib/python3.11/site-packages/coremltools/converters/mil/frontend/torch/load.py", line 71, in load converter = TorchConverter( ^^^^^^^^^^^^^^^ File "/.pyvenv/coreml/lib/python3.11/site-packages/coremltools/converters/mil/frontend/torch/converter.py", line 349, in __init__ self.graph, self.params_dict, self.buffer_dict = InternalTorchIRGraph.from_torchscript( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/.pyvenv/coreml/lib/python3.11/site-packages/coremltools/converters/mil/frontend/torch/internal_graph.py", line 374, in from_torchscript raw_graph, params_dict, buffer_dict = _expand_and_optimize_ir(torchscript) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/.pyvenv/coreml/lib/python3.11/site-packages/coremltools/converters/mil/frontend/torch/torchscript_utils.py", line 199, in _expand_and_optimize_ir graph, params_dict, buffer_dict = _jit_pass_lower_graph(graph, torchscript) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/.pyvenv/coreml/lib/python3.11/site-packages/coremltools/converters/mil/frontend/torch/torchscript_utils.py", line 146, in _jit_pass_lower_graph _lower_graph_block(graph) File "/.pyvenv/coreml/lib/python3.11/site-packages/coremltools/converters/mil/frontend/torch/torchscript_utils.py", line 109, in _lower_graph_block _lower_graph_block(block) File "/.pyvenv/coreml/lib/python3.11/site-packages/coremltools/converters/mil/frontend/torch/torchscript_utils.py", line 131, in _lower_graph_block is_quantized_tensor = _check_is_quantized_tensor(node, module) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/.pyvenv/coreml/lib/python3.11/site-packages/coremltools/converters/mil/frontend/torch/torchscript_utils.py", line 102, in _check_is_quantized_tensor assert "PackedParams" in node.output().type().name() ^^^^^^^^^^^^^^^^^^^^^^^^^ AttributeError: 'torch._C.TensorType' object has no attribute ‘name'
This is a Torch Script model.
2 things worth trying:
torch 2.1.0
torch
And 1 thing to make sure: Is this model quantized?
Stack Trace
System environment
Context
This is a Torch Script model.