Anaconda

standingbell·2022년 7월 24일
1

1. Anaconda 가상환경 생성

conda create --name=tf2py36 python=3.7
conda create --name tf2py36 python=3.7
conda create -n tf2py36 python=3.7
conda create -n=tf2py36 python=3.7

# 가상환경 생성확인
conda env list
conda info --envs 

conda create -n 가상환경이름 파이썬버전

파이썬 버전을 명시하지 않을경우 빈 프로젝트로 생성

생성된 python interpreter 경로 : ~/anaconda3/envs/tf2py36/bin/python3.7

Tip) Parameter passing by shell script

기본적으로 파라미터를 전달하는 방법은 (실행시킬모듈) (명령어) (인자, argument) 로 전달된다.

파라미터는 --name 과 같이 전달하며 이는 프로그램에서 받을때 설계 가능하며, -n (--name) 을 똑같이 의미하도록 사용할 수 있다.

이때 파라미터를 전달하는 경우, 약어를 통해 전달할 경우 - 를 한개만 사용하며, 모든 파라미터 이름을 전달하고 싶다면, 슬래시(--)를 두개 사용한다.

2. Anaconda3 가상환경 삭제

# 완전히 삭제하기 위한 --all (모든 package 삭제)

conda remove --name=tf2py36 --all
conda remove --name tf2py36 --all
conda remove -n=tf2py36 --all
conda remove -n tf2py36 --all

--all 을 사용하지 않을경우 껍데기만 삭제되는 경우가 있기때문에 --all 로 인자를 넘겨주는 것이 안전하다.

3. 가상환경 패키지 설치

#가상환경을 비활성화 된 상태라면?

source activate tf2py36
conda activate tf2py36

# 특정 패키지를 설치하고 싶을때
conda install tensorflow 

# 특정 패키지 버전을 설치하고 싶을 때

# 1) 2.1.0, 2.1.1, 2.1.2 등등 포괄적으로 설치 
conda install tensorflow=2.1
# 2) 정확하게 2.1.0 버전 설치 
conda install tensorflow==2.1
# 3) 2.1.0 이상 버전 설치
conda install "tensorflow>=2.1.0"
# 4) 1.15.0 버전또는 2.1.0 버전 설치 
conda install "tensorflow=1.15.0|2.1.0" 

# 다른 가상환경에 설치하고 싶은경우
conda install -n test2 tensorflow

# pip을 이용하여 설치해야할 경우
source activate tf2py36
pip install tensorflow
pip install tensorflow==2.1.0

pip vs conda

conda install 은 conda channel에서 존재하는 패키지를 조사한 뒤, pypi에서 pip 모듈을 통해 설치가능한지 판단하여 dependency를 고려하여서 설치한다.

가상환경을 activate 하지 않은 상태에서 pip 을 사용하게 되면 기본 python 환경에서 설치되기 때문에 주의. 가상환경은 activate한 상태에서 pip을 사용하면 anaconda3/envs/tf2py36/ 안쪽에 저장된다.

pip install version (== 등호 2개) conda install version ( = 등호 1개도 가능)

또한, conda와 pip install 에서 같은 모듈이여도 이름이 다를 수 있다.

ex) pip install sklearn , conda install scikit-learn

4. 가상환경 특정 패키지 삭제


# 특정패키지를 제거하고 싶은경우
# Environment Activated 
conda remove tensorflow
pip uninstall tensorflow
# Environment Deactivate 
conda remove -n tf2py36 tensorflow

되도록이면 가상환경을 activate 한 상태에서 지우는것이 base conda environment, python base environment 와 혼동되지 않는다.

가상환경을 activate 시킨상태에서 pip uninstall로 pip 으로 설치한 모듈을 삭제 가능하다.

5. 가상환경 파일로 생성하기

# 가상환경 활성화
source activate tf2py36

# 가상환경 export (내보내기)
conda env export > environment.yaml

# .yaml 파일 형식에서 해당 콘다 환경 제작하기
conda env create -f ./environment.yaml

한가지 주의할점은, 윈도우, 우분투, Mac에서 존재하는 아나콘다의 버전이 다를경우 설치가 안되는 경우가 있다.

Conda 에 존재하는 channel에 패키지가 존재하지 않는다거나, pip에서 에러가 난다거나 등등... 버전을 최대한 맞춰주고 에러가 나는 버전들은 대체적으로 yaml파일에서 삭제한뒤, 해당 패키지만 다시 설치해주는것이 낫다.

conda env create -f 을 이용하면 prefix (가상환경의 이름) 이 yaml 파일의 첫번째 내용인 name : tf2py36 을 따라가면서 설치된다.

6. Conda 에서 환경변수 설정하기

name: tf2py38
channels:
  - nvidia
  - conda-forge
  - defaults
dependencies:
  - python=3.8
# Install cuda libs + ptxas compiler from nvidia channel
# This will accelerate the compilation of kernels for your specific card
  - cudatoolkit=11
  - cudnn=8
  - cupti=11
  - cuda-nvcc
  - pip
  - pip:
     - tensorflow==2.7.*
     - -r file: requirements.txt
variables:
  # In case you want to see your own logs and tame the TF loggorrhea
  TF_CPP_MIN_LOG_LEVEL: 3
  # Adjust to point to your local env path:
  LD_LIBRARY_PATH: ~/anaconda3/envs/yt8m2/lib

아래처럼 variables에 지정을 해주게 되면 conda 환경 내부에서 환경변수 설정을 유지시켜줄 수 있다.

profile
DL ML Tensorflow Pytorch PS

0개의 댓글