Python/LLM

[LLM] - LLM 사용 전 Python 환경 설정(Pyenv, Poetry)

ro-jun 2024. 11. 8. 22:44
728x90
반응형

LLM(대규모 언어 모델) 프로젝트를 시작하기 전에 Python 버전 관리와 환경 설정이 필요하다. 다양한 라이브러리와 패키지의 의존성 문제를 방지하려면 pyenvPoetry를 활용하는 게 좋다. 그래서 내가 pyenv랑 Poetry 설정 과정을 기록해 본다.

Pyenv 란?
  • 여러 Python 버전을 설치하고 관리할 수 있는 도구다.
  • 프로젝트마다 다른 Python 버전이 필요할 때 유용하다.
  • 한 시스템에서 다양한 버전을 쉽게 전환할 수 있다.
  • 프로젝트의 일관성을 유지할 수 있다.
Poety란?
  • Python 프로젝트의 의존성을 관리할 수 있는 도구다.
  • 가상환경 설정 기능을 제공한다.
  • 프로젝트별 패키지 관리와 의존성 문제를 해결할 수 있다.
  • 안정적인 개발 환경을 만드는 데 도움이 된다.
Pyenv로 Python 버전 관리하기 전 준비 단계
  1.  터미널 / 명령어 창 열기
    Window에서는 cmd, PowerShell
    macOS, Linux에는 Terminal을 사용
  2. Pyenv 설치
    ● windows 사용자는 다음 명령어를 통해 pyenv-win을 설치
    git clone https://github.com/pyenv-win/pyenv-win.git "$env:USERPROFILE\.pyenv"
  3. 환경 변수 설정
    ● PowerShell을 열고 다음 명령어를 실행하여 환경 변수를 추가.
    [System.Environment]::SetEnvironmentVariable('PYENV', $env:USERPROFILE + "\.pyenv\pyenv-win\", 'User')
    [System.Environment]::SetEnvironmentVariable('PYENV_ROOT', $env:USERPROFILE + "\.pyenv\pyenv-win\", 'User')
    [System.Environment]::SetEnvironmentVariable('PYENV_HOME', $env:USERPROFILE + "\.pyenv\pyenv-win\", 'User')

    ● PATH 환경 변수도 추가
    [System.Environment]::SetEnvironmentVariable('PATH', $env:USERPROFILE + "\.pyenv\pyenv-win\bin;" + $env:USERPROFILE + "\.pyenv\pyenv-win\shims;" + [System.Environment]::GetEnvironmentVariable('PATH', 'User'), 'User')

    ● 설정 후 명령어 창을 다시 연다
Pyenv로 Python 버전 관리하기
  1. Python 버전 설정
    pyenv install 3.11.9
    pyenv global 3.11.9
  2. Python 버전 확인
    ● 설정 후 Python 버전 확인하기
    python --version
    ● 올바른 버전이 출력되어야 한다
    ● 예상과 다른 버전이 출력이 된다면 다른 환경이 세팅 되어 있을 수 있다 ex) 아나콘다(Anaconda)
    ● 예상과 다른 버전이 출력이 된다면 다른 버전의 파이썬을 이미 다운로드해서 환경 변수에 먼저 연결된 걸 수도 있다.
Conda 환경이 켜져 있을 때 문제 해결하기
  1. Conda 환경 비활성화
    ● 아나콘다 환경이 켜져 있으면 (base) 혹은 설정한 (환경변수 이름) 표시가 보인다.
    ● 이를 비활성화하려면 다음 명령어를 사용한다.
    conda deactivate
  2. 다시 Python 버전 확인
    ● Conda 환경을 껏으면 다시 Python 버전을 확인해본다
    python --version
Pyenv 설정 후에도 버전 문제 해결하기
  • pyenv로 Python 3.11.9를 설정했는데도 3.11.7 버전이 계속 뜬다면, 과거에 설치된 Python이 환경 변수에서 우선 연결된 걸 수 있다.
  • 환경 변수를 확인하고 경로를 조정하거나 불필요한 버전을 삭제하면 된다.
Poetry를 통한 의존성 관리
  • Poetry는 프로젝트의 패키지 의존성을 관리하는 데 아주 유용하다.
  • 아나콘다 환경을 쓰지 않는 이유는 의존성 충돌이나 버전 차이로 인한 문제를 피하기 위해서다.
  1. Poetry 설치
    pip install --user poetry

    설치가 안 된다면 pip3 실행 파일이 남아 있을 수도 있다
    ● 
    이 경우 해당 파일을 삭제한다
    C:\Users\thdgh\AppData\Local\Programs\Python\Python311\Scripts\pip3.exe
  2. 프로젝트 클론 및 환경 설정
    ● 프로젝트를 클론하고 가상환경을 설정한다. (Youtube - teddynote)
    cd C:\Users\thdgh\Documents
    git clone https://github.com/teddylee777/langchain-kr.git
    cd langchain-kr
    poetry shell
  3.  패키지 업데이터
     모든 패키지를 최신 버전으로 업데이트 한다.
    poetry update
728x90
반응형

'Python > LLM' 카테고리의 다른 글

[LLM] - Pinecone을 활용한 벡터 검색과 유사도 비교  (2) 2024.11.09