우당탕

conda 가상환경 이용 시 오류 해결 (fairseq error)

캥거루 2021. 2. 3. 01:16

카카오 브레인에서 pororo라는 자연어 처리 라이브러리를 출시하게 되었다고 한다.

그래서 설치해보려고 했다. 주소는 (github.com/kakaobrain/pororo)

 

설치 방법은 다음과 같다.. 순탄할줄

pip install pororo를 생각 없이 실행했는데

현재 파이썬 3.9.1 버젼에서는 설치가 안된다. 왜냐하면 해당 환경에선 pytoch 1.6 이 설치가 안되기 때문임.

그래서 아예 최소 기준인 python 3.6을 깔기 위해서 다시 가상 환경을 만들었다. 

가상 환경 이름은 pororo_test 

conda create -n pororo_test python = 3.6

해주면 된다.

 

설렌다...

그리고 pytorch 공식 문서에 나온 대로 설치 (pytorch.org/get-started/previous-versions/)

# CUDA 10.1
conda install pytorch==1.6.0 torchvision==0.7.0 cudatoolkit=10.1 -c pytorch

그리고 pip install pororo 를 입력.

하지만 실패! fairseq 를 설치하는 과정에서 에러가 났다.

 

하지만..

일단 fairseq는 자연어 처리의 sequence modeling을 지원하는 pytorch 툴킷 중 하나이다.

그게 중요한 게 아니고, 검색해보니 나같이 가상 환경을 이용하는 사람들에게서 에러가 많이 났다.

누구는 setup.py 내용을 바꿔보라고 하고, 누구는 가상 환경을 쓰지 말라고 하고..  (python 3.6을 쓸 순 없잖아요)

결국 권한 문제인 듯 했다.

 

accees denied

 

열심히 찾던 중.. 고마워요 스택오버플로우!

 

해결책은 간단했다. 

python -m pip install -U pip --user

pip에 user option을 줘서 설치하는 것! (오늘의 핵심)

 

user option을 주면 파이썬 패키지를 system directory에 설치함으로써 privilege를 갖게 된다. 따라서 권한 문제 해결!

 

혹시 가상 환경을 쓰다가 권한 문제가 생기면 유저 옵션을 사용해보길 바란다.