diff --git a/app/Http/Controllers/Rd/CmSongController.php b/app/Http/Controllers/Rd/CmSongController.php index 1a76f726..f6987b32 100644 --- a/app/Http/Controllers/Rd/CmSongController.php +++ b/app/Http/Controllers/Rd/CmSongController.php @@ -2,6 +2,7 @@ namespace App\Http\Controllers\Rd; +use App\Helpers\AiTokenHelper; use App\Http\Controllers\Controller; use App\Models\Rd\CmSong; use Illuminate\Http\JsonResponse; @@ -114,6 +115,10 @@ public function generateLyrics(Request $request): JsonResponse } $data = $response->json(); + + // 토큰 사용량 기록 + AiTokenHelper::saveGeminiUsage($data, 'gemini-2.5-flash', '나레이션-가사생성'); + $text = $data['candidates'][0]['content']['parts'][0]['text'] ?? ''; return response()->json([ @@ -165,6 +170,10 @@ public function generateAudio(Request $request): JsonResponse } $data = $response->json(); + + // 토큰 사용량 기록 + AiTokenHelper::saveGeminiUsage($data, 'gemini-2.5-flash-preview-tts', '나레이션-TTS'); + $inlineData = $data['candidates'][0]['content']['parts'][0]['inlineData'] ?? null; if (! $inlineData || empty($inlineData['data'])) { diff --git a/app/Http/Controllers/RdController.php b/app/Http/Controllers/RdController.php index 4418a935..65a542da 100644 --- a/app/Http/Controllers/RdController.php +++ b/app/Http/Controllers/RdController.php @@ -2,6 +2,7 @@ namespace App\Http\Controllers; +use App\Helpers\AiTokenHelper; use App\Models\HR\Employee; use App\Models\Rd\AiQuotation; use App\Models\Tenants\Department; @@ -438,6 +439,10 @@ public function soundLogoGenerate(Request $request): JsonResponse } $data = $response->json(); + + // 토큰 사용량 기록 + AiTokenHelper::saveGeminiUsage($data, $model, '사운드로고-AI생성'); + $text = $data['candidates'][0]['content']['parts'][0]['text'] ?? ''; // JSON 파싱 (코드블록 제거) @@ -510,6 +515,10 @@ public function soundLogoTts(Request $request): JsonResponse } $data = $response->json(); + + // 토큰 사용량 기록 + AiTokenHelper::saveGeminiUsage($data, 'gemini-2.5-flash-preview-tts', '사운드로고-TTS'); + $inlineData = $data['candidates'][0]['content']['parts'][0]['inlineData'] ?? null; if (! $inlineData || empty($inlineData['data'])) { diff --git a/resources/views/system/ai-token-usage/index.blade.php b/resources/views/system/ai-token-usage/index.blade.php index 5164053f..dc9d40d4 100644 --- a/resources/views/system/ai-token-usage/index.blade.php +++ b/resources/views/system/ai-token-usage/index.blade.php @@ -230,6 +230,8 @@ if (menuName.startsWith('회의록')) return '회의록'; if (menuName.includes('명함')) return '명함OCR'; if (menuName.includes('사업자등록증')) return '사업자등록증OCR'; + if (menuName.startsWith('사운드로고')) return '사운드로고'; + if (menuName.startsWith('나레이션')) return '나레이션'; return menuName; };