[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)

[사용자 피드]
나는 회의보다 조용한 작업이 좋아요
  • 위 예시 포함하여 LLM 추론(축별)

📍 적용 전후 기대효과 및 검증 계획

항목 기존 방식 RAG 도입 후
추론 정확도 문장 단독 기반(맥락 부족) 유사 예시 포함(맥락 보강)
LLM 정답률 불안정 Top-k 예시 기반 안정성 상승

검증 계획

  • 유사 피드 없이 vs 유사 피드 포함 구조 A/B 테스트
  • 동일 피드에 대해 MBTI 축별 점수 변화 비교
  • LLM 출력을 일관된 기준으로 평가

📍 선택한 방안의 적합성

  • MBTI는 단일 문장보다 문맥적 유사 사례 기반 해석이 중요함
  • RAG 구조는 기존 피드 DB를 활용하여 정확도 + 설명력 모두 개선 가능
  • 축별 점수 추론 이후 다양한 확장 가능