---
task_id: task-1979
type: context
scope: task
created: 2026-04-20
updated: 2026-04-20
status: completed
---

# 맥락 노트: task-1979

**task**: task-1979

---

## 결정 근거

### 기본 provider를 Google Gemini로 선택
- Gemini가 비용 효율적이며 기존 MODELS 목록에 이미 포함
- OpenAI보다 저렴, Claude는 자체 서버 필요
- 태스크 지시서에서 Gemini 또는 OpenAI 권장 → Gemini 선택

### API Key 직접 입력 방식으로 통일
- lovable provider만 API key 불필요 로직이 있었음
- 제거 후 모든 provider가 동일한 API URL + API Key 입력 UI 사용
- 코드 단순화 + 일관성 확보

### 3 Step Why 자문

**1st Why: "왜 이 설계가 필요한가?"**
→ Lovable 프로젝트에서 독립했으나 AI 기능이 여전히 ai.gateway.lovable.dev에 의존. 연결이 끊기면 AI 기능 전체 마비.

**2nd Why: "왜 provider 교체가 최선의 접근인가?"**
→ 자체 API key 방식으로 전환하면 외부 게이트웨이 의존 없이 직접 AI 서비스에 연결. Google Gemini는 이미 모델 목록에 있어 추가 구현 불필요.

**3rd Why: "왜 이 대안이 다른 것보다 나은가?"**
- 자체 프록시 서버 구축: 추가 인프라 비용 + 유지보수 부담
- OpenAI 직접 연결: 비용이 Gemini보다 높음
- Google Gemini 직접 연결: 기존 모델 목록 재활용 가능, API key만 추가하면 됨

## 참조 자료

- 태스크 지시서: `/home/jay/workspace/memory/tasks/task-1979.md`
- AdminAIConfig.tsx: `/home/jay/workspace/projects/insuro/src/pages/AdminAIConfig.tsx`
- AdminCrmConfig.tsx: `/home/jay/workspace/projects/insuro/src/pages/AdminCrmConfig.tsx`

## 주의사항

- DB의 ai_config 테이블에 기존 lovable provider 데이터가 있을 수 있음 → 관리자가 AI 설정 페이지에서 수동으로 provider 변경 필요
- fetchConfig에서 provider 폴백값이 gemini로 변경되어, 기존 lovable 데이터가 있어도 gemini로 대체 표시됨
