# Gemini File Search 콜드메일 통합 계획

**날짜**: 2025-11-10
**목표**: Gemini File Search로 IR 분석 품질 개선

---

## 현재 문제

### 콜드메일 워크플로우 병목
1. PDF 첨부파일 다운로드
2. skill-rag-file 업로드 (PyPDF2 → OCR)
3. RAG 쿼리 6회 (IR 지표 추출)
4. **문제**: OCR 품질 낮음 → RAG 검색 0건 → IR 지표 "N/A"

**결과**: seed 30억·신뢰도 0.6 고정

---

## Gemini File Search 개선

### 장점
- 한글 OCR PDF 13.77초 안정 처리
- IR 지표 정확 추출
- grounding_metadata로 근거 제공
- evidence_count ≥ 2 → 신뢰도 0.7~0.8

---

## 구현 계획

### Phase 1: Gemini File API 구현 (미착수)

**파일**: `rb8001/app/services/gemini_file_service.py`

**기능**:
- PDF 업로드 → Gemini File API
- 쿼리 실행 (IR 지표 추출)
- grounding_metadata 파싱

### Phase 2: coldmail_workflow 통합 (미착수)

**파일**: `rb8001/app/services/workflows/coldmail_workflow.py`

**변경**:
- skill-rag-file → Gemini File Search로 교체
- 6개 IR 쿼리 병렬 실행
- evidence_count 기반 신뢰도 계산

### Phase 3: TDD 테스트 (미착수)

**파일**: `rb8001/tests/test_coldmail_gemini_integration.py`

**시나리오**:
1. PDF 업로드 성공
2. IR 지표 추출 (매출, 투자 단계 등)
3. evidence_count ≥ 2 검증
4. 신뢰도 0.7 이상 검증

---

## 임베딩 차원 호환성

### 현재
- skill-embedding: ko-sroberta (768차원)
- ChromaDB: `skill_rag_file_{team_id}_documents`

### Gemini
- gemini-embedding-001: 3,072차원
- 설정 가능: 128~3,072

### 전략
**옵션 1**: 별도 컬렉션 (`{team_id}_gemini`)
**옵션 2**: Gemini 차원 768로 축소
**추천**: 옵션 1 (성능 최대화)

---

## 참고

- `research/rag/251110_gemini_file_search_api_테스트.md`
- `troubleshooting/251122_chromadb_dimension_mismatch.md`
