# AI 분석 리포트 (AI Report) > **상태**: API 구현 완료 > **최종 갱신**: 2026-02-27 --- ## 1. 개요 Google Gemini API를 활용한 재무 분석 리포트 자동 생성 시스템. 테넌트의 비즈니스 데이터(지출, 매출, 매입, 입출금, 카드/계좌, 미수금)를 자동 수집하여 AI 기반 분석 리포트를 생성한다. **핵심 기능:** - 일간/주간/월간 재무 분석 리포트 자동 생성 - Gemini 2.0 Flash 모델 연동 - 토큰 사용량 자동 추적 및 비용 계산 (USD/KRW) - 전월 동기간 대비 변화율 분석 --- ## 2. 모델 | 모델 | 테이블 | 설명 | Traits | |------|--------|------|--------| | `AiReport` | `ai_reports` | AI 리포트 (유형, 내용, 상태) | BelongsToTenant | | `AiTokenUsage` | `ai_token_usages` | 토큰 사용량 추적 (모델, 메뉴, 비용) | BelongsToTenant | | `AiPricingConfig` | `ai_pricing_configs` | AI 모델별 단가 설정 (3600초 캐시) | BelongsToTenant | | `AiVoiceRecording` | `ai_voice_recordings` | 음성 녹음 (GCS URI, STT 결과) | BelongsToTenant | **리포트 유형:** daily, weekly, monthly **리포트 상태:** pending → completed / failed **분석 영역 (6개):** - 지출 (Withdrawal), 매출 (Sale), 매입 (Purchase) - 입출금 (Deposit), 카드/계좌, 미수금 (Receivable) --- ## 3. 서비스 | 서비스 | 주요 메서드 | 설명 | |--------|-----------|------| | `AiReportService` | list | 리포트 목록 (필터: report_type, status, 날짜) | | | show | 리포트 상세 | | | generate | 리포트 생성 (데이터 수집 → Gemini API 호출 → 저장) | | | delete | 리포트 삭제 | **내부 처리 흐름:** ``` generate() → collectBusinessData() → buildPrompt() → callGeminiApi() → saveTokenUsage() ``` --- ## 4. API 엔드포인트 | HTTP | URI | 설명 | |------|-----|------| | GET | `/v1/reports/ai` | AI 리포트 목록 | | POST | `/v1/reports/ai/generate` | AI 리포트 생성 | | GET | `/v1/reports/ai/{id}` | AI 리포트 상세 | | DELETE | `/v1/reports/ai/{id}` | AI 리포트 삭제 | --- ## 5. FormRequest | Request | 주요 검증 | |---------|----------| | `AiReportListRequest` | per_page, report_type (in), status (in), start_date, end_date | | `AiReportGenerateRequest` | report_date (nullable, before_or_equal:today), report_type (nullable) | --- ## 관련 문서 - [DB 스키마 — 공통](../../system/database/commons.md) - Swagger: `/api-docs` → Reports 섹션 --- **최종 업데이트**: 2026-02-27