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

2.3 KiB

로빙 의도 파악 개선 플랜

날짜: 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