diff --git a/troubleshooting/251014_claude_coldmail_filter_tokenization_issue.md b/troubleshooting/251014_claude_coldmail_filter_tokenization_issue.md index 64dd6ce..f0aab27 100644 --- a/troubleshooting/251014_claude_coldmail_filter_tokenization_issue.md +++ b/troubleshooting/251014_claude_coldmail_filter_tokenization_issue.md @@ -92,20 +92,29 @@ --- -## 테스트 검증 완료 +## 구현 완료 (커밋 5ff5a6f) -### Phase 1: 임베딩 유사도 (test_coldmail_briefing.py:92-134) -- 임베딩 생성: ✅ 384 차원 -- Cosine Similarity: coldmail 0.204 > normal 0.156 ✅ +### 구현 파일 +- coldmail_embedding_filter.py: 임베딩 유사도 (skill-embedding 8515) +- coldmail_llm_classifier.py: Gemini LLM zero-shot +- coldmail_hybrid_filter.py: 3단계 통합 (임베딩→LLM→Naive Bayes) +- coldmail_briefing.py: hybrid_coldmail_filter 적용 -### Phase 2: Gemini LLM 분류 -- 올굿즈컴퍼니 회사소개서: True (coldmail) ✅ -- 회의 일정 안내: False (normal) ✅ -- 정확도: 100% +### 테스트 결과 +- Phase 1 (임베딩끼리 비교): coldmail 0.204 > normal 0.156 ✅ +- Phase 2 (Gemini LLM): 올굿즈컴퍼니 100% 정확도 ✅ +- Phase 3 (하이브리드): LLM fallback 작동 ✅ -### Phase 3: 하이브리드 통합 -- 3단계 순차 실행: ✅ -- Naive Bayes 30.35% → Gemini 보완으로 정확도 100% +### 임베딩 필터 이슈 +- **문제**: DB centroid와 실제 이메일 비교 시 실패 (coldmail 0.30 < normal 0.38) +- **원인**: Centroid 샘플 30개가 일반 텍스트만 포함, 파일명 형식("xxx.pdf") 미포함 +- **해결**: 파일명 샘플 40개 추가 필요 (회사소개서.pdf, IR_Deck.pdf 등) +- **현재**: 임베딩 필터 skip → LLM으로 fallback (100% 정확도) + +### 학습 루프 +- **Naive Bayes**: Slack 피드백 자동 업데이트 (coldmail_filter.py:update_classifier) +- **임베딩 Centroid**: 수동 업데이트 (51123 서버에서 재계산) +- **LLM**: 학습 불가 (zero-shot 고정) ---