๐Ÿžํ”„๋กœ๊ทธ๋ž˜๋ฐ

RAG ๊ธฐ๋ฐ˜ AI ๊ฒ€์ƒ‰ ์‹œ์Šคํ…œ: ์‹คํ–‰ ํ๋ฆ„, ๊ตฌ์ถ• ๊ณผ์ •, ์•„ํ‚คํ…์ณ

TwoIceFish 2025. 3. 4. 22:15

๋‹ค์šด๋กœ๋“œ

 

์ด๋ฒˆ์— 'RAG ๊ธฐ๋ฐ˜ AI ๊ฒ€์ƒ‰ ์‹œ์Šคํ…œ' ํ”„๋กœ์ ํŠธ ์ง„ํ–‰๊ฐ„์— ๋งŒ๋“  ๋ฐฑ์„œ๋ฅผ ๊ณต์œ  ํ•ฉ๋‹ˆ๋‹ค.

 

 

๐Ÿ“Œ RAG ์‹œ์Šคํ…œ์˜ ์‹คํ–‰ ํ๋ฆ„ (๊ฒ€์ƒ‰ & ์‘๋‹ต ํ”„๋กœ์„ธ์Šค)

 

๐Ÿ’ก ์‹ค์ œ ๊ฒ€์ƒ‰์ด ์–ด๋–ป๊ฒŒ ์ง„ํ–‰๋˜๋Š”์ง€ ๋‹จ๊ณ„๋ณ„ ์„ค๋ช…

1๏ธโƒฃ ์‚ฌ์šฉ์ž๊ฐ€ ์งˆ๋ฌธ ์ž…๋ ฅ → LLM์ด ๋‹ต๋ณ€ ๊ฐ€๋Šฅ ์—ฌ๋ถ€ ํŒ๋‹จ
LLM์ด ๊ธฐ์กด ์ง€์‹๋งŒ์œผ๋กœ ๋‹ต๋ณ€ ๊ฐ€๋Šฅํ•˜๋ฉด ๋ฐ”๋กœ ์‘๋‹ต
ํ•„์š”ํ•˜๋ฉด ์™ธ๋ถ€ ๊ฒ€์ƒ‰(๋ฒกํ„ฐDB + SERP API) ์š”์ฒญ

2๏ธโƒฃ ๋ฒกํ„ฐDB์—์„œ ์œ ์‚ฌํ•œ ๋ฌธ์„œ ๊ฒ€์ƒ‰

๋ฒกํ„ฐDB์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ ์ค‘ ๊ฐ€์žฅ ์œ ์‚ฌํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒ€์ƒ‰

3๏ธโƒฃ ๋ฒกํ„ฐDB์— ์—†์œผ๋ฉด SERP API๋กœ ์‹ค์‹œ๊ฐ„ ๊ฒ€์ƒ‰
๊ฒ€์ƒ‰๋œ ์›น์‚ฌ์ดํŠธ์—์„œ ๊ด€๋ จ ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ด
ํฌ๋กค๋งํ•˜์—ฌ ํ…์ŠคํŠธ๋ฅผ ์ถ”์ถœ

4๏ธโƒฃ ๊ฒ€์ƒ‰๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฒกํ„ฐDB์— ์ €์žฅ
๋ฒกํ„ฐDB์— ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ๋‹ค์Œ๋ฒˆ์— ๋” ๋น ๋ฅธ ๊ฒ€์ƒ‰ ๊ฐ€๋Šฅ

5๏ธโƒฃ LLM์—๊ฒŒ ๊ฒ€์ƒ‰๋œ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ → ์ตœ์ข… ๋‹ต๋ณ€ ์ƒ์„ฑ
LLM์ด ๊ฒ€์ƒ‰๋œ ์ •๋ณด์™€ ๊ธฐ์กด ์ง€์‹์„ ๊ฒฐํ•ฉํ•ด์„œ ๋‹ต๋ณ€ ์ƒ์„ฑ

 

๐Ÿš€ RAG ์‹œ์Šคํ…œ ๊ตฌ์ถ• ๊ณผ์ • (๊ตฌ์„ฑ ์š”์†Œ ์ •๋ฆฌ)

๐Ÿ’ก RAG ์‹œ์Šคํ…œ์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ์š”์†Œ๋“ค

1๏ธโƒฃ LLM ์„ ํƒ
OpenAI GPT-4 (๊ฐ€์žฅ ๊ฐ•๋ ฅํ•œ ๋ฒ”์šฉ LLM)
Claude 2 (Anthropic์—์„œ ๊ฐœ๋ฐœํ•œ ๊ฐ•๋ ฅํ•œ ๋ชจ๋ธ)
LLaMA 2 / Mistral (์˜คํ”ˆ์†Œ์Šค LLM, ๋น„์šฉ ์ ˆ๊ฐ ๊ฐ€๋Šฅ)

