DOCS/journey/plans/251017_intent_analysis_improvement_plan.md
2026-01-03 12:44:32 +09:00

80 lines
2.3 KiB
Markdown

# 로빙 의도 파악 개선 플랜
**날짜**: 2025-10-17
**현재**: 정규식 패턴 매칭만 사용
---
## 현재 문제
### 처리 불가 사례
| 질문 | 현재 처리 | 문제 |
|------|----------|------|
| "오늘 몇일이야?" | UNKNOWN | 시간 질문 패턴 없음 |
| "리버스마운틴 유사 기업 가치평가해줘" | UNKNOWN | 복잡한 멀티스텝 질문 |
| "아까 말한 그 기업 투자 단계는?" | UNKNOWN | 맥락 참조 불가 |
**결론**: 단순 명령만 처리 가능, 복합 질문 처리 불가
---
## 개선 방향 (3단계 구조)
**구현 완료**: `troubleshooting/251126_happybell80_rb8001_의도_3단계_아키텍처_도입_및_배포.md`
**완료일**: 2025-11-26
**커밋**: `a4738b9` (rb8001)
### 완료 사항
- ✅ 3단계 스키마 정의: `intent/schemas.py` (IntentCategory, IntentGoal, ActionPlan, SkillSequence)
- ✅ IntentAnalyzer 구현: LLM 기반 제로샷 의도 분석
- ✅ ActionPlanner 구현: IntentGoal → ActionPlan 변환
- ✅ SkillSelector 구현: ActionPlan → SkillSequence 변환
- ✅ DecisionEngine 통합: `_build_intent_pipeline()` 메서드 추가, execution_plan에 intent_pipeline 메타데이터 포함
- ✅ TDD 테스트: `tests/test_intent_3step_architecture.py` 통과
```
1. 의도 파악 → 추상적 목표 (일정 관리, 정보 검색 등)
2. 행동 계획 → 구체적 행동 (등록, 조회, 삭제 등)
3. 스킬 선택 → 적절한 도구 (calendar_skill 등)
```
---
## 미구현: 하이브리드 시스템
### 제안 구조
```
사용자 메시지
1단계: 정규식 FastPath (명확한 패턴)
↓ 실패
2단계: 임베딩 후보 축소 (Top-3)
↓ 확신도 < 0.7
3단계: LLM 제로샷 분류
```
### 필요 작업
**1. SemanticIntentClassifier 구현**
- 파일: `app/services/brain/semantic_classifier.py`
- intent_prototypes 테이블 활용
- 임베딩 유사도로 Top-3 후보 선택
**2. LLM 폴백**
- Top-3 후보를 LLM에 전달
- 확신도 < 0.5 CLARIFY
**3. 성능 최적화**
- 정규식: 80% 케이스 (< 10ms)
- 임베딩: 15% 케이스 (< 200ms)
- LLM: 5% 케이스 (1-2s)
---
## 참고
- `troubleshooting/251126_happybell80_rb8001_의도_3단계_아키텍처_도입_및_배포.md`
- `troubleshooting/251126_intent_3step_db_bayesian_integration.md`
- `311_FastAPI_구조_원칙.md`