From 293e8be566c37ce73c0dec666eddb934e783661b Mon Sep 17 00:00:00 2001 From: Claude-51124 Date: Wed, 26 Nov 2025 17:58:53 +0900 Subject: [PATCH] =?UTF-8?q?=EC=9D=98=EB=8F=84=20=ED=8C=8C=EC=95=85=20?= =?UTF-8?q?=E2=86=92=20=ED=96=89=EB=8F=99=20=EA=B3=84=ED=9A=8D=20=E2=86=92?= =?UTF-8?q?=20=EC=8A=A4=ED=82=AC=20=EC=84=A0=ED=83=9D=203=EB=8B=A8?= =?UTF-8?q?=EA=B3=84=20=EA=B5=AC=EC=A1=B0=20=EA=B0=9C=EC=84=A0=20=EB=B0=A9?= =?UTF-8?q?=ED=96=A5=20=EC=B6=94=EA=B0=80=20(2025-11-26)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...251017_intent_analysis_improvement_plan.md | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/journey/plans/251017_intent_analysis_improvement_plan.md b/journey/plans/251017_intent_analysis_improvement_plan.md index 6557b3c..c786e63 100644 --- a/journey/plans/251017_intent_analysis_improvement_plan.md +++ b/journey/plans/251017_intent_analysis_improvement_plan.md @@ -48,6 +48,38 @@ def analyze_intent(self, message: str) -> Tuple[IntentType, float]: **결론**: 현재는 **단순 명령만 처리 가능**. 종합적 질문은 처리 불가. +### 1.3 아키텍처 구조적 문제 (2025-11-26 추가) + +**현재 구조의 근본적 문제**: +- IntentType이 스킬/액션과 직접 1:1 매핑되어 있음 +- 의도 파악이 곧 스킬 선택으로 이어지는 구조 +- 진정한 "의도 파악(무엇을 원하는가)" → "행동 계획(어떻게 할 것인가)" → "스킬 선택(어떤 도구를 쓸 것인가)"의 단계적 분리가 없음 + +**예시**: +``` +현재: "일정 등록" → calendar_event intent → calendar_confirm action → CalendarSkill +문제: intent가 이미 구체적 행동(스킬)과 결합됨 +``` + +**개선 방향**: +1. **의도 파악 단계**: 추상적 목표 파악 + - 예: "일정 관리", "정보 검색", "커뮤니케이션", "문서 처리" + - 사용자가 무엇을 원하는지 추상적 수준에서 이해 + +2. **행동 계획 단계**: 구체적 행동 결정 + - 예: "일정 등록", "일정 조회", "일정 삭제", "일정 수정" + - 의도를 달성하기 위한 구체적 행동 계획 + +3. **스킬 선택 단계**: 적절한 도구 선택 + - 예: `calendar_skill.create_event`, `calendar_skill.get_events`, `calendar_skill.delete_event` + - 행동을 수행할 적절한 스킬 선택 + +**3단계 구조의 장점**: +- 의도와 구현의 분리: 같은 의도라도 다른 행동/스킬로 구현 가능 +- 확장성: 새로운 스킬 추가 시 기존 의도 재사용 가능 +- 유연성: 행동 계획 단계에서 여러 대안 고려 가능 +- 명확성: 각 단계의 책임이 명확히 분리됨 + --- ## 2. 문서에서 제안한 방법론