openvinotoolkit / openvino_notebooks

📚 Jupyter notebook tutorials for OpenVINO™
Apache License 2.0
2.3k stars 791 forks source link

openvoice inference doesn't work on Intel ARC A770 #2346

Closed maxkim-kr closed 1 week ago

maxkim-kr commented 1 week ago

Describe the bug openvoice tutorial does not work on Intel ARC A770. I've verified dGPU(GPU.1) with "auto-device" tutorial. It works correctly. So, my dGPU has no issue, and openvino dGPU inference has some bugs.

Expected behavior openvoice works on GPU.1 (ARC A770)

Screenshots

tone_color_converter.convert( audio_src_path=orig_voice_path, src_se=source_se, tgt_se=target_se, output_path=resulting_voice_path, tau=tau_slider.value, message="@MyShell", )

* Result:

RuntimeError Traceback (most recent call last) Cell In[67], line 3 1 resulting_voice_path = OUTPUT_DIR / "output_with_cloned_voice_tone.wav" ----> 3 tone_color_converter.convert( 4 audio_src_path=orig_voice_path, 5 src_se=source_se, 6 tgt_se=target_se, 7 output_path=resulting_voice_path, 8 tau=tau_slider.value, 9 message="@MyShell", 10 )

File ~/OpenVINO/openvino_notebooks/notebooks/openvoice/OpenVoice/openvoice/api.py:154, in ToneColorConverter.convert(self, audio_src_path, src_se, tgt_se, output_path, tau, message) 150 spec = spectrogram_torch(y, hps.data.filter_length, 151 hps.data.sampling_rate, hps.data.hop_length, hps.data.win_length, 152 center=False).to(self.device) 153 spec_lengths = torch.LongTensor([spec.size(-1)]).to(self.device) --> 154 audio = self.model.voice_conversion(spec, spec_lengths, sid_src=src_se, sid_tgt=tgt_se, tau=tau)[0][ 155 0, 0].data.cpu().float().numpy() 156 audio = self.add_watermark(audio, message) 157 if output_path is None:

Cell In[55], line 15, in get_patched_voice_conversion..voice_conversion_impl(y, y_lengths, sid_src, sid_tgt, tau) 14 def voice_conversion_impl(y, y_lengths, sid_src, sid_tgt, tau): ---> 15 ov_output = compiled_model((y, y_lengths, sid_src, sid_tgt, tau)) 16 return (torch.tensor(ov_output[0]),)

File ~/OpenVINO/venv_openvino/lib/python3.10/site-packages/openvino/runtime/ie_api.py:388, in CompiledModel.call(self, inputs, share_inputs, share_outputs, decode_strings) 385 if self._infer_request is None: 386 self._infer_request = self.create_infer_request() --> 388 return self._infer_request.infer( 389 inputs, 390 share_inputs=share_inputs, 391 share_outputs=share_outputs, 392 decode_strings=decode_strings, 393 )

File ~/OpenVINO/venv_openvino/lib/python3.10/site-packages/openvino/runtime/ie_api.py:132, in InferRequest.infer(self, inputs, share_inputs, share_outputs, decode_strings) 55 def infer( 56 self, 57 inputs: Any = None, (...) 61 decode_strings: bool = True, 62 ) -> OVDict: 63 """Infers specified input(s) in synchronous mode. 64 65 Blocks all methods of InferRequest while request is running. (...) 130 :rtype: OVDict 131 """ --> 132 return OVDict(super().infer(_data_dispatch( 133 self, 134 inputs, 135 is_shared=share_inputs, 136 ), share_outputs=share_outputs, decode_strings=decode_strings))

RuntimeError: Exception from src/inference/src/cpp/infer_request.cpp:223: Exception from src/plugins/intel_gpu/src/graph/include/primitive_type_base.h:58: [GPU] Can't choose implementation for convolutionbackpropdata:aten::_convolution/ConvolutionBackpropData node (type=deconvolution) [GPU] Original name: aten::_convolution/ConvolutionBackpropData [GPU] Original type: ConvolutionBackpropData [GPU] Reason: dimensions are invalid


 **Installation instructions (Please mark the checkbox)**
[Yes] I followed the installation guide at https://github.com/openvinotoolkit/openvino_notebooks#-installation-guide to install the notebooks. 

** Environment information **
Please run `python check_install.py` in the _openvino_notebooks_ directory. If the output is _NOT OK_ for any of the checks, please follow the instructions to fix that. If that does not work, or if you still encounter the issue, please paste the output of check_install.py here.

System information: Python executable: /home/intel/OpenVINO/venv_openvino/bin/python3 Pip version: 24.2 OpenVINO source: /home/intel/OpenVINO/venv_openvino/lib/python3.10/site-packages/openvino OpenVINO IE version: 2024.3.0-16041-1e3b88e4e3f-releases/2024/3 OpenVINO environment activated: NOT OK Jupyter kernel installed for openvino_env: OK Jupyter kernel Python executable: /home/intel/git/openvino/openvino_env/bin/python Jupyter kernel Python and OpenVINO environment Python match: NOT OK Python version: 3.10 OK OpenVINO pip package installed: OK OpenVINO import succeeds: OK OpenVINO development tools installed: OK OpenVINO not installed globally: OK No broken requirements: NOT OK

It appears that you are not running Python in an openvino_env environment. It is possible use the notebooks in a different environment, but if you run into trouble, please follow the instructions in the README to install and activate the openvino_env environment.

The Python version in openvino_env does not match the openvino_env Jupyter kernel. This may not be an issue. If you experience issues, please follow the instructions in the README to reinstall the kernel.

pip check shows broken requirements: CompletedProcess(args=['pip', 'check'], returncode=1, stdout='ninja 1.11.1.1 is not supported on this platform\n')

The README.md file is located in the openvino_notebooks directory and at https://github.com/openvinotoolkit/openvino_notebooks Broken requirements are often harmless, but could cause issues.

andrei-kochin commented 1 week ago

Internal ref. - CVS-151215

andrei-kochin commented 1 week ago

Issue will be continued to be tracked internally