RuntimeError: PyTorch convert function for op 'normal_' not implemented.
- Dominant language
- Python
- Stars
- 5.4k
- Forks
- 850
- Avg merge
- 4d 5h
- Merged PRs (30d)
- 10
Description
## 🐞Describing the bug
Hello, after I debugged my last problem, I encountered the following error when converting the GPT language model. It should be that COREMLTOOLS has not yet supported this Pytorch operation. I hope it can be corrected and added.
## Stack Trace
Mismatched elements: 262139 / 262144 (100.0%)
Greatest absolute difference: 3.099862426519394 at index (0, 418, 0, 24) (up to 1e-05 allowed)
Greatest relative difference: 59928.32389642812 at index (1, 471, 0, 200) (up to 1e-05 allowed)
_check_trace(
Converting Frontend ==> MIL Ops: 14%|█▍ | 169/1208 [00:00<00:00, 1312.21 ops/s]
Ran 1 test in 27.315s
FAILED (errors=1)
Error
Traceback (most recent call last):
File "C:\Users\xbj0916\Desktop\ANE-GPT-main\test_GPT.py", line 84, in test_coreml_conversion_and_speedup
ANE_Model_CoreML_Model = ct.convert(
File "C:\Program Files\Anaconda\envs\ML\lib\site-packages\coremltools\converters\_converters_entry.py", line 326, in convert
mlmodel = mil_convert(
File "C:\Program Files\Anaconda\envs\ML\lib\site-packages\coremltools\converters\mil\converter.py", line 182, in mil_convert
return _mil_convert(model, convert_from, convert_to, ConverterRegistry, MLModel, compute_units, **kwargs)
File "C:\Program Files\Anaconda\envs\ML\lib\site-packages\coremltools\converters\mil\converter.py", line 209, in _mil_convert
proto, mil_program = mil_convert_to_proto(
File "C:\Program Files\Anaconda\envs\ML\lib\site-packages\coremltools\converters\mil\converter.py", line 300, in mil_convert_to_proto
prog = frontend_converter(model, **kwargs)
File "C:\Program Files\Anaconda\envs\ML\lib\site-packages\coremltools\converters\mil\converter.py", line 104, in __call__
return load(*args, **kwargs)
File "C:\Program Files\Anaconda\envs\ML\lib\site-packages\coremltools\converters\mil\frontend\torch\load.py", line 50, in load
return _perform_torch_convert(converter, debug)
File "C:\Program Files\Anaconda\envs\ML\lib\site-packages\coremltools\converters\mil\frontend\torch\load.py", line 95, in _perform_torch_convert
raise e
File "C:\Program Files\Anaconda\envs\ML\lib\site-packages\coremltools\converters\mil\frontend\torch\load.py", line 87, in _perform_torch_convert
prog = converter.convert()
File "C:\Program Files\Anaconda\envs\ML\lib\site-packages\coremltools\converters\mil\frontend\torch\converter.py", line 239, in convert
convert_nodes(self.context, self.graph)
File "C:\Program Files\Anaconda\envs\ML\lib\site-packages\coremltools\converters\mil\frontend\torch\ops.py", line 73, in convert_nodes
raise RuntimeError(
RuntimeError: PyTorch convert function for op 'normal_' not implemented.
## System environment (please complete the following information):
- coremltools version: 5.1.0
- Windows10
- Pytorch 1.11.0
Contributor guide
Research direction
Start in coremltools/converters/mil/frontend/torch/ops.py, where the conversion currently raises for the PyTorch `normal_` operation. Reproduce the failure with the conversion path shown in test_GPT.py and inspect the surrounding Torch converter entry points. Done means the reported model conversion no longer raises for `normal_` and preserves the expected converted-model behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, pytorch
- Domain
- machine-learning, tooling
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100