va1shn9v / PromptIR

PromptIR: Prompting for All-in-One Blind Image Restoration [NeurIPS 2023]
https://arxiv.org/abs/2306.13090
Other
297 stars 22 forks source link

How to pip install env? #10

Closed ganpaper closed 10 months ago

ganpaper commented 11 months ago

(promptir) chenz@chenz-System-Product-Name:~/PromptIR$ python train.py Traceback (most recent call last): File "train.py", line 15, in import lightning.pytorch as pl File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/lightning/init.py", line 27, in from lightning.pytorch.callbacks import Callback # noqa: E402 File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/lightning/pytorch/init.py", line 26, in from lightning.pytorch.callbacks import Callback # noqa: E402 File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/lightning/pytorch/callbacks/init.py", line 14, in from lightning.pytorch.callbacks.batch_size_finder import BatchSizeFinder File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/lightning/pytorch/callbacks/batch_size_finder.py", line 24, in from lightning.pytorch.callbacks.callback import Callback File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/lightning/pytorch/callbacks/callback.py", line 22, in from lightning.pytorch.utilities.types import STEP_OUTPUT File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/lightning/pytorch/utilities/types.py", line 25, in from torchmetrics import Metric File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/torchmetrics/init.py", line 14, in from torchmetrics import functional # noqa: E402 File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/torchmetrics/functional/init.py", line 14, in from torchmetrics.functional.audio._deprecated import _permutation_invariant_training as permutation_invariant_training File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/torchmetrics/functional/audio/init.py", line 14, in from torchmetrics.functional.audio.pit import permutation_invariant_training, pit_permutate File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/torchmetrics/functional/audio/pit.py", line 23, in from torchmetrics.utilities import rank_zero_warn File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/torchmetrics/utilities/init.py", line 14, in from torchmetrics.utilities.checks import check_forward_full_state_property File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/torchmetrics/utilities/checks.py", line 25, in from torchmetrics.metric import Metric File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/torchmetrics/metric.py", line 30, in from torchmetrics.utilities.data import ( File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/torchmetrics/utilities/data.py", line 22, in from torchmetrics.utilities.imports import _TORCH_GREATER_EQUAL_1_12, _XLA_AVAILABLE File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/torchmetrics/utilities/imports.py", line 48, in _TORCHAUDIO_GREATER_EQUAL_0_10: Optional[bool] = compare_version("torchaudio", operator.ge, "0.10.0") File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/lightning_utilities/core/imports.py", line 73, in compare_version pkg = importlib.import_module(package) File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/importlib/init.py", line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/torchaudio/init.py", line 1, in from . import extension # noqa: F401 File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/torchaudio/extension/init.py", line 5, in _init_extension() File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/torchaudio/extension/extension.py", line 11, in _init_extension _init_script_module(ext) File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/torchaudio/extension/extension.py", line 18, in _init_script_module torch.classes.load_library(path) File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/torch/_classes.py", line 51, in load_library torch.ops.load_library(path) File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/torch/_ops.py", line 643, in load_library ctypes.CDLL(path) File "/home/chenz/anaconda3/envs/promptir/lib/python3.8/ctypes/init.py", line 373, in init self._handle = _dlopen(self._name, mode) OSError: /home/chenz/anaconda3/envs/promptir/lib/python3.8/site-packages/torchaudio/_torchaudio.so: undefined symbol: _ZNK3c104Type14isSubtypeOfExtERKSt10shared_ptrIS0_EPSo

hyunW3 commented 11 months ago

I have also problem in environment setting, not sure it is same case as above.. do you experience same error when installing env.yml? @ganpaper

Setting

Ubuntu 18.04
Conda version : 4.12.0
pip version : 23.2.1
python version : 3.9

problem

After command conda env create -f env.yml, pip installation problem happens as below

Pip subprocess error:
ERROR: Could not find a version that satisfies the requirement warmup-scheduler==0.3.2
ERROR: No matching distribution found for warmup-scheduler==0.3.2

Therefore, I loosen warmup-scheduler version from 0.3.2 to 0.3 and torch >=1.8.1 in env.yml file (i think the env.yml have some conflict package,,) After it, environment is well-installed, but I'm not sure this solution is okay since no experiment is done so far. is it okay to setup like this?

blingsr commented 10 months ago

@hyunW3 I might have to try it out.

va1shn9v commented 10 months ago

Hello, Thanks for taking an interest in our work, you can choose to remove warmup-scheduler from the requirements, and it will still work. This dependency will be removed in a future commit. In my experience, the undefined symbol error appears when there is a library version and cuda version mismatch.