RAG 설계 타당성 종합 평가 - 100-hours-a-week/6-nemo-wiki GitHub Wiki
네모 서비스 – RAG (Retrieval Augmented Generation) 설계 문서 (이해하기 쉬운 버전)
1. 최종 통합된 RAG 서비스 아키텍처 및 설명
1.1 적용 배경
네모 서비스는 사용자가 새로운 모임을 찾거나 일정을 추천받을 때,
단순한 키워드 검색이나 기존 카테고리 분류 방식으로는 만족스러운 결과를 제공하는 데 한계가 있었습니다.
특히 사용자가 작성한 자연어 요청(예: "초보자를 위한 생성형 AI 모임 추천")을 정확하게 이해하고,
알맞은 모임을 추천하려면 단순한 생성 모델만으로는 부족했습니다.
→ 이 문제를 해결하기 위해,
→ 기존 데이터(모임 소개, 태그, 목적 등)를 활용하는 검색 기반 문맥 강화,
즉 RAG 구조를 도입했습니다.
1.2 RAG 아키텍처 구성
아래는 RAG 구조의 전체 흐름입니다:
graph TD
A[사용자 질의] --> B[질의 임베딩 생성]
B --> C[ChromaDB에서 유사 모임 검색]
C --> D[검색된 모임 데이터 수집]
D --> E[FastAPI 서버 호출]
E --> F[LLM에 검색 문맥 삽입 후 응답 생성]
1.3 핵심 컴포넌트 설명
구성 요소 | 설명 |
---|---|
사용자 질의 입력 | 사용자가 자연어로 모임을 요청 |
임베딩 모델 (intfloat/e5-small-v2 등) |
질의를 의미적 벡터로 변환 |
ChromaDB | 의미 기반 검색을 위해 임베딩된 모임 데이터 저장 |
FastAPI 서버 | 검색 결과를 받아 모델 호출을 연결 |
LLM (로컬 모델) | 검색된 문맥을 반영하여 자연스럽고 정확한 추천 생성 |
즉:
사용자가 입력한 문장을 이해하고 →
비슷한 모임을 찾아내어 →
그 정보까지 모델에 넘긴 후 →
훨씬 정확하고 자연스러운 답변을 만들게 됩니다.
2. 단계별 설계 적용 결과 요약표
단계 | 적용 내용 | 기대 효과 |
---|---|---|
1 | 질의 임베딩 생성 | 사용자의 자연어 요청을 의미 단위로 변환 |
2 | ChromaDB 검색 적용 | 단순 키워드가 아닌 의미 기반 유사 모임 검색 가능 |
3 | FastAPI 서버 연동 | 검색 결과와 모델 추론 흐름을 통합 |
4 | RAG 최적화 프롬프트 설계 | 검색된 내용을 활용해 더 정확한 답변 생성 |
한마디로, "사용자 요청" → "의미 검색" → "모델 입력" → "더 똑똑한 답변" 이라는 흐름을 단계별로 설계했습니다.
3. 현재 RAG 시스템 성능 및 품질 평가
RAG을 적용하기 전후의 차이를 표로 정리하면 다음과 같습니다:
항목 | 적용 전 | 적용 후 |
---|---|---|
추천 정확도 | 카테고리 일치만 보고 추천 | 문장 의미에 맞는 모임까지 추천 가능 |
추천 다양성 | 제한적 (항상 비슷한 모임) | 다양한 키워드/목적 기반으로 넓은 추천 가능 |
사용자 반응 | 일반적 (큰 차별화 없음) | 더 자연스럽고 맞춤형 추천 기대 |
정량적 검증 방법:
- 추천 결과 클릭률(CTR) 증가 확인
- 추천된 모임 참여율(Join Rate) 비교 측정
→ **단순 정확도뿐 아니라, 사용자의 실제 행동 변화(참여율)**을 지표로 삼아 평가할 계획입니다.
4. 앞으로의 개선 제안 및 계획
RAG 구조를 지금보다 더 발전시키기 위한 계획입니다:
4.1 Chunk Embedding 최적화
- 긴 모임 소개글을 문단 단위로 쪼개어 임베딩
- 기대 효과: 검색할 때 더 정확한 문맥 선택 가능
4.2 멀티 소스 RAG 확장
- 모임 설명뿐 아니라, 후기, 일정 데이터까지 함께 검색
- 기대 효과: 추천 다양성과 자연스러움 강화
4.3 FastAPI-DB 최적화
- ChromaDB 검색 시 캐시를 적용해 응답 시간 단축
- 기대 효과: 사용자 요청 처리 속도 향상
4.4 정기적 임베딩 업데이트
- 새로운 모임 등록, 후기 작성 시 자동 임베딩 처리
- 기대 효과: 항상 최신 정보 기반 추천 유지
5. 최종 결론: RAG 설계 타당성 종합 평가
평가 항목 | 설명 |
---|---|
정확성 향상 | 사용자의 의미를 이해하고 그에 맞는 결과 제공 가능 |
확장성 | 다양한 도메인(모임, 일정, 후기 등)으로 손쉽게 확장 가능 |
비용 효율성 | 자체 ChromaDB 운영으로 외부 API 비용 없이 유지 |
운영 효율성 | FastAPI 모듈화를 통한 서버 유지관리 편리성 확보 |
네모 서비스는 RAG 구조를 통해
단순 추천 시스템을 넘어 사용자 맞춤형, 자연어 이해 기반 추천 서비스로 진화하고 있습니다.
✨ 종합 결론
네모 서비스에 적용된 RAG 설계는,
자연어 이해, 의미 기반 검색, 개인화 추천을 자연스럽게 통합함으로써
사용자 경험(UX)을 한층 끌어올릴 준비를 완료했습니다.
앞으로 데이터 확장 및 모델 최적화를 통해 더욱 강력한 추천 시스템으로 발전할 수 있습니다.