wikibook / mpytc

MIT License
19 stars 14 forks source link

ImportError: DLL load failed: 지정된 모듈을 찾을 수 없습니다. #2

Open ychoi-kr opened 1 year ago

ychoi-kr commented 1 year ago

Jupyter lab 에서 mpytc 지정해서 돌렸더니..

Jupyter lab cmd 창에

ImportError: DLL load failed: 지정된 모듈을 찾을 수 없습니다. [I 2023-07-12 11:27:15.359 ServerApp] AsyncIOLoopKernelRestarter: restarting kernel (1/5), new random ports Traceback (most recent call last): File "C:\ProgramData\Anaconda3\envs\mpytc\lib\runpy.py", line 193, in _run_module_as_main "main", mod_spec) File "C:\ProgramData\Anaconda3\envs\mpytc\lib\runpy.py", line 85, in _run_code exec(code, run_globals) File "C:\ProgramData\Anaconda3\envs\mpytc\lib\site-packages\ipykernel_launcher.py", line 15, in from ipykernel import kernelapp as app File "C:\ProgramData\Anaconda3\envs\mpytc\lib\site-packages\ipykernel__init.py", line 5, in from .connect import * # noqa File "C:\ProgramData\Anaconda3\envs\mpytc\lib\site-packages\ipykernel\connect.py", line 11, in import jupyter_client File "C:\ProgramData\Anaconda3\envs\mpytc\lib\site-packages\jupyter_client__init.py", line 8, in from .asynchronous import AsyncKernelClient # noqa File "C:\ProgramData\Anaconda3\envs\mpytc\lib\site-packages\jupyter_client\asynchronous__init__.py", line 1, in from .client import AsyncKernelClient # noqa File "C:\ProgramData\Anaconda3\envs\mpytc\lib\site-packages\jupyter_client\asynchronous\client.py", line 6, in from jupyter_client.channels import HBChannel File "C:\ProgramData\Anaconda3\envs\mpytc\lib\site-packages\jupyter_client\channels.py", line 12, in import zmq.asyncio File "C:\ProgramData\Anaconda3\envs\mpytc\lib\site-packages\zmq\init.py", line 103, in from zmq import backend File "C:\ProgramData\Anaconda3\envs\mpytc\lib\site-packages\zmq\backend\init__.py", line 31, in raise original_error from None File "C:\ProgramData\Anaconda3\envs\mpytc\lib\site-packages\zmq\backend\init.py", line 26, in _ns = select_backend(first) File "C:\ProgramData\Anaconda3\envs\mpytc\lib\site-packages\zmq\backend\select.py", line 31, in select_backend mod = import_module(name) File "C:\ProgramData\Anaconda3\envs\mpytc\lib\importlib\init.py", line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "C:\ProgramData\Anaconda3\envs\mpytc\lib\site-packages\zmq\backend\cython\init__.py", line 6, in from . import (

위와같은 문구가 나오네요..

Originally posted by @kakaon1 in https://github.com/wikibook/mpytc/issues/1#issuecomment-1631759652

ychoi-kr commented 1 year ago

제가 jupyterlab을 설치하니 문제없이 잘 되어서, 보여주신 오류 메시지로 검색을 해봤습니다.

아래 명령을 실행하면 해결될지도 모르겠습니다.

pip uninstall pyzmq
pip install pyzmq

참고: https://stackoverflow.com/a/54225033

kakaon1 commented 1 year ago

알려주신 명령어로 진행 해 보았지만..

아래 스샷과 같이 되었습니다.

캡처

그래서 나온데로 mkl-service 인것같아서 이를 pip uninstall mkl-service해주고

pip install mkl-service 로 인스톨 해보았지만 에러는 동일하게 일어납니다.

ychoi-kr commented 1 year ago

conda env export 결과를 복사해서 댓글에 붙여넣어 주시겠어요?

kakaon1 commented 1 year ago

해당 명령어를 이용하여 추출하였습니다.

conda env export > list.txt

파일로 첨부해드립니다.

추가적으로 알려주신 패키지 이외엔 설치하지 않았습니다.

list.txt

ychoi-kr commented 1 year ago

첨부해 주신 것으로 create env를 시도해 봤는데, 위에 첨부해 주신 스크린샷과 같은 오류는 뜨지 않고 아래와 같은 오류가 뜹니다. image image

그런데 제가 이전에 성공한 구성(environment_gpu_exported.yml)과 보내주신 list.txt 내용(environment_kakaon1.yml)을 비교해 보면 버전 차이가 많이 납니다. (참고로 conda-utils는 제가 만든 툴입니다)

(base) D:\>python conda-utils\env_diff.py \Downloads\environment_kakaon1.yml environment_gpu_exported.yml 

The following packages were not found in environment_gpu_exported.yml:
more-itertools
emcee
typeguard
enum-compat
opt-einsum
tensorflow-addons
torch
tbb
olefile

