# LLM 모델 비교 분석

**최종 업데이트**: 2025-12-02  
**초기 조사**: 2025-08-04

## 개요
로빙 프로젝트를 위한 멀티 LLM 전략 수립을 위해 주요 LLM 모델들의 성능, 비용, 품질을 비교 분석했습니다.

## 테스트 환경
- 테스트 도구: `/home/happybell/projects/ivada/test_llm/test_all_for_ro-being.py`
- 로빙 시스템 프롬프트 적용
- 한국어 테스트 케이스 사용

## 모델별 상세 분석

### 1. Gemini 2.5 Flash-Lite ⭐ 
- **가격**: $0.10 / $0.40 (입력/출력 per 1M tokens)
- **응답 시간**: 2.04초~2.76초
- **Rate Limit (무료 티어, 2025-12-02 기준)**:
  - RPM (Requests Per Minute): 15회
  - TPM (Tokens Per Minute): 250K
  - RPD (Requests Per Day): 1K
- **특징**: 
  - 2025년 8월 1일 정식 출시
  - 가장 저렴한 가격
  - 안정적인 성능
  - 무료 tier 활용 가능
- **추천 용도**: 메인 모델

### 2. Gemini 2.5 Flash
- **가격**: $0.30 / $2.50 (입력/출력 per 1M tokens)
- **Rate Limit (무료 티어, 2025-12-02 기준)**:
  - RPM: 10회
  - TPM: 250K
  - RPD: 250회
- **특징**:
  - Flash-Lite보다 약간 높은 가격이지만 더 나은 성능
  - 일일 요청 제한(RPD)이 Flash-Lite보다 낮음 (250 vs 1K)
- **추천 용도**: Flash-Lite 대안, 더 높은 성능 필요 시

### 3. Gemini 2.5 Pro
- **가격**: $1.25 / $10.00 (입력/출력 per 1M tokens)
- **Rate Limit (무료 티어, 2025-12-02 기준)**:
  - RPM: 2회
  - TPM: 125K
  - RPD: 50회
- **특징**:
  - 가장 제한적인 무료 티어 (RPM 2회)
  - 가장 높은 가격
  - 최고 성능
- **추천 용도**: 무료 티어에서는 대량 호출 부적합, 유료 플랜 필요

### 4. GPT-4o-mini
- **가격**: $0.15 / $0.60
- **응답 시간**: 1.78초~4.68초
- **특징**: 
  - 균형잡힌 응답 품질
  - 빠른 초기 응답
  - OpenAI의 안정성
- **추천 용도**: 백업 모델

### 5. Mistral Small 3.1
- **가격**: $0.75 / $4.00
- **응답 시간**: 1.49초~3.02초
- **특징**: 
  - 가장 빠른 응답 속도
  - 상세하고 체계적인 답변
  - 토큰 효율적 (평균 200~300 토큰)
- **추천 용도**: 품질 우선 시

### 6. Claude 3.5 Haiku
- **가격**: 비공개 (사용량 기반)
- **응답 시간**: 2.57초~4.60초
- **특징**: 
  - 높은 응답 품질
  - 대화형 응답
  - 과부하 시 불안정 (529 에러)
- **추천 용도**: 복잡한 대화 필요 시

### 7. Grok (제외)
- **가격**: $2.00~$3.00 / $10.00~$15.00
- **특징**: 
  - X/Twitter 실시간 데이터 접근
  - 너무 비싼 가격
  - grok-3-mini는 빈 응답 문제
- **결론**: 특수 목적 외 비추천

## 성능 비교

### 응답 속도 순위
1. Mistral Small 3.1: 1.49초
2. GPT-4o-mini: 1.78초  
3. Gemini 2.5 Flash-Lite: 2.04초
4. Claude 3.5 Haiku: 2.57초

### 비용 효율성 순위
1. Gemini 2.5 Flash-Lite: $0.10/$0.40
2. GPT-4o-mini: $0.15/$0.60
3. Mistral Small 3.1: $0.75/$4.00
4. Grok: $2.00/$10.00 이상

### Rate Limit 비교 (무료 티어, 2025-12-02 기준)

| 모델 | RPM | TPM | RPD | 비고 |
|------|-----|-----|-----|------|
| Gemini 2.5 Flash-Lite | 15 | 250K | 1K | 가장 유리 |
| Gemini 2.5 Flash | 10 | 250K | 250 | RPD 낮음 |
| Gemini 2.5 Pro | 2 | 125K | 50 | 가장 제한적 |

