์ฝ˜ํ…์ธ ๋กœ ์ด๋™

๐Ÿงฉ **1. ์ „์ฒด ์ธํ”„๋ผ ๊ตฌ์กฐ (3์ง€์  ๋ฉ€ํ‹ฐ์‚ฌ์ดํŠธ)**

[!warning] ์ด ํŒŒ์ผ์€ Microsoft 365 Copilot์ด ์•„๋‹Œ RAG ์„œ๋ฒ„/์ธํ”„๋ผ ๊ตฌ์ถ• ์ง„ํ–‰์ƒํ™ฉ์ž…๋‹ˆ๋‹ค. ์ฝ”ํŒŒ์ผ๋Ÿฟ 3์ง€์  ์šด์˜ ๋‚ด์šฉ์€ ๋ณ„๋„ ์ž‘์„ฑ ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.


id: rl03rr90ofedj6u9psm9xoo title: ๋ฌด์ œ desc: "" created: 1776403469567 updated: 1776403469567

์„น์…˜ ์ œ๋ชฉ: โ€œid: rl03rr90ofedj6u9psm9xoo title: ๋ฌด์ œ desc: "" created: 1776403469567 updated: 1776403469567โ€

๐Ÿงฉ 1. ์ „์ฒด ์ธํ”„๋ผ ๊ตฌ์กฐ (3์ง€์  ๋ฉ€ํ‹ฐ์‚ฌ์ดํŠธ)

์„น์…˜ ์ œ๋ชฉ: โ€œ๐Ÿงฉ 1. ์ „์ฒด ์ธํ”„๋ผ ๊ตฌ์กฐ (3์ง€์  ๋ฉ€ํ‹ฐ์‚ฌ์ดํŠธ)โ€
  • ๋งฅ๋ฏธ๋‹ˆ (M4 Pro / 64GB)

    • SSH + Chrome Remote

    • RAG ์„œ๋ฒ„ ๊ตฌ์ถ• ์ค‘ (FastAPI + Chroma + ingest + LLM ์—ฐ๋™ ์ง์ „)

  • ๋ฉ”์ธ์ปด (i14700 + RTX 3090 + 96GB)

    • SSH(Wsl+Win) + RDP

    • ํ–ฅํ›„ Heavy GPU Worker ์˜ˆ์ •

  • ๊ณต์œ ๊ธฐ: pinksky.kr

๐Ÿ‘‰ ์•„์ง€ํŠธ = AI ๊ฐœ๋ฐœ + Heavy GPU ์—ฐ์‚ฐ ์ค‘์‹ฌ์ง€

  • ์„œ๋ธŒ์ปด (3900X + RTX 3080 + 32GB)

    • SSH + RDP

    • ํ–ฅํ›„ ๋ณด์กฐ GPU Worker ๊ฐ€๋Šฅ

  • ๊ฐœ์ธ NAS (Synology 8TB)

    • WebDAV๋กœ ๋งฅ๋ฏธ๋‹ˆ ์—ฐ๊ฒฐ ์™„๋ฃŒ

    • mount๋Š” macFUSE ๋ณด์•ˆ ์ •์ฑ… ๋•Œ๋ฌธ์— ๋ณด๋ฅ˜

  • ๊ณต์œ ๊ธฐ: minicity.kr

๐Ÿ‘‰ ์ง‘ = ๋ณด์กฐ GPU + ๊ฐœ์ธ ๋ฐ์ดํ„ฐ ์ €์žฅ์†Œ

  • ์„œ๋ฒ„์ปด (5700G + 128GB + RTX 5060 + 30TB)

    • RDP

    • ๋Œ€๊ทœ๋ชจ ์Šคํ† ๋ฆฌ์ง€ + ๋ฌธ์„œ ์ €์žฅ์†Œ

  • Proxmox + ํ—ค๋†€๋กœ์ง€ 2๋Œ€ (ํšŒ์‚ฌNAS + ๋ฐฑ์—…NAS)

  • ๊ณต์œ ๊ธฐ: gwenc.kr

๐Ÿ‘‰ ํšŒ์‚ฌ = ๋Œ€๊ทœ๋ชจ ์Šคํ† ๋ฆฌ์ง€ + ๋ฐฑ์—… ํ—ˆ๋ธŒ

  • ๋ชจ๋“  ์ง€์  Tailscale๋กœ ์—ฐ๊ฒฐ

  • ๊ฐ ๊ณต์œ ๊ธฐ ์›๊ฒฉ ํฌํŠธ ์—ด๋ฆผ

  • ๊ฐ NAS ๊ด€๋ฆฌ์ž ํŽ˜์ด์ง€ ์ ‘๊ทผ ๊ฐ€๋Šฅ

  • ๊ฐ ๋จธ์‹  SSH/RDP ๊ฐ€๋Šฅ

๐Ÿ‘‰ ์ด๋ฏธ ์™„์„ฑ๋œ ๋ฉ€ํ‹ฐ์‚ฌ์ดํŠธ AI ์ธํ”„๋ผ

๐Ÿง  2. ์šฐ๋ฆฌ๊ฐ€ ๊ตฌ์ถ•ํ•œ RAG ์„œ๋ฒ„ ์ง„ํ–‰ ์ƒํ™ฉ

