docs: Gemini API 개선 계획에 사고(Thinking) 기능 추가

- Phase 4 추가: thinkingBudget 활용 (512~24576 범위)
- 에러 처리 Phase 번호 조정 (Phase 5)
- 사고 토큰 모니터링 포함
- 참고 문서에 생각 가이드 링크 추가
This commit is contained in:
Claude-51124 2025-12-24 15:50:22 +09:00
parent a9119a10f6
commit f849308436

View File

@ -69,19 +69,35 @@
**적용 우선순위**: 중간 (IR Deck 분석에 직접 활용)
### 4. 에러 처리 및 모니터링 강화
### 4. 사고(Thinking) 기능 활용
**현재 상태**: 사고 제어 미사용, 기본 동작(사고 없음)
**개선 내용**:
- `thinkingBudget` 설정으로 복잡한 작업에 추론 능력 향상
- Gemini 2.5 Flash-Lite: `thinkingBudget` 범위 512~24576 (최소 512 필요)
- 구버전 SDK는 `ThinkingConfig` 미지원 → 신버전 SDK 전환 필요
**UX 개선 예상 효과**:
- **복잡한 작업 품질 향상**: 코딩, 수학, 데이터 분석 등 복잡한 작업의 정확도 향상
- **추론 과정 투명화**: `includeThoughts=True`로 모델의 추론 과정 확인 가능
- **작업별 최적화**: 간단한 작업은 사고 비활성화(0), 복잡한 작업은 사고 활성화(512~24576)
**적용 우선순위**: 중간 (신버전 SDK 전환 후 적용)
### 5. 에러 처리 및 모니터링 강화
**현재 상태**: 기본 에러 처리만 존재
**개선 내용**:
- Rate Limit(429) 자동 재시도 및 백오프
- 토큰 사용량 모니터링 및 알림
- 토큰 사용량 모니터링 및 알림 (사고 토큰 포함)
- 응답 구조 검증 강화
- 에러 타입별 처리 전략
**UX 개선 예상 효과**:
- **안정성 향상**: Rate Limit 발생 시 자동 재시도로 사용자 개입 불필요
- **투명성**: 토큰 사용량 표시로 비용 인식 개선
- **투명성**: 토큰 사용량 표시로 비용 인식 개선 (출력 토큰 + 사고 토큰)
- **에러 복구**: 일시적 오류 자동 복구로 사용자 경험 중단 최소화
**적용 우선순위**: 높음 (프로덕션 안정성)
@ -104,16 +120,23 @@
- IR Deck 분석: PDF 이미지 직접 분석 경로 추가
- Slack 이미지: 첨부 이미지 분석 기능
### Phase 4: 에러 처리 강화
### Phase 4: 사고 기능 활용
- 신버전 SDK 전환 후 `thinking_config` 지원 확인
- 작업 복잡도에 따른 `thinkingBudget` 동적 설정 (간단: 0, 복잡: 512~24576)
- 사고 요약(`includeThoughts=True`) 옵션 추가
### Phase 5: 에러 처리 강화
- Rate Limit 자동 재시도 로직
- 토큰 사용량 모니터링
- 토큰 사용량 모니터링 (사고 토큰 포함)
- 에러 타입별 처리 전략
## 참고 문서
- Gemini API 참조: https://ai.google.dev/api
- Gemini 생각 가이드: https://ai.google.dev/docs/thinking
- Google Gen AI SDK 문서: https://googleapis.github.io/python-genai/
- 현재 구현: `rb8001/app/services/llm/gemini_handler.py:200` (구버전 SDK)
- 현재 구현: `rb8001/app/services/llm/gemini_handler.py:200` (구버전 SDK, thinking_config 미지원)
- 신버전 SDK 예시: `rb8001/app/services/gemini_file_search_client.py:81`
- 프론트엔드: `frontend-customer/src/components/chat-interface.tsx:535`
- 테스트 스크립트: `test_llm/test_thinking_budget.py`