2๏ธโƒฃ ๋ฒกํ„ฐDB + ์ž„๋ฒ ๋”ฉ ๋ชจ๋ธ ์—ฐ๊ฒฐ
๋ฒกํ„ฐDB ์„ ํƒ: FAISS, Pinecone, Weaviate, ChromaDB ์ค‘ ํ•˜๋‚˜ ์‚ฌ์šฉ
์ž„๋ฒ ๋”ฉ ๋ชจ๋ธ ์‚ฌ์šฉ: text-embedding-ada-002 ๊ฐ™์€ ๋ชจ๋ธ๋กœ ๋ฌธ์„œ๋ฅผ ๋ฒกํ„ฐ๋กœ ๋ณ€ํ™˜ ํ›„ ์ €์žฅ

3๏ธโƒฃ ์™ธ๋ถ€ ๊ฒ€์ƒ‰ API ํ™œ์šฉ
Google Search API / SerpApi ํ™œ์šฉํ•ด์„œ ์ตœ์‹  ์›น ๊ฒ€์ƒ‰ ๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ค๊ธฐ
ํฌ๋กค๋Ÿฌ(BeautifulSoup, Scrapy)๋กœ ๊ฒ€์ƒ‰๋œ ์›นํŽ˜์ด์ง€ ํ…์ŠคํŠธ ์ถ”์ถœ

4๏ธโƒฃ ๊ฒ€์ƒ‰๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฒกํ„ฐDB์— ์ €์žฅ & LLM์— ์ „๋‹ฌํ•˜์—ฌ ๋‹ต๋ณ€ ์ƒ์„ฑ
๋ฒกํ„ฐDB์— ๊ฒ€์ƒ‰๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅ (์ถ”ํ›„ ๋น ๋ฅธ ๊ฒ€์ƒ‰ ๊ฐ€๋Šฅ)
LLM์ด ๊ฒ€์ƒ‰๋œ ๋ฐ์ดํ„ฐ(๋ฒกํ„ฐDB ๊ฒฐ๊ณผ + ์™ธ๋ถ€ ๊ฒ€์ƒ‰ ๋ฐ์ดํ„ฐ)๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์ตœ์ข… ๋‹ต๋ณ€ ์ƒ์„ฑ

 


โœ… LLM ๊ธฐ๋ฐ˜ RAG ์‹œ์Šคํ…œ ์•„ํ‚คํ…์ฒ˜

1๏ธโƒฃ LLM
gpt-4o-mini ๋“ฑ


2๏ธโƒฃ ๋ฒกํ„ฐ DB
FAISS, Pinecone, Weaviate, ChromaDB ๋“ฑ


3๏ธโƒฃ ์ž„๋ฒ ๋”ฉ ๋ชจ๋ธ
text-embedding-3-small
text-embedding-3-large
text-embedding-ada-002


4๏ธโƒฃ SERP API
Google Search API
SERP API

5๏ธโƒฃ ์›น ์Šคํฌ๋ž˜ํ•‘
Python (BeautifulSoup, Scrapy)


6๏ธโƒฃ ์ปดํ“จํŒ… ์ž์› (AWS)
AWS EC2 ์ธ์Šคํ„ด์Šค ๋˜๋Š” Lambda ํ™œ์šฉ
๋ฒกํ„ฐDB/LLM API ์—ฐ๋™ ๋ฐ ๊ฒ€์ƒ‰ ์ˆ˜ํ–‰
์„œ๋ฒ„ ๋น„์šฉ ์ตœ์ ํ™”๋ฅผ ์œ„ํ•ด ์ŠคํŒŸ ์ธ์Šคํ„ด์Šค ๊ณ ๋ ค ๊ฐ€๋Šฅ


7๏ธโƒฃ ์›น ์ธํ„ฐํŽ˜์ด์Šค (Next.js ๊ธฐ๋ฐ˜)
Next.js๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ
๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ๋ฐ AI ์ƒ์„ฑ ์‘๋‹ต์„ UI์—์„œ ์‹œ๊ฐ์  ์ œ๊ณต
API์™€ ์—ฐ๋™ํ•˜์—ฌ LLM ๊ธฐ๋ฐ˜ RAG ์‹œ์Šคํ…œ์„ ์‚ฌ์šฉ์ž๊ฐ€ ์‰ฝ๊ฒŒ ํ™œ์šฉ ๊ฐ€๋Šฅ

(1) ์‚ฌ์šฉ์ž๊ฐ€ ์›น์—์„œ ๊ฒ€์ƒ‰ ์š”์ฒญ  →  (2) AI Agent ํ˜ธ์ถœ
(3) AI Agent๊ฐ€ ๋ฒกํ„ฐDB์—์„œ ๊ฒ€์ƒ‰  →  (4) ํ•„์š”ํ•˜๋ฉด SERP API ํ˜ธ์ถœ
(5) ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๋ฅผ RDB์— ์ €์žฅ  →  (6) Next.js๊ฐ€ RDB์—์„œ ๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ด
(7) ์‚ฌ์šฉ์ž์—๊ฒŒ ๊ฒฐ๊ณผ ํ‘œ์‹œ