LLM 검색 증강 생성(RAG), 벡터 데이터베이스(Vector Store) & AI 데이터 플랫폼 파이프라인 실습 랩
🔗 GitHub Topics:#ai-data-platform#llm#rag#chromadb#faiss#aws-bedrock
본 레포지거리는 최신 생성형 AI(Generative AI) 분야의 핵심 기술인 검색 증강 생성(RAG: Retrieval-Augmented Generation) 아키텍처를 엔터프라이즈 환경에서 구현하는 실습 랩입니다. 환각(Hallucination) 현상을 차단하고 자체 도메인 지식 베이스를 LLM과 안전하게 결합하는 파이프라인을 구축합니다.
| 구 분 | 기술 스택 / 라이브러리 | 주요 용도 |
|---|---|---|
| Language & Core | Python 3.11+, Asyncio | 고성능 비동기 AI 파이프라인 파이썬 환경 |
| Vector DB & Search | ChromaDB, FAISS, Cosine Similarity | 고차원 임베딩 벡터 저장 및 밀집 검색(Dense Retrieval) |
| LLM Provider | AWS Bedrock (Claude 3.5 Sonnet), OpenAI API | 초거대 언어 모델 파라미터 추론 서빙 |
| Embeddings | HuggingFace, OpenAI Text-Embedding-3 | 문맥 기반 다차원 수치 벡터 생성기 |
- 위치:
1_data_platform_client.py - 핵심: 비동기 데이터 파이프라인 클라이언트 및 대용량 비구성 문서 수집 파서.
- 위치:
2_vector_store_rag.py - 핵심: 텍스트 청킹(Chunking), 임베딩 변환, Vector Store 저장 및 코사인 유사도 기반 Context 추출.
- 위치:
3_aws_bedrock_llm.py - 핵심: AWS Bedrock 파이프라인 연동, System Prompt 튜닝 및 RAG Context 합성 최종 답안 서빙.
Q1. RAG(Retrieval-Augmented Generation) 파이프라인의 3단계 설계 원리는?
분석:
- Indexing: 문서 분할(Chunking) ➔ 임베딩 모델(Embedding)로 차원 벡터화 ➔ Vector Store 저장.
- Retrieval: 사용자 질문(Query)을 벡터화하여 Vector DB에서 유사도 높은 Top-K 관련 문서 조각 검색.
- Generation: 검색된 Context와 질문을 LLM Prompt에 합성하여 정밀한 답변 생성 (환각 방지).
Q2. Chunk Size와 Chunk Overlap 파라미터 튜닝 시의 트레이드오프 분석은?
분석: Chunk Size가 너무 크면 관련 없는 데이터 소음이 섞여 검색 정확도가 떨어지고, 너무 작으면 문맥 정보가 잘립니다. Chunk Overlap(10~20%)을 추가하여 청크 절단면에 걸린 중요한 정보가 끊어지는 유실 현상을 방지합니다.
Q3. BM25 키워드 검색과 Dense Vector 검색을 결합한 Hybrid Search 필요성은?
분석: Vector Search는 의미적 연관성은 잘 추론하지만 품번, 시리얼 번호, 고유명사 일치를 놓칠 때가 있습니다. 전통적 키워드 BM25와 코사인 유사도 밀집 검색을 결합한 Hybrid Search에 Reranker 모델을 더해 엔터프라이즈 정합성을 극대화합니다.
# 1. 가상환경 생성 및 활성화
python3 -m venv venv
source venv/bin/activate
# 2. 필수 라이브러리 설치
pip install -r requirements.txt
# 3. 통합 RAG 파이프라인 실행
python main.py🎨 1. Frontend & Mobile Web Architecture (#frontend-architecture)
- b2b-mes-admin-lab: FSD Architecture, AG-Grid/Handsontable, MFE, BFF, State Studio
- frontend-performance-lab: Vite/Webpack, Canvas/SVG, RN WebView Bridge, PWA, App Store
- frontend-coding-interview-lab: FE 알고리즘 & 바닐라 JS/React 하드코딩
- frontend-security-lab: XSS/CSRF 방어, CSP, SameSite Cookie, CORS
⚡ 2. Fullstack & Backend Performance (#backend-performance)
- fullstack-reliability-lab: 멱등성, 낙관적 락, 지수 백오프 & 서킷 브레이커
- backend-performance-lab: FastAPI, Connection Pooling, Redis Cache, N+1 Query
🐳 3. Infrastructure & DevOps (#infra-devops)
- docker-infra-lab: Multi-stage Docker, Compose, Nginx Proxy, CI/CD
🧠 4. AI Engineering & Data Platform (#ai-data-platform)
- llm-rag-data-platform-lab: RAG, ChromaDB/FAISS Vector Store, AWS Bedrock
- ai-product-patterns-lab: SSE Streaming, AI Fallback Router, Rate Limiter
📱 5. Mobile Native Architecture (#mobile-native)
- android-architecture-lab: Clean Architecture, MVI, Compose, Coroutines/StateFlow