[AI]5단계_RAG_적용_설계_유저행동기반_성향분석 - 100-hours-a-week/12-marong-Wiki GitHub Wiki
📍 전체 데이터 흐름도
[사용자 피드 입력]
↓
[불용어 제거 + 문장 전처리]
↓
[문장 임베딩]
↓
[벡터DB 검색(Chroma)]
↓
[Top-k 유사 피드 + 레이블 반환]
↓
[LLM 입력 프롬프트에 삽입]
↓
[LLM(Gemma3-4b-it)추론 -> MBTI 축별 점수 출력]
↓
[결과 저장]
📍 외부 지식 소스 설명
벡터DB(Chroma)
- 사용모델:
sentence-transformers/all-MiniLM-L6-v2
- 저장내용: 사용자 입력 피드, 데이터셋
데이터셋
Korean-MBTI-Dataset qna_cleaned.tsv
기반 MBTI 피드 데이터셋
- 각 문장에 대한 질문/답변자 MBTI 태그 포함
- 임베딩 진행 후 벡터DB에 저장
📍 검색 및 통합 구현
검색 단계
- 입력 피드를 전처리(불용어 제거, 필터링)
- 임베딩 모델로 문장 벡터화
- Chroma DB에 쿼리하여 top-k 유사문장 검색
통합 단계
- 검색된 문장과 레이블을 프롬프트에 구조화 삽입
- 프롬프트 예시
[유사 피드 예시]
- 나는 혼자 있을 때 책 읽는 걸 좋아해요 (ISTJ)
- 사람들과 함께 일하면 에너지가 나요 (ENFP)
[사용자 피드]
나는 회의보다 조용한 작업이 좋아요
📍 적용 전후 기대효과 및 검증 계획
항목 |
기존 방식 |
RAG 도입 후 |
추론 정확도 |
문장 단독 기반(맥락 부족) |
유사 예시 포함(맥락 보강) |
LLM 정답률 |
불안정 |
Top-k 예시 기반 안정성 상승 |
검증 계획
- 유사 피드 없이 vs 유사 피드 포함 구조 A/B 테스트
- 동일 피드에 대해 MBTI 축별 점수 변화 비교
- LLM 출력을 일관된 기준으로 평가
📍 선택한 방안의 적합성
- MBTI는 단일 문장보다 문맥적 유사 사례 기반 해석이 중요함
- RAG 구조는 기존 피드 DB를 활용하여 정확도 + 설명력 모두 개선 가능
- 축별 점수 추론 이후 다양한 확장 가능