The following packages have different versions:
+-------------------------+------------------------------------+------------------------------+
|         Package         | \Downloads\environment_kakaon1.yml | environment_gpu_exported.yml |
+-------------------------+------------------------------------+------------------------------+
|      _tflow_select      |                                    |            2.2.0             |
|         absl-py         |               1.4.0                |            0.15.0            |
|         aiohttp         |                                    |            3.8.3             |
|        aiosignal        |                                    |            1.2.0             |
|      async-timeout      |                                    |            4.0.2             |
|        asynctest        |                                    |            0.13.0            |
|         blinker         |                                    |             1.4              |
|       bottleneck        |                                    |            1.3.5             |
|       cachetools        |                                    |            4.2.2             |
|        decorator        |               5.1.1                |            4.4.2             |
|         ffmpeg          |                                    |            4.2.2             |
|          fftw           |                                    |            3.3.9             |
|       frozenlist        |                                    |            1.3.3             |
|       google-auth       |                                    |            2.6.0             |
|  google-auth-oauthlib   |                                    |            0.4.4             |
|         grpcio          |               1.56.0               |            1.42.0            |
|          h5py           |               2.10.0               |            3.7.0             |
|          hdf5           |                                    |            1.10.6            |
|      intel-openmp       |              2023.1.0              |           2021.4.0           |
|       libprotobuf       |                                    |            3.20.3            |
|         libwebp         |                                    |            1.2.4             |
|      libwebp-base       |                                    |            1.2.4             |
|        markdown         |               3.4.3                |            3.4.1             |
|     matplotlib-base     |                                    |            3.5.3             |
|           mkl           |              2023.1.0              |           2021.4.0           |
|         mkl_fft         |               1.3.0                |            1.3.1             |
|       mkl_random        |               1.1.1                |            1.2.2             |
|        multidict        |                                    |            6.0.2             |
|        networkx         |               2.6.3                |            2.5.1             |
|         numexpr         |                                    |            2.8.4             |
|          numpy          |               1.18.5               |            1.21.5            |
|       numpy-base        |               1.18.5               |            1.21.5            |
|        oauthlib         |                                    |            3.2.1             |
|       opt_einsum        |                                    |            3.3.0             |
|         pandas          |               1.2.4                |            1.3.5             |
|         pillow          |               9.5.0                |            9.3.0             |
|        protobuf         |               4.23.4               |            3.20.3            |
|         pyasn1          |                                    |            0.4.8             |
|     pyasn1-modules      |                                    |            0.2.8             |
|       pycocotools       |                2.0                 |            2.0.4             |
|         pyglet          |                                    |            1.5.27            |
|          pyjwt          |                                    |            2.4.0             |
|       python_abi        |                                    |             3.7              |
|         pytorch         |                                    |            1.7.1             |
|          pyzmq          |               25.1.0               |            23.2.0            |
|          regex          |              2023.6.3              |           2022.7.9           |
|    requests-oauthlib    |                                    |            1.3.0             |
|           rsa           |                                    |            4.7.2             |
|       tensorboard       |               1.15.0               |            2.8.0             |
| tensorboard-data-server |                                    |            0.6.1             |
| tensorboard-plugin-wit  |                                    |            1.8.1             |
|       tensorflow        |               1.15.5               |            1.15.0            |
|     tensorflow-base     |                                    |            1.15.0            |
|        termcolor        |               2.3.0                |            1.1.0             |
|       torchaudio        |                                    |            0.7.2             |
|       torchserve        |               0.8.1                |            0.5.2             |
|       torchvision       |               0.14.1               |            0.8.2             |
|          ucrt           |                                    |         10.0.20348.0         |
|      vc14_runtime       |                                    |         14.36.32532          |
|     vs2015_runtime      |            14.27.29016             |         14.36.32532          |
|          wrapt          |               1.15.0               |            1.14.1            |
|          yarl           |                                    |            1.8.1             |
|          zipp           |               3.11.0               |            3.15.0            |
|       autopytorch       |               0.2.1                |            0.1.1             |
|       configspace       |               0.7.1                |            0.4.21            |
|          onnx           |               1.14.0               |            1.5.0             |
|         onnx-tf         |               1.10.0               |            1.5.0             |
|        pynisher         |               0.6.4                |            1.0.5             |
|          smac           |               1.4.0                |            0.14.0            |
|         typing          |                                    |           3.7.4.3            |
+-------------------------+------------------------------------+------------------------------+

패키지가 워낙 많아서, 이렇게 비교하는 것으로는 어디서 문제가 생기는지 찾기 힘들 것 같습니다.

그래서 다음 방법을 제안 드립니다. 제가 이번에 environment_gpu.yml을 만들기 위해 썼던 방법으로, 패키지를 수동으로 조금씩 추가해 가면서 문제가 생기는 곳을 찾는 것입니다.

conda create -n mpytc_gpu python=3.7
conda activate mpytc_gpu

conda install pytorch==1.7.1 torchvision==0.8.2 torchaudio==0.7.2 torchtext torchserve torch-model-archiver==0.2.0 cudatoolkit captum -c pytorch
conda install tensorflow==1.15.0 tensorflow-estimator==1.15.1 nltk==3.8.1 pycocotools==2.0.4 gym==0.19 networkx==2.5.1 zipp==3.15.0 -c conda-forge
conda install fastai -c fastai
conda install jupyter notebook

pip install torch==1.7.1 onnx==1.5.0 onnx-tf==1.5.0 torchviz autopytorch ale-py==0.7.0 opencv-python atari-py hpbandster optuna transformers configspace sentencepiece flask

이렇게 해도 안 된다면, 전체 패키지를 단일 환경에 설치하지 말고 각 챕터별로 환경을 따로 구성하는 것이 나을 수도 있을 듯합니다.

ychoi-kr commented 1 year ago

그리고 처음에 말씀하신 ImportError: DLL load failed 오류는 PATH가 올바로 잡히지 않아서 발생할 수도 있을 듯합니다. 주피터랩을 실행할 때 아나콘다 프롬프트 창에 파이썬 인터프리터 경로가 출력될 텐데, 새로 설치한 환경의 경로가 맞는지도 확인해 보시기 바랍니다.

kakaon1 commented 1 year ago

답변 감사합니다. 일반적으로 셋팅한 Anaconda는 문제가 없습니다..

한번 참고해서 패키지를 수정해보겠습니다.

감사합니다.