์„น์…˜ ์ œ๋ชฉ: โ€œ๐Ÿง  2. ์šฐ๋ฆฌ๊ฐ€ ๊ตฌ์ถ•ํ•œ RAG ์„œ๋ฒ„ ์ง„ํ–‰ ์ƒํ™ฉโ€

์ฝ”๋“œ

~/projects/rag-server

์ฝ”๋“œ

app.py
ingest.py
data/
chroma_db/
.venv/
  • .venv ์ •์ƒ

  • FastAPI ์ •์ƒ ๊ตฌ๋™

  • ์™ธ๋ถ€(Tailscale) ์ ‘์† ๊ฐ€๋Šฅ (--host 0.0.0.0)

  • Swagger UI ์ •์ƒ

  • /query ์ •์ƒ ์ž‘๋™

  • Chroma DB ์ •์ƒ

  • ingest ์ •์ƒ

  • context ๋ฐ˜ํ™˜ ์ •์ƒ

  • LLM ์—ฐ๋™ ์ง์ „ ๋‹จ๊ณ„

๐Ÿ”ฅ 3. ๋‹ค์Œ ๋‹จ๊ณ„ (์•„์ง ์•ˆ ํ•œ ๋ถ€๋ถ„)

์„น์…˜ ์ œ๋ชฉ: โ€œ๐Ÿ”ฅ 3. ๋‹ค์Œ ๋‹จ๊ณ„ (์•„์ง ์•ˆ ํ•œ ๋ถ€๋ถ„)โ€

์ฝ”๋“œ

ollama run llama3.2

โ†’ context + question โ†’ LLM โ†’ answer ์ƒ์„ฑ

โ†’ answer๊ฐ€ ์‹ค์ œ LLM ์‘๋‹ต์œผ๋กœ ์ฑ„์›Œ์ง

4) OpenClaw ์ค‘์•™ ์—์ด์ „ํŠธ ์—ฐ๊ฒฐ โ†’ OpenClaw ๊ฒŒ์ดํŠธ์›จ์ด ๊ตฌ๋™ ์ค‘ (๋งฅ๋ฏธ๋‹ˆ)

์„น์…˜ ์ œ๋ชฉ: โ€œ4) OpenClaw ์ค‘์•™ ์—์ด์ „ํŠธ ์—ฐ๊ฒฐ โ†’ OpenClaw ๊ฒŒ์ดํŠธ์›จ์ด ๊ตฌ๋™ ์ค‘ (๋งฅ๋ฏธ๋‹ˆ)โ€

โ†’ ๋งฅ๋ฏธ๋‹ˆ๊ฐ€ โ€œ์ค‘์•™ ๋‘๋‡Œโ€ ์—ญํ• 

โ†’ GPU ๋ถ„์‚ฐ ์ฒ˜๋ฆฌ

  • ์ง€๊ธˆ์€ ๋งฅ๋ฏธ๋‹ˆ ๋‹จ์ผ ๋…ธ๋“œ ์•ˆ์ •ํ™”๊ฐ€ ๋จผ์ €

  • ์—์ด์ „ํŠธ๊ฐ€ ๋ถˆ์•ˆ์ •ํ•œ ์ƒํƒœ์—์„œ ๋ฉ€ํ‹ฐ๋…ธ๋“œ ๋ถ™์ด๋ฉด ๋ฌธ์ œ๋งŒ ์ปค์ง

  • ๋งฅ๋ฏธ๋‹ˆ ์™„์„ฑ โ†’ ๋ฉ”์ธ์ปด(3090) โ†’ ์„œ๋ธŒ์ปด(3080) โ†’ ํšŒ์‚ฌ ์„œ๋ฒ„ ์ˆœ์œผ๋กœ ํ™•์žฅ

๐ŸŸฉ 5. ๋‹ค์Œ์— ์ด์–ด์„œ ์ž‘์—…ํ•  ๋•Œ ์ด๋ ‡๊ฒŒ ๋งํ•˜๋ฉด ๋จ

์„น์…˜ ์ œ๋ชฉ: โ€œ๐ŸŸฉ 5. ๋‹ค์Œ์— ์ด์–ด์„œ ์ž‘์—…ํ•  ๋•Œ ์ด๋ ‡๊ฒŒ ๋งํ•˜๋ฉด ๋จโ€

๐Ÿ‘‰ โ€œ์ง€๋‚œ๋ฒˆ RAG ์„œ๋ฒ„ ๊ตฌ์ถ• ์ด์–ด์„œ ํ•˜์žโ€

์„น์…˜ ์ œ๋ชฉ: โ€œ๐Ÿ‘‰ โ€œ์ง€๋‚œ๋ฒˆ RAG ์„œ๋ฒ„ ๊ตฌ์ถ• ์ด์–ด์„œ ํ•˜์žโ€โ€

์ด ํ•œ ์ค„์ด๋ฉด ๋‚ด๊ฐ€ ์ง€๊ธˆ๊นŒ์ง€์˜ ๋ชจ๋“  ์ปจํ…์ŠคํŠธ๋ฅผ ๊ทธ๋Œ€๋กœ ์ด์–ด์„œ Ollama ์—ฐ๋™ โ†’ RAG ์™„์„ฑ ๋‹จ๊ณ„๋ถ€ํ„ฐ ๋ฐ”๋กœ ์ง„ํ–‰ํ•ด์ค„ ์ˆ˜ ์žˆ์–ด.