본문 바로가기

Software/Mac OS

맥 M1/M2/M3 에서 python 아나콘다 설치하고, VSCode에서 환경 설정

아주 예전에 저는 맥이나 윈도우에서 Python 환경 설정이나, 아나콘다(anaconda) 설정에 대한 이야기를 많이 했었는데요. 요즘은 그런 이야기를 잘 하지 않는것은, 설명을 훨~씬 잘 해주시는 분들도 많아지기도 했고, 또 워낙 다음~ 다음~ 만 누르면 설치가 잘되도록 되어 있어서 그렇습니다. 그러다가 오랜만에, 저도 맥을 새로 장만한 기념^^으로 아나콘다 환경 설정 이야기를 해볼까 합니다.~ 

Anaconda 설치 

https://www.anaconda.com/download/success

 

Download Now | Anaconda

Anaconda is the birthplace of Python data science. We are a movement of data scientists, data-driven enterprises, and open source communities.

www.anaconda.com

위 주소로 가면 아나콘다를 다운로드 받을 수 있는데요.

거기에서 최근 맥을 구매한 분들은 다 silicon 버전(M1, M2, M3 등)일테니, 위에 박스로 표시한 Apple silicon 이라고 되어 있는 항목을 받고 설치하시고, 다음~~만 누르시면 됩니다. 

Conda 터미널에서 실행

설치가 잘 되고 나면, Anaconda Navigator를 실행하시는 경우도 많긴 하지만, 저는 터미널을 실행해서 터미널에서 명령을 주는 것을 좋아합니다. 그런데 처음 설치후에 터미널을 실행해보면~

이렇게 (base)라는 이름이 보일겁니다. 저건 conda라는 아이가 설정해준 기본 Python 환경인데요. 제가 저렇게 나타나는걸 선호하지 않습니다. 저는 conda 환경이 바로 실행되지 않은 상태에서 작업을 시작하는 것을 선호하는데요. 그럴때는 ...

https://pinkwink.kr/1425

 

맥에서 Conda 설치 후 터미널에서 base 환경 자동 진입 해제

아주 예전에 맥에서 터미널 이쁘게 꾸미기를 이야기 한적이 있습니다. 이제 이 글은 오래되어서 간결하게 새롭게 설정이 가능한데요. https://pinkwink.kr/1354 Mac M1 노트북 (Mac silicon) 터미널 세팅 - iTe

pinkwink.kr

이 글에 있듯이.

conda config --set auto_activate_base false

라고 입력하면 됩니다.

그리고 다시 터미널을 시작하면,

이렇게 conda의 base 환경이 바로 설정되지 않고 터미널이 실행됩니다.

Conda 환경 사용

이제 python 환경에 대해 이야기를 해야 하는데요. 보통 자료에서는 python 가상환경이라고들 많이 하는데, 다양한 python 버전이나 또 같은 python 버전이라도, 다양한 python의 모듈 버전들을 다르게 설정해서 사용할 수 있는 환경입니다. 그러면 conda라는 도구를 가지고 어떻게 관리하는 걸까요? 일단, 간단히 명령 몇 개만 소개해보도록 하겠습니다.

conda env list

이 명령은 현재 설정된 환경들의 목록을 보여줍니다. 아직은 설치한 직후라 base만 있네요. 새로운 환경을 만들어 보겠습니다. 이 글이 작성된 시점에서 python은 버전이 3.12입니다. 저는 우분투 22.04를 많이 사용해서 python 버전이 3.10이면 제 작업환경과 파이썬 버전이 같습니다. 그래서 python 3.10 버전으로 환경을 하나 만들도록 하겠습니다.

conda create -n ds_py310 python=3.10

이제 만들 환경의 이름을 ds_py310으로 하고 python이라는 옵션으로 3.10이라는 버전을 명시했습니다.

그러면 위 화면처럼 'y'를 눌러서 진행하면 됩니다. 친절하게 ds_py310 환경으로 들어가고 싶다면 conda activate 명령을 사용하라고 하네요.

다시 환경 목록을 조사해보면 아까 있던 base와 함께 ds_py310이 함께 나타나는 것을 알 수 있습니다.

conda activate ds_py310

이제 ds_py310 환경으로 conda activate 명령으로 진입하면 위 그림처럼 (ds_py310)이라는 환경이름이 보일겁니다. 

이제 터미널에서 (ds_py310)이 보일때는 conda든, pip 든 어떤 명령을 이용해서 설치한 python 모듈은 모두 저 환경에서만 적용이 됩니다.

일단 pandas라는 모듈을 설치해봅니다.

이제 matplotlib, seaborn, scikit-learn 등도 설치를 해봅니다.~

이제 jupyter도 설치를 완료했습니다. 

그리고 나서 jupyter notebook 이라고 입력하면, 

웹 브라우저에서 이렇게 뜹니다.~

VSCode 설정 

이번에는 vscode를 실행해 보겠습니다.

여기에서 명령팔레트 (ctrl + shift + p)를 실행합니다.

Python select interpreter를 선택합니다.

우리가 찾던 아이가 있네요~ 선택하고

hello_world.py라는 빈 파일을 만들어주세요.

이렇게 몇 줄을 작성한 후~

위 버튼을 눌러 실행하면,

아까 우리가 설치했던 3.10 버전의 파이썬의 버전이 잘 나타나는 것을 알 수 있습니다.

이번에는 hello_world.ipynb 파일을 만들어 보겠습니다. 이렇게 하면 jupyter notebook과 같게 됩니다.

 여기서는 위 그림에 표시된 Select Kernel을 선택해야 합니다.

저 python environments를 선택하고서 

방금 만든 ds_py310을 선택합니다.

이렇게 코드를 실행해보면 됩니다.^^

맥에 tensorflow 설치하고 GPU 사용하게 해보기

pip install tensorflow
pip install tensorflow-metal

이제  tensorflow도설치해보겠습니다. (예전에 실리콘 맥이 처음 나오고 텐서플로우 설치 성공기를 보면서 엄청 공들여서 따라하던 시절이 떠오르는 군요.ㅠㅠ) 일단 tensorflow는 pip로 설치하고,  더불어 실리콘 맥용 플러그인(tensorflow-metal)도 설치를 합니다.

주피터노트북에서 위 코드로 mnist 데이터셋을 부르고, 

심플한 CNN 구조 (lenet 비스무리한) 하나 정의하고 

학습을 시켜보았습니다. 우와~ 속도가 좋네요^^ 뭐 맥에서 학습시킬일은 많지 않을겁니다. 학습은 원격에서 GPU 달린 Ubuntu에 하는게 제맛이죠^^

반응형