import 'package:google_generative_ai/google_generative_ai.dart'; import 'package:ponshu_room_lite/secrets.dart'; void main() async { final apiKey = Secrets.geminiApiKey; print('Checking models for API Key: ${apiKey.substring(0, 5)}...'); // We can't easily "list" models with the package unless we use the REST API manually or specific helper. // Actually, google_generative_ai doesn't have a 'listModels' helper easily accessible in the logic. // We will brute-force check the likely candidates. final candidates = [ 'gemini-1.5-flash', 'gemini-1.5-flash-001', 'gemini-1.5-flash-latest', 'gemini-1.5-pro', 'gemini-1.5-pro-001', 'gemini-1.0-pro', 'gemini-2.0-flash-exp', 'gemini-2.5-flash', // The one that worked before 'gemini-pro', ]; for (final modelName in candidates) { print('\n----------------------------------------'); print('Testing Model: $modelName'); try { final model = GenerativeModel(model: modelName, apiKey: apiKey); final response = await model.generateContent([Content.text('Test')]); print('✅ AVAILABLE. Response: ${response.text?.trim()}'); } catch (e) { if (e.toString().contains('404') || e.toString().contains('not found')) { print('❌ 404 NOT FOUND'); } else if (e.toString().contains('429') || e.toString().contains('Quota')) { print('⚠️ 429 QUOTA EXCEEDED (But Model Exists!)'); } else { print('❌ ERROR: $e'); } } } }