diff --git a/backend/app/Services/AiInteractiveLabGeneratorService.php b/backend/app/Services/AiInteractiveLabGeneratorService.php index 32d14e8..24fea49 100644 --- a/backend/app/Services/AiInteractiveLabGeneratorService.php +++ b/backend/app/Services/AiInteractiveLabGeneratorService.php @@ -118,7 +118,7 @@ PROMPT; */ private static function callGemini(string $apiKey, string $prompt): string { - $model = 'gemini-2.0-flash'; + $model = Env::get('GEMINI_MODEL') ?: 'gemini-flash-lite-latest'; $url = "https://generativelanguage.googleapis.com/v1beta/models/{$model}:generateContent?key={$apiKey}"; $payload = [ @@ -164,7 +164,7 @@ PROMPT; private static function callGeminiFallback(string $apiKey, string $prompt): string { - $model = 'gemini-1.5-flash'; + $model = Env::get('GEMINI_MODEL') ?: 'gemini-flash-lite-latest'; $url = "https://generativelanguage.googleapis.com/v1beta/models/{$model}:generateContent?key={$apiKey}"; $payload = [ diff --git a/backend/app/Services/AiLessonEnhancerService.php b/backend/app/Services/AiLessonEnhancerService.php index e996b5d..408d400 100644 --- a/backend/app/Services/AiLessonEnhancerService.php +++ b/backend/app/Services/AiLessonEnhancerService.php @@ -122,7 +122,7 @@ class AiLessonEnhancerService $keys = explode(',', $apiKey); $apiKey = trim($keys[0]); - $model = Env::get('GEMINI_MODEL') ?: 'gemini-1.5-flash'; + $model = Env::get('GEMINI_MODEL') ?: 'gemini-flash-lite-latest'; $url = "https://generativelanguage.googleapis.com/v1beta/models/{$model}:generateContent?key={$apiKey}"; $payload = [ diff --git a/backend/app/Services/AiQuestionBankGeneratorService.php b/backend/app/Services/AiQuestionBankGeneratorService.php index faeb6e0..d5d82ea 100644 --- a/backend/app/Services/AiQuestionBankGeneratorService.php +++ b/backend/app/Services/AiQuestionBankGeneratorService.php @@ -253,7 +253,7 @@ class AiQuestionBankGeneratorService $keys = explode(',', $apiKey); $apiKey = trim($keys[0]); - $model = Env::get('GEMINI_MODEL') ?: 'gemini-1.5-flash'; + $model = Env::get('GEMINI_MODEL') ?: 'gemini-flash-lite-latest'; $url = "https://generativelanguage.googleapis.com/v1beta/models/{$model}:generateContent?key={$apiKey}"; $payload = [ diff --git a/backend/app/Services/AiVideoAnalyzerService.php b/backend/app/Services/AiVideoAnalyzerService.php index 87e7795..749f43e 100644 --- a/backend/app/Services/AiVideoAnalyzerService.php +++ b/backend/app/Services/AiVideoAnalyzerService.php @@ -123,7 +123,7 @@ class AiVideoAnalyzerService ]], 'generationConfig' => ['responseMimeType' => 'application/json', 'temperature' => 0.1], ]; - $geminiModel = getenv('GEMINI_MODEL') ?: 'gemini-1.5-flash'; + $geminiModel = getenv('GEMINI_MODEL') ?: 'gemini-flash-lite-latest'; $ch = curl_init('https://generativelanguage.googleapis.com/v1beta/models/' . rawurlencode($geminiModel) . ':generateContent?key=' . rawurlencode($key)); curl_setopt_array($ch, [ CURLOPT_POST => true, @@ -329,7 +329,7 @@ class AiVideoAnalyzerService \"approval_status\": \"approved_official\" }"; - $geminiModel = getenv('GEMINI_MODEL') ?: 'gemini-1.5-flash'; + $geminiModel = getenv('GEMINI_MODEL') ?: 'gemini-flash-lite-latest'; $url = "https://generativelanguage.googleapis.com/v1beta/models/" . rawurlencode($geminiModel) . ":generateContent?key=" . $geminiKey; $payload = [ 'contents' => [['parts' => [['text' => $prompt]]]], @@ -445,7 +445,7 @@ class AiVideoAnalyzerService } قاعدة صارمة: السؤال عند أي دقيقة يسأل فقط عما تم شرحه قبل ذلك التوقيت، وممنوع نهائياً الاستعانة بأي معلومة خارج المنهاج."; - $geminiModel = getenv('GEMINI_MODEL') ?: 'gemini-1.5-flash'; + $geminiModel = getenv('GEMINI_MODEL') ?: 'gemini-flash-lite-latest'; $url = "https://generativelanguage.googleapis.com/v1beta/models/" . rawurlencode($geminiModel) . ":generateContent?key=" . $geminiKey; $payload = [ 'contents' => [ diff --git a/backend/scripts/curriculum_worker.php b/backend/scripts/curriculum_worker.php index a45088c..96a58c0 100644 --- a/backend/scripts/curriculum_worker.php +++ b/backend/scripts/curriculum_worker.php @@ -185,7 +185,7 @@ sleep(4); // Allow custom model from .env (e.g. gemini-1.5-flash or gemini-2.0-flash) $geminiModel = Env::get('GEMINI_MODEL') ?: getenv('GEMINI_MODEL'); if (empty($geminiModel)) { - $geminiModel = "gemini-1.5-flash"; // standard robust model + $geminiModel = "gemini-flash-lite-latest"; } updateState($stateFile, 'analyzing', 75, "جاري إرسال البيانات للنموذج [{$geminiModel}] لاستخراج الدروس والمفاهيم والمعادلات..."); $url = "https://generativelanguage.googleapis.com/v1beta/models/{$geminiModel}:generateContent?key=" . $geminiKey;