pip 명령어는 무엇일까?
어렵지 않습니다. 한줄 요약을 먼저 보고 본문 내용응 천천히 이해해볼까요? 혹시나 이해가 어려분 부분이 있다면, 꼭 알려주세요.
한 줄 요약
ⓐ 파이썬 패키지 관리자다. 다양한 패키지를 설치, 업데이트, 삭제할 수 있다.
먼저 pip(Package Installer for Python)는 파이썬에 기본적으로 내장되어 있는 패키지 매니저이다. 이 명령어를 사용하면 Python Package Index에 다른 개발자들이 올려놓은 패키지를 쉽게 다운로드하고 설치할 수 있다. 이번 포스팅에서는 pip를 사용하여 패키지를 관리하는 기본적인 방법에 대해서 알아보겠다.
여기서 문득 누군가는 conda는 무엇일까?란 생각을 할 것 같아서 미리 답을 달아봅니다. Conda는 아나콘다에서 제공하는 파이선 패키지 매니저라고 생각하시면 좋을 것 같습니다. 범위로 보면 pip > conda 입니다. 즉 pip install OOO 시작하면 대부분은 설치되니.. 참고 바랍니다.
기본적인 pip 명령어 모음👍
터미널(Terminal)이나 쉘(Shell) 등 프롬프트(Prompt)에서 다음의 명령어를 실행하면 된다. 통합 개발 환경(IDE, Jupyter Notebook, VScode 등)에서도 명령어를 사용할 때는 pip 앞에 ! (느낌표)를 붙여주자. 예를들면 !pip install {package name}와 같다.
|
python -version |
파이썬 version 확인 |
|
pip - |
pip 버전 확인 |
|
pip list |
설치된 패키지 목록 확인 |
|
python -m pip install --upgrade
pip |
pip 업그레이드 |
|
pip install --upgrade pip |
상기동일 |
|
pip install {package name} |
{package name} 설치 |
|
pip install {package name}==1.0 |
{package name} 1.0버전 설치 |
|
pip install --user {package
name}==1.0 |
{package name} 1.0버전 강제 설치 |
|
pip uninstall {package name} |
{package name} 삭제 |
|
pip search {package name} |
{package name} 검색 |
|
pip install --upgrade {package
name} |
{package name} 업그레드 |
|
pip freeze |
현재 작업 환경 설치된 패키지의 리스트를 모두 출력 |
|
pip freeze > {title}.txt |
패키지 리스트 {tile}.txt 파일로 출력 |
|
pip install -r {title}.txt |
{tile}.txt 파일에 저장된 패키지 리스트를 읽어(read)서 설치 |
다만 pip install -r {title}.txt 활용하여 설치할 경우, 단 한개라도 package 설치가 fail할 경우 그대로 작업이 중지하는 (치명적)단점이있다. 그래서 보통 노트북을 이미지화하여 가상 환경에 적용할 수 있는 docker 등을 활용하면 좀더 편한 파이썬 환경을 구축할 수 있다. 관련해서 기회가 되면 별도로 포스팅하겠습니다.
![]() |
| 도커는 필수... |
왜 package 관리가 필요할까? 예로 딥러닝 모델의 설명 가능 영역은 항상 블랙박스로 가려져 있다. 최근 설명 가능한 AI 즉, XAI (eXplainable AI) 활용하여 모델의 설명력을 확보하고자 한다. AI의 판단을 증별할 수 있도록 그래프, 차트 등의 형태로 자세한 설명을 가능하도록하였다 [1]. 이미 2010년대 이후로 유럽과 미국은 AI 기술을 활용할 경우 설명가능한 AI 모델을 사용하게끔 법제화하고 있다. 대표적인 XAI package의 경우 SHAP 있다. SHAP의 일부 버전은 tensorflow 일부 버전과 호환가능하다 [2].
즉 최신의 tensorflow가 항상 모든 package 버전을 호환하지는 못하므로, 일부 필요할 경우 pip 명령어를 이용하여 버전을 맞춰야 한다. 또한 서로 협업하는 동료와 서로 다른 Pandas 버전을 가지고 있다면, 간혹 안되는 경우도 있다.
[ pip list 명령어의 예 ]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | C:\Users\starl>pip list Package Version ---------------------------- --------- absl-py 1.4.0 anyio 3.6.2 argon2-cffi 21.3.0 argon2-cffi-bindings 21.2.0 arrow 1.2.3 (중략) keras 2.10.0 Keras-Preprocessing 1.1.2 keras-tqdm 2.0.1 kiwisolver 1.4.4 lark 1.1.7 libclang 15.0.6.1 Markdown 3.4.1 MarkupSafe 2.1.2 matplotlib 3.6.3 matplotlib-inline 0.1.6 numpy 1.24.1 oauthlib 3.2.2 opt-einsum 3.3.0 packaging 23.0 pandas 1.5.2 soupsieve 2.4 stack-data 0.6.2 tenacity 8.2.3 tensorboard 2.10.1 tensorboard-data-server 0.6.1 tensorboard-plugin-wit 1.8.1 tensorflow 2.10.1 wrapt 1.14.1 xgboost 1.7.4 | cs |


댓글
댓글 쓰기