Anjok07 / ultimatevocalremovergui

GUI for a Vocal Remover that uses Deep Neural Networks.
MIT License
18.26k stars 1.37k forks source link

Error with 'sklearn' #1435

Open flakjakk opened 4 months ago

flakjakk commented 4 months ago

Running on Linux Mint 21.3. I followed the instruction on github, at the end of the process I got this output from term: Collecting lightning-utilities>=0.7.0 Downloading lightning_utilities-0.11.3.post0-py3-none-any.whl (26 kB) Collecting matplotlib>=1.5.1 Downloading matplotlib-3.9.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.3 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 8.3/8.3 MB 5.2 MB/s eta 0:00:00 Collecting pandas>=0.17.1 Downloading pandas-2.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.0 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 13.0/13.0 MB 8.0 MB/s eta 0:00:00 Collecting sklearn Downloading sklearn-0.0.post12.tar.gz (2.6 kB) Preparing metadata (setup.py) ... error error: subprocess-exited-with-error

× python setup.py egg_info did not run successfully. │ exit code: 1 ╰─> [15 lines of output] The 'sklearn' PyPI package is deprecated, use 'scikit-learn' rather than 'sklearn' for pip commands.

  Here is how to fix this error in the main use cases:
  - use 'pip install scikit-learn' rather than 'pip install sklearn'
  - replace 'sklearn' by 'scikit-learn' in your pip requirements files
    (requirements.txt, setup.py, setup.cfg, Pipfile, etc ...)
  - if the 'sklearn' package is used by one of your dependencies,
    it would be great if you take some time to track which package uses
    'sklearn' instead of 'scikit-learn' and report it to their issue tracker
  - as a last resort, set the environment variable
    SKLEARN_ALLOW_DEPRECATED_SKLEARN_PACKAGE_INSTALL=True to avoid this error

  More information is available at
  https://github.com/scikit-learn/sklearn-pypi-package
  [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip. error: metadata-generation-failed

× Encountered error while generating package metadata. ╰─> See above for output.

note: This is an issue with the package mentioned above, not pip. hint: See above for details. ed@ed-System-Product-Name:~/MyApps/ultimatevocalremovergui-master$

When I tried to run it I got this feedback: ed@ed-System-Product-Name:~/MyApps/ultimatevocalremovergui-master$ python3 UVR.py Traceback (most recent call last): File "/home/ed/MyApps/ultimatevocalremovergui-master/UVR.py", line 4, in import audioread ModuleNotFoundError: No module named 'audioread'

7rident commented 4 months ago

in the requirements.txt file, remove the line Dora==0.0.3 as this is the package that's calling sklearn. Ironically, it isn't needed since the only instance of it being called was in a file called pretrained.py, but even then it's commented out

Boyishdude commented 4 months ago

in the requirements.txt file, remove the line Dora==0.0.3 as this is the package that's calling sklearn. Ironically, it isn't needed since the only instance of it being called was in a file called pretrained.py, but even then it's commented out

This should be quoted in the installation instructions for Linux until it gets fixed, that way people will know about it and won't have to search the Issues page for this solution themselves.

cplhoijtink commented 4 months ago

in the requirements.txt file, remove the line Dora==0.0.3 as this is the package that's calling sklearn. Ironically, it isn't needed since the only instance of it being called was in a file called pretrained.py, but even then it's commented out

This should be quoted in the installation instructions for Linux until it gets fixed, that way people will know about it and won't have to search the Issues page for this solution themselves.

Completely agree with this. Trying to search for any place in the codebase that even uses sklearn, turns out nothing directly uses it. But if we can actually circumvent the whole issue by just removing 1 line from the requirements.txt file without breaking the application, we really should make sure we properly communicate this to people.

I was not able to complete the instalklation of all packages mentoined in the requirments.txt file on my windows machine. But after just having removed the line Dora==0.0.3 and running pip install -r requirements.txt I was finally able to install all packages without it crashing with the mentoined error messsage. Its also kind of weird that it is breaking because of a package we use in a "utility" kind of file compared to a core integral piece of code. We are still able to run everything with skipping the installation of the Dora package, so is it possible to omit this from the main requirments.txt file and have a 2th sub module thatcontains code that uses the Dora package that contains its own requirment.txt file?

Boyishdude commented 4 months ago

in the requirements.txt file, remove the line Dora==0.0.3 as this is the package that's calling sklearn. Ironically, it isn't needed since the only instance of it being called was in a file called pretrained.py, but even then it's commented out

This should be quoted in the installation instructions for Linux until it gets fixed, that way people will know about it and won't have to search the Issues page for this solution themselves.

Completely agree with this. Trying to search for any place in the codebase that even uses sklearn, turns out nothing directly uses it. But if we can actually circumvent the whole issue by just removing 1 line from the requirements.txt file without breaking the application, we really should make sure we properly communicate this to people.

I was not able to complete the instalklation of all packages mentoined in the requirments.txt file on my windows machine. But after just having removed the line Dora==0.0.3 and running pip install -r requirements.txt I was finally able to install all packages without it crashing with the mentoined error messsage. Its also kind of weird that it is breaking because of a package we use in a "utility" kind of file compared to a core integral piece of code. We are still able to run everything with skipping the installation of the Dora package, so is it possible to omit this from the main requirments.txt file and have a 2th sub module thatcontains code that uses the Dora package that contains its own requirment.txt file?

Knock on wood, but for some reason I'm getting "CUDA out of memory" errors now despite the fact that I wasn't having any problems with the GPU Conversion for a good few hours when I finally got it working. Could be entirely unrelated to this Dora==0.0.3 issue, but I'm going to post it here all the same before I make another issues post about it:

Last Error Received:

Process: Ensemble Mode

The application was unable to allocate enough GPU memory to use this model. Please close any GPU intensive applications and try again. If the error persists, your GPU might not be supported.

Raw Error Details:

OutOfMemoryError: "CUDA out of memory. Tried to allocate 1.95 GiB. GPU " Traceback Error: " File "/home/boyishdude/Downloads/ultimatevocalremovergui-master/UVR.py", line 6638, in process_start seperator.seperate() File "/home/boyishdude/Downloads/ultimatevocalremovergui-master/separate.py", line 652, in seperate sources = self.demix(mix) File "/home/boyishdude/Downloads/ultimatevocalremovergui-master/separate.py", line 771, in demix x = model(batch.to(self.device)) File "/home/boyishdude/.pyenv/versions/3.10.9/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1532, in _wrapped_call_impl return self._call_impl(*args, kwargs) File "/home/boyishdude/.pyenv/versions/3.10.9/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1541, in _call_impl *return forward_call(args, kwargs) File "/home/boyishdude/Downloads/ultimatevocalremovergui-master/lib_v5/tfc_tdf_v3.py", line 226, in forward x = block.tfc_tdf(x) File "/home/boyishdude/.pyenv/versions/3.10.9/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1532, in _wrapped_call_impl return self._call_impl(*args, kwargs) File "/home/boyishdude/.pyenv/versions/3.10.9/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1541, in _call_impl return forward_call(*args, kwargs) File "/home/boyishdude/Downloads/ultimatevocalremovergui-master/lib_v5/tfc_tdf_v3.py", line 142, in forward x = block.tfc1(x) File "/home/boyishdude/.pyenv/versions/3.10.9/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1532, in _wrapped_call_impl *return self._call_impl(args, kwargs) File "/home/boyishdude/.pyenv/versions/3.10.9/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1541, in _call_impl return forward_call(*args, kwargs) File "/home/boyishdude/.pyenv/versions/3.10.9/lib/python3.10/site-packages/torch/nn/modules/container.py", line 217, in forward input = module(input) File "/home/boyishdude/.pyenv/versions/3.10.9/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1532, in _wrapped_call_impl return self._call_impl(*args, kwargs) File "/home/boyishdude/.pyenv/versions/3.10.9/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1541, in _call_impl *return forward_call(args, kwargs) File "/home/boyishdude/.pyenv/versions/3.10.9/lib/python3.10/site-packages/torch/nn/modules/instancenorm.py", line 87, in forward return self._apply_instance_norm(input) File "/home/boyishdude/.pyenv/versions/3.10.9/lib/python3.10/site-packages/torch/nn/modules/instancenorm.py", line 36, in _apply_instance_norm return F.instance_norm( File "/home/boyishdude/.pyenv/versions/3.10.9/lib/python3.10/site-packages/torch/nn/functional.py", line 2553, in instance_norm return torch.instance_norm( "**

Error Time Stamp [2024-07-16 23:36:11]

Full Application Settings:

vr_model: Choose Model aggression_setting: 5 window_size: 512 mdx_segment_size: 4000 batch_size: Default crop_size: 256 is_tta: False is_output_image: False is_post_process: False is_high_end_process: False post_process_threshold: 0.2 vr_voc_inst_secondary_model: No Model Selected vr_other_secondary_model: No Model Selected vr_bass_secondary_model: No Model Selected vr_drums_secondary_model: No Model Selected vr_is_secondary_model_activate: False vr_voc_inst_secondary_model_scale: 0.9 vr_other_secondary_model_scale: 0.7 vr_bass_secondary_model_scale: 0.5 vr_drums_secondary_model_scale: 0.5 demucs_model: Choose Model segment: Default overlap: 0.25 overlap_mdx: 0.99 overlap_mdx23: 8 shifts: 2 chunks_demucs: Auto margin_demucs: 44100 is_chunk_demucs: False is_chunk_mdxnet: False is_primary_stem_only_Demucs: False is_secondary_stem_only_Demucs: False is_split_mode: True is_demucs_combine_stems: True is_mdx23_combine_stems: True demucs_voc_inst_secondary_model: No Model Selected demucs_other_secondary_model: No Model Selected demucs_bass_secondary_model: No Model Selected demucs_drums_secondary_model: No Model Selected demucs_is_secondary_model_activate: False demucs_voc_inst_secondary_model_scale: 0.9 demucs_other_secondary_model_scale: 0.7 demucs_bass_secondary_model_scale: 0.5 demucs_drums_secondary_model_scale: 0.5 demucs_pre_proc_model: No Model Selected is_demucs_pre_proc_model_activate: False is_demucs_pre_proc_model_inst_mix: False mdx_net_model: UVR-MDX-NET-Voc_FT chunks: Auto margin: 44100 compensate: Auto denoise_option: None is_match_frequency_pitch: True phase_option: Automatic phase_shifts: None is_save_align: False is_match_silence: True is_spec_match: False is_mdx_c_seg_def: False is_invert_spec: False is_deverb_vocals: False deverb_vocal_opt: Main Vocals Only voc_split_save_opt: Lead Only is_mixer_mode: False mdx_batch_size: Default mdx_voc_inst_secondary_model: No Model Selected mdx_other_secondary_model: No Model Selected mdx_bass_secondary_model: No Model Selected mdx_drums_secondary_model: No Model Selected mdx_is_secondary_model_activate: False mdx_voc_inst_secondary_model_scale: 0.9 mdx_other_secondary_model_scale: 0.7 mdx_bass_secondary_model_scale: 0.5 mdx_drums_secondary_model_scale: 0.5 is_save_all_outputs_ensemble: True is_append_ensemble_name: False chosen_audio_tool: Manual Ensemble choose_algorithm: Min Spec time_stretch_rate: 2.0 pitch_rate: 2.0 is_time_correction: True is_gpu_conversion: True is_primary_stem_only: True is_secondary_stem_only: False is_testing_audio: False is_auto_update_model_params: True is_add_model_name: False is_accept_any_input: False is_task_complete: True is_normalization: True is_use_opencl: False is_wav_ensemble: False is_create_model_folder: False mp3_bit_set: 320k semitone_shift: 0 save_format: WAV wav_type_set: PCM_32 device_set: NVIDIA GeForce GTX 1070:0 help_hints_var: True set_vocal_splitter: No Model Selected is_set_vocal_splitter: False is_save_inst_set_vocal_splitter: False model_sample_mode: False model_sample_mode_duration: 30 demucs_stems: All Stems mdx_stems: All Stems

It could be related to the issue I posted about here.