**주의**: IR Deck 평가 시 15페이지 이상일 경우 Flash-Lite도 Quota 초과 가능 (종합 1회 + 페이지별 15회 = 16회 호출)

### 응답 품질 특성
- **Mistral**: 가장 상세하고 체계적 (번호 목록, 이모지 활용)
- **GPT-4o-mini**: 균형잡힌 구조적 답변
- **Gemini**: 간결하면서도 핵심 포착 (표 활용)
- **Claude**: 대화형, 공감적 응답

## 로빙 프로젝트 추천 전략

### 멀티 LLM 전략
1. **메인 모델**: Gemini 2.5 Flash-Lite
   - 가장 저렴한 비용
   - 안정적인 성능
   - 무료 tier 활용 (RPM 15회)
   - **주의**: 15페이지 이상 평가 시 Quota 초과 가능

2. **백업 모델**: GPT-4o-mini
   - 메인 모델 장애 시 대체
   - 균형잡힌 성능

3. **보조 모델**: Mistral Small 3.1
   - 고품질 응답 필요 시
   - 빠른 응답 필요 시

### 환경변수 설정
```bash
# .env 파일
GEMINI_API_KEY=(Gemini API 키)
OPENAI_API_KEY=(OpenAI API 키)
MISTRAL_API_KEY=(Mistral API 키)
ANTHROPIC_API_KEY=(Anthropic API 키)
# XAI_API_KEY=(xAI API 키) # 비용 문제로 제외

# 기본 LLM 모델 설정 (모든 서비스에서 사용)
DEFAULT_LLM_MODEL=gemini-2.5-flash-lite
```

**참고**: 기본값은 `rb8001/app/core/config.py`에서 `gemini-2.5-flash-lite`로 설정되어 있으며, 환경변수 `DEFAULT_LLM_MODEL`로 오버라이드 가능합니다.

### 사용 예시
```python
# 환경변수에서 기본 모델 가져오기 (권장)
from app.core.config import settings
default_model = settings.DEFAULT_LLM_MODEL  # "gemini-2.5-flash-lite" (기본값)

# 모델 선택 로직
if task_type == "general":
    model = settings.DEFAULT_LLM_MODEL  # 기본 모델 사용
elif task_type == "quality":
    model = "mistral-small-latest"   # 품질 우선
elif task_type == "fast":
    model = "gpt-4o-mini"            # 속도 우선
```

## Rate Limit 대응 전략

### 문제 상황
- IR Deck 평가 시 15페이지 이상: Flash-Lite RPM 15회 제한 초과
- 종합 평가 1회 + 페이지별 평가 N회 (N > 14) = 총 15회 이상

### 해결 방안
1. **배치 처리**: 페이지별 평가를 10-15페이지씩 묶어서 처리 (호출 횟수 감소)
2. **Rate Limiting**: 요청 간 간격 제어 (분당 15회 이하 유지)
3. **모델 전환**: Flash-Lite 대신 Flash 사용 (RPM 10회지만 RPD는 낮음)
4. **대기 시간**: 평가 시작 전 30-60초 대기 (이전 요청 쿼터 해제 대기)

## 결론

### 핵심 발견사항
1. Gemini 2.5 Flash-Lite가 비용 대비 최고 효율
2. 각 모델마다 고유한 강점 존재
3. 멀티 LLM 전략으로 안정성 확보 필요
4. 토큰 제한 설정 시 충분한 여유 필요 (500 토큰 이상)
5. **Rate Limit 고려 필수**: 15페이지 이상 평가 시 Quota 초과 주의

### 향후 고려사항
- 정기적인 모델 성능 재평가
- 새로운 모델 출시 모니터링
- 사용량 기반 비용 최적화
- 모델별 특화 작업 정의
- Rate Limit 모니터링 및 대응 전략 수립

## 참고 자료
- 테스트 코드: `/test_llm/test_all_for_ro-being.py`
- 개별 테스트: `/test_llm/test_*.py`
- 트러블슈팅: `/DOCS/troubleshooting/250804_happybell80_LLM멀티모델테스트.md`
- Gemini API Rate Limit: https://ai.dev/usage?tab=rate-limit (2025-12-02 기준)
- Vertex AI 가격 책정: https://docs.cloud.google.com/vertex-ai/generative-ai/pricing?hl=ko

