diff --git a/journey/troubleshooting/251118_claude_의도_분석_엔티티_추출_분리.md b/journey/troubleshooting/251118_claude_의도_분석_엔티티_추출_분리.md index fdfefa1..862e52c 100644 --- a/journey/troubleshooting/251118_claude_의도_분석_엔티티_추출_분리.md +++ b/journey/troubleshooting/251118_claude_의도_분석_엔티티_추출_분리.md @@ -25,15 +25,12 @@ - `web_search_workflow.py:145`: "예: 지에프솔루션 / AIdol Company" 제거 - `slack_handler.py:492`: 동일 예시 제거 -### 2. 의도 분석과 엔티티 추출 분리 (제안) -- 직접 검색어가 제공된 경우 엔티티 추출 실패와 무관하게 검색 수행 -- `web_search_workflow.py:link_node`: 엔티티 없어도 쿼리 원문으로 검색하는 폴백 경로 추가 +### 2. 의도 분석과 엔티티 추출 분리 (구현 완료) +- `web_search_workflow.py:135-172`: link_node에서 직접 검색어 판단 로직 추가 +- 직접 검색어 판단 기준: 대명사 없고 검색 키워드("검색", "찾아", "알아봐" 등) 있으며 실체 명사(한글/영문 2글자 이상) 포함 +- 직접 검색어 제공 시 엔티티 없어도 검색 진행 - 대명사 사용 시에만 엔티티 추출 시도, 직접 검색어는 쿼리 그대로 사용 - -### 3. LangGraph 분기 개선 (제안) -- 엔티티 유무/대명사 여부를 판단해 분기 -- 직접 검색어: clarify 없이 검색 진행 -- 대명사만 있는 경우: 엔티티 추출 시도 후 clarify 또는 검색 +- TDD: `tests/test_web_search_direct_query.py` 추가 (커밋: 1157570) ## 시나리오 예시 @@ -48,6 +45,13 @@ 9. **뉴스 키워드 명시**: "AI 규제 뉴스 찾아줘" → 즉시 검색 10. **뉴스 키워드 불명확**: "뉴스 찾아줘" → 주제 재질문 +## 구현 완료 + +- **커밋**: 1157570 (2025-11-18) +- **파일**: `rb8001/app/services/workflows/web_search_workflow.py:135-172` +- **테스트**: `rb8001/tests/test_web_search_direct_query.py` +- **자동 배포**: Gitea Actions 통해 51124 서버 자동 배포 완료 + ## 교훈 ### 의도 분석과 엔티티 추출 분리 원칙