M1 MacBook은 기존의 Intel 기반의 시스템과 다른 구조이기 때문에 Anaconda가 아닌 Miniforge(conda installer)를 통해 conda 환경을 구축해야한다. (공식 Python을 Apple Silicon에 적용하여 실행하면 Tensorlow가 구동되지 않는다 ⭐️)

Miniforge는 Anaconda 배포판에서 파생된 파이썬 환경으로 Apple Silicon에서 Tensorflow를 실행하는 데 도움이 되는 독립적인 파이썬 환경을 제공한다.

  • 기존의 Anaconda 배포판은 Apple Silicon에 최적화되어있지 않아 Tensorflow를 실행하는 데 일부 문제가 발생할 수 있다. 따라서 Apple Silicon에서 실행되도록 최적화된 conda 패키지 관리자인 Miniforge를 설치한 후 conda를 사용하여 Apple Silicon용 Tensorflow를 설치한다.

1. Miniforge 설치

  • Step 1) Miniforge Github에서 OS X의 arm64 (Apple Silicon)을 위한 Miniforge3 설치파일을 다운받는다.

image01

  • Step 2) Miniforge3를 home directory에 설치한다.

      # 파일 권한 변경 (execute)
      chmod +x ~/Downloads/Miniforge3-MacOSX-arm64.sh
        
      # sh파일 실행
      sh ~/Downloads/Miniforge3-MacOSX-arm64.sh
        
      # activate miniforge3
      source ~/miniforge3/bin/activate
    

    image02

    conda 명령어를 통해 conda가 잘 설치되어있는지 확인할 수 있다.

    image03

  • Step 3) 터미널 종류 후 재실행

    모든 변경사항이 잘 적용되도록 터미널을 종류 후 재실행해준다.

2. Conda 기본 명령어

1) Conda 버전 확인

$ conda --version

2) 가상환경 목록 확인

가상환경 목록을 확인하는 명령어는 여러가지가 있다.

$ conda env list
$ conda info --envs

3) Conda에 설치 가능한 파이썬 패키지 확인

$ conda search python

image04

4) 가상환경 생성

$ conda create -n {ENV_NAME} python={VERSION}

아래 터미널 창에서 확인할 수 있듯이 가상환경이 생성되는 경로는 /Users/{USERNAME}/opt/anaconda3/envs/{ENV_NAME} 과 같다.

image05

5) 가상환경 활성화 / 비활성화

$ conda activate {ENV_NAME}
$ conda deactivate

image06

6) 가상환경 내 설치되어 있는 패키지 확인

$ conda list

image07

7) 가상환경 내 패키지 설치

2개 이상의 패키지를 설치하고 싶을 때에는 설치하고자하는 패키지를 나열하여 입력해주면 된다.

$ conda install {PACKAGE_NAME1} {PACKAGE_NAME2} ...

8) 단일 패키지 업데이트

$ conda update {PACKAGE_NAME}

9) 설치된 모든 패키지 업데이트

$ conda update --all

10) 기존 가상환경을 복제해 새로운 가상환경 생성

가상환경의 이름을 변경하고 싶을 때 이 방법을 사용하기도 한다. 엄밀히 말하면 가상환경의 이름을 변경하는 명령어가 없기 때문에 기존의 가상환경을 새로운 이름으로 복제한 후, 기존의 가상환경을 삭제해주는 방법으로 이름을 변경한다.

$ conda create -n {NEW_ENV_NAME} --clone {ENV_NAME}

image08

11) 가상환경 내보내기(export) / 불러오기

A컴퓨터에서 B컴퓨터로 가상환경을 yaml 파일로 저장하여 내보내기할 수도 있고, 이를 불러오기하여 새로운 가상환경을 만들 때 활용할 수 있다.

# 내보내기 (.yaml 파일로 저장)
$ conda env export > {FILE_NAME}.yaml
# 불러오기 (.yaml 파일로 새로운 가상환경 만들기)
$ conda env create -f {FILE_NAME}.yaml

(참고) 같은 컴퓨터에서 가상환경을 export 후 불러오기를 진행하면 아래와 같이 같은 가상환경 경로가 존재한다는 에러 메시지가 뜨면서 가상환경이 생성되지 않는다. 이러한 경우에는 {FILE_NAME}.yaml 파일을 열어 nameprefix 를 수정해주면 된다. (새로운 가상환경의 이름과 경로 수정해주기!)

image09

{FILE_NAME}.yaml 파일 모습

image10

{FILE_NAME}.yaml 파일 수정 후 conda 가상환경이 잘 생성되는 모습

image11

11) 가상환경 제거

$ conda remove -n {ENV_NAME} --all

Tags:

Categories:

Updated:

Leave a comment