docs: add Chain-of-Thought (CoT) application plan for intent analysis
- Add CoT implementation strategy to LLM re-analysis section - Conditional activation via INTENT_USE_COT env var - Reasoning step logging for review queue validation - Expected to improve accuracy for complex/context-dependent questions
This commit is contained in:
parent
9ad5468f9f
commit
30ca36c067
@ -34,9 +34,48 @@
|
||||
- 로그 스키마(요지): intent_decision_log(user_id, message, candidates, chosen, confs, path, success, clarify, latency, ts), prototype_version(intent, centroid_hash, updated_at).
|
||||
|
||||
## 5) LLM 재분석 가드레일
|
||||
|
||||
### 5.1 기본 구조
|
||||
- 입력: Top‑K 후보명/설명 + 최근 컨텍스트 최소화 주입.
|
||||
- 출력: JSON 한 줄. OOS/불확실은 clarify true, 슬롯 미충족 시 되묻기 우선.
|
||||
|
||||
### 5.2 Chain-of-Thought (CoT) 적용 방안 (2025-11-18 추가)
|
||||
|
||||
**목적**: 복잡한 질문이나 확신도 낮은 경우 LLM이 단계별 추론을 통해 더 정확한 의도 분류를 수행하도록 개선.
|
||||
|
||||
**구현 방안**:
|
||||
1. **IntentParserLLM 프롬프트 수정**:
|
||||
- 현재: "JSON만 출력하세요"
|
||||
- 변경: "단계별로 추론한 후 JSON 출력하세요"
|
||||
- 추론 단계:
|
||||
- 1단계: 메시지에서 핵심 키워드/엔티티 추출
|
||||
- 2단계: 의도 후보 검토 및 컨텍스트 분석 (직전 대화, 슬롯 정보 등)
|
||||
- 3단계: 최종 의도 결정 및 신뢰도 평가
|
||||
|
||||
2. **조건부 CoT 활성화**:
|
||||
- 환경변수: `INTENT_USE_COT=true` (기본값: false)
|
||||
- 활성화 조건:
|
||||
- FastPath/Semantic에서 확신도 낮은 경우 (conf < 0.7)
|
||||
- 복잡한 질문 (키워드 3개 이상, 대명사 포함 등)
|
||||
- 컨텍스트 의존적 질문 ("이 기업", "그 회사" 등)
|
||||
- 비활성화 조건:
|
||||
- FastPath/Semantic에서 확신도 높은 경우 (conf ≥ 0.9) → CoT 생략하여 비용/지연 최소화
|
||||
|
||||
3. **추론 과정 로깅**:
|
||||
- LLM 출력에서 추론 단계는 로깅/디버깅용으로 저장
|
||||
- 최종 JSON만 파싱하여 기존 인터페이스 유지
|
||||
- Human-in-the-loop 리뷰 큐에서 추론 과정 검증 가능
|
||||
- 로그 스키마: `intent_cot_log(user_id, message, reasoning_steps, final_intent, timestamp)`
|
||||
|
||||
**예상 효과**:
|
||||
- 복잡한 질문 정확도 향상 (특히 "이 기업 대표 누구야?" 같은 컨텍스트 의존적 질문)
|
||||
- 의도 분류 오류 감소 (단계별 검증으로 잘못된 실행 방지)
|
||||
- 비용/지연 최소화 (조건부 활성화로 불필요한 CoT 호출 방지)
|
||||
|
||||
**구현 파일**:
|
||||
- `rb8001/app/llm/intent_parser.py` — CoT 프롬프트 추가 및 조건부 활성화 로직
|
||||
- `rb8001/app/core/config.py` — `INTENT_USE_COT` 환경변수 추가
|
||||
|
||||
## 6) 실험·배포 전략
|
||||
- A/B → 밴딧: 10%→30%→50% 점진 롤아웃, 지표(Unknown/Clarify/오실행/지연/비용) 모니터링.
|
||||
- 임계치/경로/모델 후보는 밴딧 “팔(Arm)”로 관리, Thompson Sampling으로 자동 최적.
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user