SOY NV AI
๋ฉํ๋ฐ์ดํฐ ์์ฑ ๊ธฐ๋ฅ ๊ฐ์ : ๊ธฐ์กด ๋ฉํ๋ฐ์ดํฐ ๋ณํฉ ๋ฐ ํ์ฐจ ์ ๋ณด ์ ์ง
d234e06
| # ์น ํธ์คํ ์๋น์ค ์ถ์ฒ ๊ฐ์ด๋ | |
| ## ํ๋ก์ ํธ ํน์ฑ ๋ถ์ | |
| ํ์ฌ ํ๋ก์ ํธ๋ ๋ค์๊ณผ ๊ฐ์ ํน์ง์ ๊ฐ์ง๊ณ ์์ต๋๋ค: | |
| - Flask ์น ์ ํ๋ฆฌ์ผ์ด์ | |
| - SQLite ๋ฐ์ดํฐ๋ฒ ์ด์ค | |
| - Ollama (๋ก์ปฌ AI ์๋ฒ) ์ฌ์ฉ - ํฌํธ 11434 | |
| - ChromaDB (๋ฒกํฐ DB) - ๋ก์ปฌ ํ์ผ ์์คํ | |
| - ํ์ผ ์ ๋ก๋ ๊ธฐ๋ฅ (์ต๋ 100MB) | |
| - ML ๋ผ์ด๋ธ๋ฌ๋ฆฌ (sentence-transformers, numpy, chromadb) | |
| - Gemini API๋ ์ฌ์ฉ ๊ฐ๋ฅ | |
| ## ํธ์คํ ์ต์ ๋น๊ต | |
| ### 1. VPS (Virtual Private Server) - ์ถ์ฒ โญโญโญโญโญ | |
| **์ ์ถ์ฒํ๋๊ฐ:** | |
| - Ollama์ ๊ฐ์ ๋ก์ปฌ AI ์๋ฒ๋ฅผ ์คํํ ์ ์์ | |
| - ์ ์ฒด ์์คํ ์ ๊ทผ ๊ถํ | |
| - ํ์ผ ์์คํ ์ ๊ทผ (๋ฒกํฐ DB, ์ ๋ก๋ ํ์ผ ๋ฑ) | |
| - ์ปค์คํ ํฌํธ ์ค์ ๊ฐ๋ฅ | |
| **์ถ์ฒ ์๋น์ค:** | |
| #### A. AWS Lightsail | |
| - **๊ฐ๊ฒฉ**: $5/์ (512MB RAM) ~ $40/์ (8GB RAM) | |
| - **์ฅ์ **: | |
| - AWS ์ํ๊ณ์ ํตํฉ | |
| - ์๋ ๋ฐฑ์ ๊ธฐ๋ฅ | |
| - ์ฌ์ด ์ค์ผ์ผ๋ง | |
| - **๋จ์ **: ์ด๊ธฐ ์ค์ ์ด ์ฝ๊ฐ ๋ณต์ก | |
| - **์ถ์ฒ ์ฌ์**: 4GB RAM ์ด์ (Ollama + ML ๋ชจ๋ธ์ ์ํด) | |
| #### B. DigitalOcean Droplets | |
| - **๊ฐ๊ฒฉ**: $6/์ (1GB RAM) ~ $48/์ (8GB RAM) | |
| - **์ฅ์ **: | |
| - ๋งค์ฐ ์ง๊ด์ ์ธ UI | |
| - ์ฐ์ํ ๋ฌธ์ํ | |
| - ์์ธก ๊ฐ๋ฅํ ๊ฐ๊ฒฉ | |
| - **๋จ์ **: AWS๋ณด๋ค ๊ธฐ๋ฅ์ด ์ ์ | |
| - **์ถ์ฒ ์ฌ์**: 8GB RAM ์ด์ | |
| - **๋งํฌ**: https://www.digitalocean.com/ | |
| #### C. Vultr | |
| - **๊ฐ๊ฒฉ**: $6/์ (1GB RAM) ~ $40/์ (8GB RAM) | |
| - **์ฅ์ **: | |
| - ๋น ๋ฅธ ์๋ฒ ์์ฑ | |
| - ์ ์ธ๊ณ ๋ฐ์ดํฐ์ผํฐ | |
| - GPU ์๋ฒ ์ต์ (AI ์์ ์ ์ ์ฉ) | |
| - **๋จ์ **: ์ผ๋ถ ์ง์ญ์ ์๋๊ฐ ๋๋ฆด ์ ์์ | |
| - **๋งํฌ**: https://www.vultr.com/ | |
| #### D. Linode (Akamai) | |
| - **๊ฐ๊ฒฉ**: $5/์ (1GB RAM) ~ $48/์ (8GB RAM) | |
| - **์ฅ์ **: | |
| - ์ฐ์ํ ์ฑ๋ฅ | |
| - 24/7 ๊ณ ๊ฐ ์ง์ | |
| - ๋ฐฑ์ ์๋น์ค ํฌํจ | |
| - **๋งํฌ**: https://www.linode.com/ | |
| ### 2. ํด๋ผ์ฐ๋ ํ๋ซํผ - ์ค๊ธ ์ถ์ฒ โญโญโญ | |
| #### A. Google Cloud Platform (GCP) Compute Engine | |
| - **๊ฐ๊ฒฉ**: ์ฌ์ฉํ ๋งํผ ์ง๋ถ (์์ $20-50/์) | |
| - **์ฅ์ **: | |
| - Gemini API์์ ํตํฉ ์ฉ์ด | |
| - ๊ฐ๋ ฅํ ๋จธ์ ๋ฌ๋ ์๋น์ค | |
| - ์ ์ฐํ ์ค์ | |
| - **๋จ์ **: ๊ฐ๊ฒฉ ์์ธก์ด ์ด๋ ค์, ์ค์ ๋ณต์ก | |
| - **์ถ์ฒ ์ด์ **: Gemini API๋ฅผ ์ฌ์ฉํ๊ณ ์์ด ํตํฉ์ด ์ฉ์ด | |
| #### B. AWS EC2 | |
| - **๊ฐ๊ฒฉ**: ์ฌ์ฉํ ๋งํผ ์ง๋ถ ๋๋ ์์ฝ ์ธ์คํด์ค | |
| - **์ฅ์ **: | |
| - ๊ฐ์ฅ ๋ง์ ๊ธฐ๋ฅ๊ณผ ์๋น์ค | |
| - ์ฐ์ํ ํ์ฅ์ฑ | |
| - **๋จ์ **: ๊ฐ๊ฒฉ ๊ตฌ์กฐ๊ฐ ๋ณต์ก, ์ด๊ธฐ ํ์ต ๊ณก์ ์ด ๋์ | |
| ### 3. Platform-as-a-Service (PaaS) - ์ ํ์ โญโญ | |
| **์ฃผ์์ฌํญ:** | |
| - Ollama๋ฅผ ์ง์ ์คํํ๊ธฐ ์ด๋ ค์ (์ปจํ ์ด๋ ์ ์ฝ) | |
| - ํ์ผ ์์คํ ์ ๊ทผ ์ ํ (๋ฒกํฐ DB ๋ฌธ์ ) | |
| - ์ผ๋ถ ์๋น์ค๋ ML ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ค์น ์ ํ | |
| #### A. Railway | |
| - **๊ฐ๊ฒฉ**: $5/์ + ์ฌ์ฉ๋ | |
| - **์ฅ์ **: ๋งค์ฐ ์ฌ์ด ๋ฐฐํฌ | |
| - **๋จ์ **: Ollama ์คํ ์ด๋ ค์, ์ ์ฅ ๊ณต๊ฐ ์ ํ | |
| #### B. Render | |
| - **๊ฐ๊ฒฉ**: ๋ฌด๋ฃ ํฐ์ด ์์, $7/์๋ถํฐ | |
| - **์ฅ์ **: ๋ฌด๋ฃ ์์ ๊ฐ๋ฅ | |
| - **๋จ์ **: ๋ฌด๋ฃ ํฐ์ด๋ ์ ์ฝ์ด ๋ง์, Ollama ์คํ ์ด๋ ค์ | |
| #### C. Heroku | |
| - **๊ฐ๊ฒฉ**: $7/์๋ถํฐ | |
| - **๋จ์ **: Ollama ์คํ ์ด๋ ค์, ๋ฒกํฐ DB ์ ์ฅ ๊ณต๊ฐ ์ ํ | |
| ## ์ต์ข ์ถ์ฒ ์์ | |
| ### 1์์: DigitalOcean Droplets (8GB RAM) | |
| **์ด์ :** | |
| - ์ค์ ์ด ๊ฐ๋จํ๊ณ ์ง๊ด์ | |
| - Ollama์ ๋ชจ๋ ์์กด์ฑ ์ค์น ๊ฐ๋ฅ | |
| - ์์ธก ๊ฐ๋ฅํ ๊ฐ๊ฒฉ | |
| - ์ฐ์ํ ์ฑ๋ฅ | |
| **์์ ๋น์ฉ**: $48/์ | |
| ### 2์์: Vultr (8GB RAM) | |
| **์ด์ :** | |
| - ๋น ๋ฅธ ์๋ฒ ์์ฑ | |
| - GPU ์ต์ (ํฅํ ํ์ฅ ๊ฐ๋ฅ) | |
| - ๊ฒฝ์๋ ฅ ์๋ ๊ฐ๊ฒฉ | |
| **์์ ๋น์ฉ**: $40/์ | |
| ### 3์์: AWS Lightsail (4GB RAM) | |
| **์ด์ :** | |
| - AWS ์ํ๊ณ์์ ํตํฉ | |
| - ์๋ ๋ฐฑ์ | |
| - ํ์ฅ์ฑ | |
| **์์ ๋น์ฉ**: $20/์ (์์), ํ์ฅ ์ ์ถ๊ฐ ๋น์ฉ | |
| ## ๋ฐฐํฌ ์ ๊ณ ๋ ค์ฌํญ | |
| ### ํ์ ๋ณ๊ฒฝ์ฌํญ: | |
| 1. **Ollama URL ๋ณ๊ฒฝ** | |
| ```python | |
| # ํ๋ก๋์ ํ๊ฒฝ์์๋ ๋ด๋ถ ๋คํธ์ํฌ๋ ๊ฐ์ ์๋ฒ์์ ์คํ | |
| OLLAMA_BASE_URL = 'http://localhost:11434' # ๋์ผ ์๋ฒ | |
| # ๋๋ | |
| OLLAMA_BASE_URL = 'http://ollama-server:11434' # ๋ณ๋ ์๋ฒ | |
| ``` | |
| 2. **๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฐฑ์ ** | |
| - SQLite๋ ์ฃผ๊ธฐ์ ๋ฐฑ์ ํ์ | |
| - PostgreSQL ๋๋ MySQL๋ก ๋ง์ด๊ทธ๋ ์ด์ ๊ณ ๋ ค (์ ํ์ฌํญ) | |
| 3. **ํ๊ฒฝ ๋ณ์ ์ค์ ** | |
| - `.env` ํ์ผ ๋๋ ํ๊ฒฝ ๋ณ์๋ก ์ค์ | |
| - SECRET_KEY, GEMINI_API_KEY ๋ฑ | |
| 4. **ํ์ผ ์ ๋ก๋ ๊ฒฝ๋ก** | |
| - ์๊ตฌ ์คํ ๋ฆฌ์ง ์ฌ์ฉ | |
| - ๋ฐฑ์ ์ ๋ต ์๋ฆฝ | |
| 5. **ํ๋ก์ ์๋ฒ ์ค์ ** | |
| - Nginx ๋๋ Apache๋ก ๋ฆฌ๋ฒ์ค ํ๋ก์ | |
| - HTTPS ์ค์ (Let's Encrypt ๋ฌด๋ฃ SSL) | |
| 6. **ํ๋ก์ธ์ค ๊ด๋ฆฌ** | |
| - systemd, supervisor, ๋๋ PM2 ์ฌ์ฉ | |
| - ์๋ฒ ์ฌ์์ ์ ์๋ ์คํ | |
| 7. **๋ก๊ทธ ๊ด๋ฆฌ** | |
| - ๋ก๊ทธ ํ์ผ ๋กํ ์ด์ | |
| - ์ธ๋ถ ๋ก๊ทธ ์๋น์ค ์ฐ๋ (์ ํ์ฌํญ) | |
| ## ๋น ๋ฅธ ์์ ๊ฐ์ด๋ (DigitalOcean ์์) | |
| ### 1. Droplet ์์ฑ | |
| - Ubuntu 22.04 LTS | |
| - 8GB RAM | |
| - 160GB SSD | |
| - ์ง์ญ: ์์ธ (Seoul) ๋๋ ๊ฐ๊น์ด ์ง์ญ | |
| ### 2. ์ด๊ธฐ ์ค์ | |
| ```bash | |
| # ์์คํ ์ ๋ฐ์ดํธ | |
| sudo apt update && sudo apt upgrade -y | |
| # ํ์ ํจํค์ง ์ค์น | |
| sudo apt install -y python3-pip python3-venv git nginx certbot python3-certbot-nginx | |
| # Ollama ์ค์น | |
| curl -fsSL https://ollama.com/install.sh | sh | |
| # ํ๋ก์ ํธ ํด๋ก | |
| git clone <your-repo-url> | |
| cd "SOY NV AI" | |
| # ๊ฐ์ํ๊ฒฝ ์ค์ | |
| python3 -m venv venv | |
| source venv/bin/activate | |
| pip install -r requirements.txt | |
| ``` | |
| ### 3. ํ๊ฒฝ ๋ณ์ ์ค์ | |
| ```bash | |
| # .env ํ์ผ ์์ฑ | |
| nano .env | |
| ``` | |
| ### 4. Nginx ์ค์ | |
| ```nginx | |
| server { | |
| listen 80; | |
| server_name your-domain.com; | |
| location / { | |
| proxy_pass http://127.0.0.1:5001; | |
| proxy_set_header Host $host; | |
| proxy_set_header X-Real-IP $remote_addr; | |
| } | |
| } | |
| ``` | |
| ### 5. systemd ์๋น์ค ์์ฑ | |
| ```bash | |
| # /etc/systemd/system/soy-nv-ai.service | |
| [Unit] | |
| Description=SOY NV AI Flask App | |
| After=network.target | |
| [Service] | |
| User=www-data | |
| WorkingDirectory=/path/to/SOY NV AI | |
| Environment="PATH=/path/to/SOY NV AI/venv/bin" | |
| ExecStart=/path/to/SOY NV AI/venv/bin/python run.py | |
| [Install] | |
| WantedBy=multi-user.target | |
| ``` | |
| ## ๋น์ฉ ๋น๊ตํ | |
| | ์๋น์ค | ์ต์ ์ฌ์ | ์ ๋น์ฉ | ์ถ์ฒ ์ฌ์ | ์ ๋น์ฉ | | |
| |--------|----------|---------|----------|---------| | |
| | DigitalOcean | 1GB RAM | $6 | 8GB RAM | $48 | | |
| | Vultr | 1GB RAM | $6 | 8GB RAM | $40 | | |
| | AWS Lightsail | 512MB RAM | $5 | 4GB RAM | $20 | | |
| | Linode | 1GB RAM | $5 | 8GB RAM | $48 | | |
| | GCP Compute Engine | - | ์ฌ์ฉ๋ ๊ธฐ๋ฐ | n1-standard-2 | ~$50 | | |
| ## ์ถ๊ฐ ๊ถ์ฅ์ฌํญ | |
| 1. **๋๋ฉ์ธ ๊ตฌ๋งค**: Namecheap, GoDaddy ๋ฑ์์ ๋๋ฉ์ธ ๊ตฌ๋งค | |
| 2. **SSL ์ธ์ฆ์**: Let's Encrypt ๋ฌด๋ฃ SSL ์ฌ์ฉ | |
| 3. **๋ชจ๋ํฐ๋ง**: Uptime Robot (๋ฌด๋ฃ) ๋๋ Pingdom | |
| 4. **๋ฐฑ์ **: ์๋ ๋ฐฑ์ ์คํฌ๋ฆฝํธ ์ค์ | |
| 5. **CDN**: Cloudflare (๋ฌด๋ฃ) ์ฌ์ฉ ๊ณ ๋ ค | |
| ## ๋ค์ ๋จ๊ณ | |
| 1. ํธ์คํ ์๋น์ค ์ ํ | |
| 2. ์๋ฒ ์์ฑ ๋ฐ ์ด๊ธฐ ์ค์ | |
| 3. ํ๋ก์ ํธ ๋ฐฐํฌ | |
| 4. ๋๋ฉ์ธ ์ฐ๊ฒฐ ๋ฐ SSL ์ค์ | |
| 5. ๋ชจ๋ํฐ๋ง ๋ฐ ๋ฐฑ์ ์ค์ | |
| ๊ฒฐ์ ํ์ ํธ์คํ ์๋น์ค๋ฅผ ์๋ ค์ฃผ์๋ฉด ์์ธํ ๋ฐฐํฌ ๊ฐ์ด๋๋ฅผ ์์ฑํด๋๋ฆฌ๊ฒ ์ต๋๋ค! | |