[GH-ISSUE #1740] Latest release is broken? #1154

Open
opened 2026-10-20 10:06:27 +00:00 by bsakaguchi · 12 comments
Owner

Originally created by @mindplay-dk on GitHub (Jan 17, 2024).
Original GitHub issue: https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/issues/1740

I downloaded the latest release and it appears to be incomplete?

I downloaded from here:

For AMD/Intel GPU users:
https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/RVC1006AMD_Intel.7z

The english README mentions go-web.bat, which does not exist in this archive.

So I downloaded go-web.bat myself and put it in the folder - at launch it says:

C:\rvc>runtime\python.exe infer-web.py --pycmd runtime\python.exe --port 7897
2024-01-17 18:14:13 | INFO | configs.config | No supported Nvidia GPU found
overwrite preprocess and configs.json
2024-01-17 18:14:13 | INFO | configs.config | Use cpu instead
is_half:False, device:cpu
2024-01-17 18:14:16 | INFO | __main__ | Use Language: en_US
Running on local URL:  http://0.0.0.0:7897

"No supported Nvidia GPU found", so this does not not work with Intel GPU like it says.

(I have an Intel A770 16GB LE with latest drivers installed.)

Originally created by @mindplay-dk on GitHub (Jan 17, 2024). Original GitHub issue: https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/issues/1740 I downloaded the [latest release](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/releases/tag/updated1006v2) and it appears to be incomplete? I downloaded from here: > For AMD/Intel GPU users: > [https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/RVC1006AMD\_Intel.7z](https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/RVC1006AMD_Intel.7z) The [english README](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/blob/main/docs/en/README.en.md) mentions `go-web.bat`, which does not exist in this archive. So I downloaded `go-web.bat` myself and put it in the folder - at launch it says: ``` C:\rvc>runtime\python.exe infer-web.py --pycmd runtime\python.exe --port 7897 2024-01-17 18:14:13 | INFO | configs.config | No supported Nvidia GPU found overwrite preprocess and configs.json 2024-01-17 18:14:13 | INFO | configs.config | Use cpu instead is_half:False, device:cpu 2024-01-17 18:14:16 | INFO | __main__ | Use Language: en_US Running on local URL: http://0.0.0.0:7897 ``` "No supported Nvidia GPU found", so this does not not work with Intel GPU like it says. (I have an Intel A770 16GB LE with latest drivers installed.)
Author
Owner

@fumiama commented on GitHub (Jan 20, 2024):

Maybe you need to prepare the IPEX environment by your self.

<!-- gh-comment-id:1901781889 --> @fumiama commented on GitHub (Jan 20, 2024): Maybe you need to prepare the IPEX environment by your self.
Author
Owner

@mindplay-dk commented on GitHub (Jan 24, 2024):

@fumiama but then I would probably need to set everything up from scratch anyway, yes?

I never have much luck following directions for setting up Python projects - something is almost always out of date, missing, incorrect or changed since the directions were written, and the error messages never make the slightest bit of sense at all.

documentation just doesn't seem like a helpful approach to anyone but Pythonistas who already know all the common errors you get on your specific environment with specific libraries etc.

automated build-scripts honestly would be a much better approach - let these things break in a CI environment at build-time, where contributors would know how to fix it, rather than breaking on each user's system.

<!-- gh-comment-id:1908018578 --> @mindplay-dk commented on GitHub (Jan 24, 2024): @fumiama but then I would probably need to set everything up from scratch anyway, yes? I never have much luck following directions for setting up Python projects - something is almost always out of date, missing, incorrect or changed since the directions were written, and the error messages never make the slightest bit of sense at all. documentation just doesn't seem like a helpful approach to anyone but Pythonistas who already know all the common errors you get on your specific environment with specific libraries etc. automated build-scripts honestly would be a much better approach - let these things break in a CI environment at build-time, where contributors would know how to fix it, rather than breaking on each user's system.
Author
Owner

@fumiama commented on GitHub (Jan 25, 2024):

That's a good advice.

<!-- gh-comment-id:1909659828 --> @fumiama commented on GitHub (Jan 25, 2024): That's a good advice.
Author
Owner

@masoudkhan commented on GitHub (Jan 31, 2024):

Were you able to solve the problem?
I have the same problem

<!-- gh-comment-id:1919494660 --> @masoudkhan commented on GitHub (Jan 31, 2024): Were you able to solve the problem? I have the same problem
Author
Owner

@mindplay-dk commented on GitHub (Feb 8, 2024):

Were you able to solve the problem? I have the same problem

nah, I gave up.

tbh the only AI things I've managed to run on my ARC is the Vlad fork of auto1111, and some basic LLMs.

buying an Intel card was clearly a mistake. (it doesn't even run most games properly.)

I will most likely ditch it and get a 16GB 4060 Ti instead - if Intel is ever widely supported by the community, it could be years.

<!-- gh-comment-id:1933741801 --> @mindplay-dk commented on GitHub (Feb 8, 2024): > Were you able to solve the problem? I have the same problem nah, I gave up. tbh the only AI things I've managed to run on my ARC is the Vlad fork of auto1111, and some basic LLMs. buying an Intel card was clearly a mistake. (it doesn't even run most games properly.) I will most likely ditch it and get a 16GB 4060 Ti instead - if Intel is ever widely supported by the community, it could be years.
Author
Owner

@EffortlessSteven commented on GitHub (Feb 11, 2024):

Shot in the dark, but have you run

python -m pip install torch==2.1.0a0 torchvision==0.16.0a0 torchaudio==2.1.0a0 intel-extension-for-pytorch==2.1.10+xpu --extra-index-url https://pytorch-extension.intel.com/release-whl/stable/xpu/us/

https://github.com/intel/intel-extension-for-pytorch/tree/xpu-main

 

Alternately, this might have useful information for setup: https://www.technopat.net/sosyal/konu/installing-rvc-webui-with-intel-arc-gpus.2806060/

<!-- gh-comment-id:1937397847 --> @EffortlessSteven commented on GitHub (Feb 11, 2024): Shot in the dark, but have you run ``` python -m pip install torch==2.1.0a0 torchvision==0.16.0a0 torchaudio==2.1.0a0 intel-extension-for-pytorch==2.1.10+xpu --extra-index-url https://pytorch-extension.intel.com/release-whl/stable/xpu/us/ ``` https://github.com/intel/intel-extension-for-pytorch/tree/xpu-main &nbsp; Alternately, this might have useful information for setup: https://www.technopat.net/sosyal/konu/installing-rvc-webui-with-intel-arc-gpus.2806060/
Author
Owner

@mindplay-dk commented on GitHub (Feb 11, 2024):

@SZim92 thanks, but I can't be bothered to try another obscure incantation in the hopes of hitting something that works - the odds are too low to bother.

Even if against all odds I found the right incantation, odds are it won't work a month later, or won't work for another user, or won't work anymore after an update, and so on... because the ecosystem constantly changes around it.

In my experience, following wiki notes or github comments doesn't typically lead anywhere - there are just too many variables, and even the slightest deviation in dependencies, system environment, or even the current state of the filesystem after running some other obscure incantations, will most likely end with more obscure error messages, which often have nothing to do with the actual problem.

if the software is intended for Python developers only, that's fine - if the intention is for anybody else to run it, it needs to come with a working install script.

<!-- gh-comment-id:1937549189 --> @mindplay-dk commented on GitHub (Feb 11, 2024): @SZim92 thanks, but I can't be bothered to try another obscure incantation in the hopes of hitting something that works - the odds are too low to bother. Even if against all odds I found the right incantation, odds are it won't work a month later, or won't work for another user, or won't work anymore after an update, and so on... because the ecosystem constantly changes around it. In my experience, following wiki notes or github comments doesn't typically lead anywhere - there are just too many variables, and even the slightest deviation in dependencies, system environment, or even the current state of the filesystem after running some other obscure incantations, will most likely end with more obscure error messages, which often have nothing to do with the actual problem. if the software is intended for Python developers only, that's fine - if the intention is for anybody else to run it, it needs to come with a working install script.
Author
Owner

@jarrodsfarrell commented on GitHub (Feb 12, 2024):

Over on the Nix side of things with an AMD GPU, I'm having to pull from the git @ updated1006v2 and prepare my environment there. At least with Nix I could cobble together a declaration that is ideally reproducible, but that's aside the point and all I'm concerned is getting it running with some horrid-bad cobbling together a devShell then think about packaging later.

Before continuing on: if you're working from source, use Python's venv module or your choice of virtual environment to save some headache.

Reading the instructions in order without thinking ended up being a bad idea which results in running those commands in this order:

pip install torch torchvision torchaudio
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/rocm5.4.2
poetry install

And poetry install will give a hint,

  • Downgrading torch (2.0.1+rocm5.4.2 -> 2.0.1)

So inadvertently swapping torch with the incorrect variant that I guess is NVIDIA-centric which results in a handful of missing libraries it can't find. Seems like the better approach is running in this order:

# Use pyproject.toml (or poetry.lock) to get all the dependencies, even if it initially grabs the wrong `torch` variant.
poetry install
# `pip` will find the correct version of the AMD variant that'll run.
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/rocm5.4.2

Additionally, and I'm not exactly sure how, av might need to be installed even though pyproject.toml declares that it should be installed. Probably a local caching issue.

<!-- gh-comment-id:1939815518 --> @jarrodsfarrell commented on GitHub (Feb 12, 2024): Over on the [Nix](https://nixos.org/) side of things with an AMD GPU, I'm having to pull from the [git @ updated1006v2](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/tree/updated1006v2) and prepare my environment there. At least with Nix I could cobble together a declaration that is ideally reproducible, but that's aside the point and all I'm concerned is getting it running with some horrid-bad cobbling together a `devShell` then think about packaging later. Before continuing on: if you're working from source, use [Python's venv module](https://docs.python.org/3/library/venv.html) or your choice of virtual environment to save some headache. [Reading the instructions in order](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/blob/updated1006v2/docs/en/README.en.md#preparing-the-environment) without thinking ended up being a bad idea which results in running those commands in this order: ``` pip install torch torchvision torchaudio pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/rocm5.4.2 poetry install ``` And `poetry install` will give a hint, ``` • Downgrading torch (2.0.1+rocm5.4.2 -> 2.0.1) ``` So inadvertently swapping torch with the incorrect variant that I guess is NVIDIA-centric which results in a handful of missing libraries it can't find. Seems like the better approach is running in this order: ``` # Use pyproject.toml (or poetry.lock) to get all the dependencies, even if it initially grabs the wrong `torch` variant. poetry install # `pip` will find the correct version of the AMD variant that'll run. pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/rocm5.4.2 ``` Additionally, and I'm not exactly sure how, `av` might need to be installed even though `pyproject.toml` declares that it should be installed. Probably a local caching issue.
Author
Owner

@jarrodsfarrell commented on GitHub (Feb 13, 2024):

Though for @mindplay-dk's issue of using an Intel card, there seems to be some hints in this file:
github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI@9f2f0559e6/requirements-ipex.txt (L1-L5)
Or just follow the pip instructions in the documentation

<!-- gh-comment-id:1939820983 --> @jarrodsfarrell commented on GitHub (Feb 13, 2024): Though for @mindplay-dk's issue of using an Intel card, there seems to be some hints in this file: https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/blob/9f2f0559e6932c10c48642d404e7d2e771d9db43/requirements-ipex.txt#L1-L5 Or just follow the [`pip` instructions in the documentation](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/blob/updated1006v2/docs/en/README.en.md#preparing-the-environment)
Author
Owner

@mindplay-dk commented on GitHub (Feb 14, 2024):

Or just follow the pip instructions in the documentation

That's what I did, some months back, it didn't work.

So look, how about I give this one more shot, with a clean conda environment and Python 3.10, following the README, and recording the complete terminal history?

Then maybe one of you Python wizards can figure out how to correct the README where it goes wrong, and I can try again, starting from scratch?

Hopefully we end up with at least an exact set of steps to create a working environment.

Maybe then we can think about putting this into repeatable scripts for everyone else - basically a pair of install and run scripts for each platform. Make this easy for everyone else. How about that? 🙂

<!-- gh-comment-id:1943131855 --> @mindplay-dk commented on GitHub (Feb 14, 2024): > Or just follow the [`pip` instructions in the documentation](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/blob/updated1006v2/docs/en/README.en.md#preparing-the-environment) That's what I did, some months back, it didn't work. So look, how about I give this one more shot, with a clean conda environment and Python 3.10, following the README, and recording the complete terminal history? Then maybe one of you Python wizards can figure out how to correct the README where it goes wrong, and I can try again, starting from scratch? Hopefully we end up with at least an exact set of steps to create a working environment. Maybe then we can think about putting this into repeatable scripts for everyone else - basically a pair of install and run scripts for each platform. Make this easy for everyone else. How about that? 🙂
Author
Owner

@7rident commented on GitHub (Feb 18, 2024):

@SZim92 After doing what you stated, my gpu is now detected, but inferring throws a new error

2024-02-17 20:36:17 | WARNING | infer.modules.vc.modules | Traceback (most recent call last):
  File "/home/owner/rvc/infer/modules/vc/modules.py", line 186, in vc_single
    audio_opt = self.pipeline.pipeline(
  File "/home/owner/rvc/infer/modules/vc/pipeline.py", line 410, in pipeline
    self.vc(
  File "/home/owner/rvc/infer/modules/vc/pipeline.py", line 219, in vc
    logits = model.extract_features(**inputs)
  File "/home/owner/rvc/.venv/lib/python3.10/site-packages/fairseq/models/hubert/hubert.py", line 535, in extract_features
    res = self.forward(
  File "/home/owner/rvc/.venv/lib/python3.10/site-packages/fairseq/models/hubert/hubert.py", line 467, in forward
    x, _ = self.encoder(
  File "/home/owner/rvc/.venv/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1518, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/home/owner/rvc/.venv/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1527, in _call_impl
    return forward_call(*args, **kwargs)
  File "/home/owner/rvc/.venv/lib/python3.10/site-packages/fairseq/models/wav2vec/wav2vec2.py", line 1003, in forward
    x, layer_results = self.extract_features(x, padding_mask, layer)
  File "/home/owner/rvc/.venv/lib/python3.10/site-packages/fairseq/models/wav2vec/wav2vec2.py", line 1049, in extract_features
    x, (z, lr) = layer(
  File "/home/owner/rvc/.venv/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1518, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/home/owner/rvc/.venv/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1527, in _call_impl
    return forward_call(*args, **kwargs)
  File "/home/owner/rvc/.venv/lib/python3.10/site-packages/fairseq/models/wav2vec/wav2vec2.py", line 1260, in forward
    x, attn = self.self_attn(
  File "/home/owner/rvc/.venv/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1518, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/home/owner/rvc/.venv/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1527, in _call_impl
    return forward_call(*args, **kwargs)
  File "/home/owner/rvc/.venv/lib/python3.10/site-packages/fairseq/modules/multihead_attention.py", line 538, in forward
    return F.multi_head_attention_forward(
  File "/home/owner/rvc/.venv/lib/python3.10/site-packages/torch/nn/functional.py", line 5443, in multi_head_attention_forward
    attn_output = linear(attn_output, out_proj_weight, out_proj_bias)
RuntimeError: mat1 and mat2 must have the same dtype, but got Float and Half

Traceback (most recent call last):
  File "/home/owner/rvc/.venv/lib/python3.10/site-packages/gradio/routes.py", line 437, in run_predict
    output = await app.get_blocks().process_api(
  File "/home/owner/rvc/.venv/lib/python3.10/site-packages/gradio/blocks.py", line 1349, in process_api
    data = self.postprocess_data(fn_index, result["prediction"], state)
  File "/home/owner/rvc/.venv/lib/python3.10/site-packages/gradio/blocks.py", line 1283, in postprocess_data
    prediction_value = block.postprocess(prediction_value)
  File "/home/owner/rvc/.venv/lib/python3.10/site-packages/gradio/components.py", line 2586, in postprocess
    file_path = self.audio_to_temp_file(
  File "/home/owner/rvc/.venv/lib/python3.10/site-packages/gradio/components.py", line 360, in audio_to_temp_file
    temp_dir = Path(dir) / self.hash_bytes(data.tobytes())
AttributeError: 'NoneType' object has no attribute 'tobytes'
2024-02-17 20:36:17 | INFO | httpx | HTTP Request: POST http://localhost:7865/api/predict "HTTP/1.1 500 Internal Server Error"
2024-02-17 20:36:17 | INFO | httpx | HTTP Request: POST http://localhost:7865/reset "HTTP/1.1 200 OK"

Was there anything I missed?

<!-- gh-comment-id:1950736823 --> @7rident commented on GitHub (Feb 18, 2024): @SZim92 After doing what you stated, my gpu is now detected, but inferring throws a new error ``` 2024-02-17 20:36:17 | WARNING | infer.modules.vc.modules | Traceback (most recent call last): File "/home/owner/rvc/infer/modules/vc/modules.py", line 186, in vc_single audio_opt = self.pipeline.pipeline( File "/home/owner/rvc/infer/modules/vc/pipeline.py", line 410, in pipeline self.vc( File "/home/owner/rvc/infer/modules/vc/pipeline.py", line 219, in vc logits = model.extract_features(**inputs) File "/home/owner/rvc/.venv/lib/python3.10/site-packages/fairseq/models/hubert/hubert.py", line 535, in extract_features res = self.forward( File "/home/owner/rvc/.venv/lib/python3.10/site-packages/fairseq/models/hubert/hubert.py", line 467, in forward x, _ = self.encoder( File "/home/owner/rvc/.venv/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1518, in _wrapped_call_impl return self._call_impl(*args, **kwargs) File "/home/owner/rvc/.venv/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1527, in _call_impl return forward_call(*args, **kwargs) File "/home/owner/rvc/.venv/lib/python3.10/site-packages/fairseq/models/wav2vec/wav2vec2.py", line 1003, in forward x, layer_results = self.extract_features(x, padding_mask, layer) File "/home/owner/rvc/.venv/lib/python3.10/site-packages/fairseq/models/wav2vec/wav2vec2.py", line 1049, in extract_features x, (z, lr) = layer( File "/home/owner/rvc/.venv/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1518, in _wrapped_call_impl return self._call_impl(*args, **kwargs) File "/home/owner/rvc/.venv/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1527, in _call_impl return forward_call(*args, **kwargs) File "/home/owner/rvc/.venv/lib/python3.10/site-packages/fairseq/models/wav2vec/wav2vec2.py", line 1260, in forward x, attn = self.self_attn( File "/home/owner/rvc/.venv/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1518, in _wrapped_call_impl return self._call_impl(*args, **kwargs) File "/home/owner/rvc/.venv/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1527, in _call_impl return forward_call(*args, **kwargs) File "/home/owner/rvc/.venv/lib/python3.10/site-packages/fairseq/modules/multihead_attention.py", line 538, in forward return F.multi_head_attention_forward( File "/home/owner/rvc/.venv/lib/python3.10/site-packages/torch/nn/functional.py", line 5443, in multi_head_attention_forward attn_output = linear(attn_output, out_proj_weight, out_proj_bias) RuntimeError: mat1 and mat2 must have the same dtype, but got Float and Half Traceback (most recent call last): File "/home/owner/rvc/.venv/lib/python3.10/site-packages/gradio/routes.py", line 437, in run_predict output = await app.get_blocks().process_api( File "/home/owner/rvc/.venv/lib/python3.10/site-packages/gradio/blocks.py", line 1349, in process_api data = self.postprocess_data(fn_index, result["prediction"], state) File "/home/owner/rvc/.venv/lib/python3.10/site-packages/gradio/blocks.py", line 1283, in postprocess_data prediction_value = block.postprocess(prediction_value) File "/home/owner/rvc/.venv/lib/python3.10/site-packages/gradio/components.py", line 2586, in postprocess file_path = self.audio_to_temp_file( File "/home/owner/rvc/.venv/lib/python3.10/site-packages/gradio/components.py", line 360, in audio_to_temp_file temp_dir = Path(dir) / self.hash_bytes(data.tobytes()) AttributeError: 'NoneType' object has no attribute 'tobytes' 2024-02-17 20:36:17 | INFO | httpx | HTTP Request: POST http://localhost:7865/api/predict "HTTP/1.1 500 Internal Server Error" 2024-02-17 20:36:17 | INFO | httpx | HTTP Request: POST http://localhost:7865/reset "HTTP/1.1 200 OK" ``` Was there anything I missed?
Author
Owner

@gc-octopis commented on GitHub (Nov 25, 2024):

Hi there!
I was just facing the same problem and found this file go-web-dml.bat from the Code page and used it, it just works for me! I am using a AMD RX570 btw. hope this helps

<!-- gh-comment-id:2497528369 --> @gc-octopis commented on GitHub (Nov 25, 2024): Hi there! I was just facing the same problem and found this file `go-web-dml.bat` from the Code page and used it, it just works for me! I am using a AMD RX570 btw. hope this helps
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
RVC-Project/Retrieval-based-Voice-Conversion-WebUI#1154
No description provided.