Python AI 가이드 · 01
환경 설정
Python 설치부터 가상환경, IDE, 패키지 관리까지. AI 개발을 시작하기 위한 기반을 만듭니다.
1. Python 설치
AI 개발에는 Python 3.10 이상을 권장합니다. 3.12가 현재 안정 최신 버전입니다.
# macOS / Linux — pyenv 사용 권장
curl https://pyenv.run | bash pyenv install 3.12.3 pyenv global 3.12.3 python --version # Python 3.12.3
# Windows — winget 사용
winget install Python.Python.3.12 python --version
주의: Windows에서 설치 시
Add Python to PATH 체크박스를 반드시 활성화하세요.
2. 가상환경 — venv vs conda
가상환경은 프로젝트마다 독립된 패키지 공간을 만들어 충돌을 방지합니다. AI 프로젝트는 라이브러리 버전 의존성이 강하므로 반드시 사용해야 합니다.
venv (표준 내장)
Python 기본 제공. 순수 Python 프로젝트에 적합. 가볍고 빠릅니다.
conda (Anaconda)
과학/데이터 분야 특화. C 라이브러리 의존성이 있는 패키지(NumPy, PyTorch)에 유리합니다.
# venv 사용법
python -m venv .venv # 가상환경 생성 source .venv/bin/activate # 활성화 (macOS/Linux) .venv\Scripts\activate # 활성화 (Windows) pip install -r requirements.txt # 패키지 설치 deactivate # 비활성화
# conda 사용법
conda create -n ai-project python=3.12 conda activate ai-project conda install numpy pandas pytorch -c pytorch conda deactivate
3. 패키지 관리 — pip
pip install numpy pandas # 설치 pip install "anthropic>=0.30" # 버전 지정 pip install -r requirements.txt # 목록 파일로 일괄 설치 pip freeze > requirements.txt # 현재 환경 저장 pip list # 설치된 패키지 목록 pip uninstall numpy # 제거
프로젝트 루트에 requirements.txt를 두고 관리하는 것이 팀 협업과 배포 모두에 편합니다.
# AI 개발 기본 requirements.txt
numpy>=1.26 pandas>=2.2 matplotlib>=3.8 scikit-learn>=1.4 torch>=2.2 anthropic>=0.30 langchain>=0.2 python-dotenv>=1.0
4. IDE 설정
VS Code (권장)
가볍고 확장성이 좋습니다. 아래 확장을 설치합니다.
- • Python (ms-python.python)
- • Pylance — 타입 추론·자동완성
- • Jupyter — 노트북 지원
- • Ruff — 빠른 린터
PyCharm
Python 전용 IDE. 가상환경 통합과 디버거가 강력합니다.
- • Community Edition 무료
- • 가상환경 자동 감지
- • 내장 Jupyter 노트북
- • 원격 서버 인터프리터 지원
# VS Code에서 가상환경 선택
Cmd/Ctrl + Shift + P → "Python: Select Interpreter" → .venv/bin/python 선택
5. 환경 변수 관리 — .env
API 키는 코드에 직접 쓰지 않고 .env 파일로 관리합니다.
# .env
ANTHROPIC_API_KEY=sk-ant-... OPENAI_API_KEY=sk-... DATABASE_URL=postgresql://...
# Python에서 불러오기
from dotenv import load_dotenv
import os
load_dotenv()
api_key = os.getenv("ANTHROPIC_API_KEY") .env는 반드시 .gitignore에 추가하세요.
echo ".env" >> .gitignore