마루옵스서버 · 네트워크 · AI 기술 노트

소개문의

[Local LLM 구축하기 08] Python 설치와 프로젝트별 가상환경 만들기

노트북의 키보드와 트랙패드

참고 사진 · 노트북의 키보드와 트랙패드 · 사진: Scott Webb scottwebb / 원본 / CC0 · 목록용 크기 조정

Local LLM 구축하기 · 08/30 · 개발 환경

전체 연재와 학습 순서 · 실습 코드 ZIP

패키지는 설치됐다고 나오는데 import가 실패한다면, 실행 중인 Python부터 확인해 보세요. 패키지를 넣은 Python과 코드를 실행한 Python이 서로 다를 수 있습니다. 프로젝트 폴더 안에 가상환경을 만들고 그 경로를 직접 확인해 보겠습니다.

Windows PowerShell에서 실습 폴더를 준비합니다. 프로젝트 전용 Python을 만든 뒤에는 패키지 설치와 코드 실행에 같은 경로를 사용합니다.

Python 런타임 설치

python.org의 Windows 안내에 따라 Python Install Manager를 설치합니다. Microsoft Store의 공식 배포도 사용할 수 있습니다. 연재의 API 예제는 표준 라이브러리를 중심으로 작성했고, 뒤에서 사용할 ML 라이브러리와의 호환성을 고려해 런타임은 Python 3.12로 맞춥니다.

pymanager install 3.12
py -V:3.12 --version
Get-Command python, py, pymanager -ErrorAction SilentlyContinue

설치 예제에는 기존 py 런처와 구분하기 위해 pymanager를 사용했습니다. 명령을 찾지 못하면 새 터미널을 열고 공식 문서의 충돌 안내를 확인합니다. 이전 Python을 삭제하기 전에 다른 프로젝트에서 사용 중인지도 살펴봅니다.

프로젝트별 .venv 만들기

New-Item -ItemType Directory -Force "$env:USERPROFILE\local-llm-lab"
Set-Location "$env:USERPROFILE\local-llm-lab"
py -V:3.12 -m venv .venv
.\.venv\Scripts\python.exe -m pip --version
.\.venv\Scripts\python.exe -c "import sys; print(sys.executable)"

마지막 출력이 현재 폴더의 .venv 아래 python.exe를 가리키는지 확인합니다. 가상환경은 프로젝트의 패키지를 별도로 관리하는 디렉터리예요. 기본적으로 시스템 Python의 패키지를 물려받지 않습니다. 다른 PC에서는 폴더를 복사하기보다 의존성 목록으로 다시 만드는 편이 낫습니다.

가상환경 Python 직접 실행

Activate.ps1이 실행 정책에 막혀도 가상환경의 Python은 실행할 수 있습니다. 아래처럼 해당 실행 파일의 상대 경로를 직접 사용하면 됩니다. 이 연재에서는 그 방식으로 진행하므로 PowerShell 정책을 바꾸지 않아도 됩니다.

.\.venv\Scripts\python.exe -m pip install --upgrade pip
.\.venv\Scripts\python.exe -m pip list
.\.venv\Scripts\python.exe -c "import urllib.request; print(urllib.request.urlopen('http://127.0.0.1:11434/api/version', timeout=10).read().decode())"

패키지를 추가할 때도 python -m pip를 사용하면 어느 Python에 설치하는지 분명해집니다. 아직은 requests나 Ollama 전용 SDK를 설치하지 않습니다. 표준 라이브러리로 요청과 응답부터 살펴보면 뒤에서 문제가 생겼을 때 확인할 범위가 줄어들어요.

의존성과 환경 기록

.\.venv\Scripts\python.exe -m pip freeze | Out-File -Encoding utf8 requirements.txt

소스와 requirements.txt를 보관하고 .venv와 API 키가 담긴 파일은 저장소에서 제외합니다. Python 버전과 Windows 종류도 적어 두세요. freeze는 패키지 버전을 남기는 도구라 운영체제와 드라이버까지 복제하지는 않습니다.

사용자 폴더에서 진행하는 실습은 대개 관리자 권한이 필요하지 않습니다. 설치가 막힌다고 모든 작업을 관리자 터미널로 옮기지는 않습니다. 다음 Node 설치에서도 실행 파일의 경로를 먼저 확인하는 습관을 이어 갑니다.

참고 자료

문서·모델 태그 확인 기준: 2026년 10월 18일. 기본 실습 환경: Windows 11 x64.


댓글

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

닉네임·이메일·댓글 내용·IP 주소·브라우저 정보는 댓글 게시 및 관리에 사용됩니다. 이메일과 접속 정보는 공개 댓글에 표시하지 않습니다. 개인정보 요청은 운영자 이메일로 보내 주세요. 개인정보처리방침