diff --git a/stock-lab/OLLAMA_SETUP.md b/stock-lab/OLLAMA_SETUP.md index e49b31a..acffb03 100644 --- a/stock-lab/OLLAMA_SETUP.md +++ b/stock-lab/OLLAMA_SETUP.md @@ -10,9 +10,9 @@ NAS(Docker)에 있는 `stock-lab` 서비스가 고성능 Windows PC의 Ollama를 1. [Ollama 공식 홈페이지](https://ollama.com/)에서 Windows용 Ollama를 다운로드하여 설치합니다. 2. 명령 프롬프트(CMD)나 PowerShell을 열고 모델을 다운로드합니다. ```powershell - ollama pull llama3 - # 또는 가벼운 모델 - ollama pull gemma:2b + ollama pull llama3.1 + # 또는 gemma2 (9B) + ollama pull gemma2 ``` ### 1-2. 외부 접속 허용 설정 (중요 ⭐️) @@ -39,6 +39,29 @@ Windows Defender 방화벽이 외부 접속을 막을 수 있습니다. CMD에서 `ipconfig`를 입력하여 Windows PC의 IP 주소를 확인합니다. (예: `192.168.0.5`) +### 1-5. Windows AI 서버 실행 (파이썬 중계 서버) ⭐️ +NAS가 Windows의 Ollama를 직접 호출할 수도 있지만, 더 복잡한 로직(뉴스+잔고 결합 분석 등)을 수행하기 위해 작성한 `windows_ai_server.py`를 실행해야 합니다. + +1. **Python 설치**: Windows에 Python이 설치되어 있어야 합니다. (없다면 [python.org](https://www.python.org/)에서 설치) +2. **프로젝트 폴더 준비**: + * 바탕화면 등에 적당한 폴더(예: `stock-ai`)를 만들고, 앞서 작성한 `windows_ai_server.py` 파일을 넣습니다. +3. **라이브러리 설치**: + * 해당 폴더에서 Shift+우클릭 -> "PowerShell 창 열기" + * 다음 명령어로 필요한 패키지를 설치합니다. + ```powershell + pip install fastapi uvicorn requests pydantic + ``` +4. **서버 실행**: + * 같은 PowerShell 창에서 서버를 실행합니다. + ```powershell + # NAS의 주소를 환경 변수로 설정 (본인의 NAS IP로 수정하세요) + $env:NAS_API_URL="http://192.168.0.2:18500" + + # 서버 실행 (0.0.0.0은 모든 IP 접속 허용을 의미) + python -m uvicorn windows_ai_server:app --host 0.0.0.0 --port 8000 --reload + ``` + * **성공 시**: `Application startup complete.` 메시지가 뜨며 대기 상태가 됩니다. 창을 닫지 마세요. + --- ## 2. NAS 설정 (Client) @@ -52,9 +75,11 @@ Synology NAS의 `web-page-backend` 프로젝트에서 설정합니다. # .env 파일 # ... 기존 설정들 ... -# 윈도우 PC의 IP로 변경하세요 (http:// 포함, 포트 11434 포함) -OLLAMA_URL=http://192.168.0.5:11434 -OLLAMA_MODEL=llama3 +# 윈도우 PC의 IP로 변경하세요 (http:// 포함, 포트 8000 포함) +# 주의: Ollama(11434)가 아니라, 방금 띄운 Python 서버(8000)를 바라보게 해도 되고, +# 단순 Ollama 호출만 필요하다면 11434로 해도 됩니다. +# 여기서는 AI 서버(8000)를 통해 분석한다고 가정합니다. +WINDOWS_AI_SERVER_URL=http://192.168.0.5:8000 ``` ### 2-2. 컨테이너 재배포 @@ -71,5 +96,5 @@ docker-compose up -d --build stock-lab 브라우저나 API 도구를 사용하여 NAS의 주소로 분석 요청을 보냅니다. -* **요청**: `GET http://[NAS_IP]:18500/api/stock/analyze` -* **결과**: Windows PC의 GPU가 작동하며(팬이 돌거나 GPU 로드율 상승) 몇 초 뒤에 분석된 텍스트가 반환됩니다. +* **요청**: `POST http://192.168.0.5:8000/analyze/portfolio` (Windows PC에서 직접 테스트) +* **결과**: Windows PC의 터미널에 로그가 찍히며 GPU가 작동하고, JSON 응답이 옵니다.