import os from dotenv import load_dotenv load_dotenv() # Ensure the key is available for the client if it expects GEMINI_API_KEY if "GOOGLE_API_KEY" in os.environ: os.environ["GEMINI_API_KEY"] = os.environ["GOOGLE_API_KEY"] try: from google import genai from google.genai.errors import APIError except ImportError: # Fallback to google.generativeai if google.genai is not found (older SDK) import google.generativeai as genai print("Using google.generativeai SDK fallback...") try: genai.configure(api_key=os.environ["GOOGLE_API_KEY"]) print("✨ Modèles d'IA disponibles (via google-generativeai) :") print("-------------------------------") for model in genai.list_models(): if 'generateContent' in model.supported_generation_methods: print(f"- **{model.name}**") exit(0) except Exception as e: print(f"Fallback failed: {e}") exit(1) def lister_modeles_disponibles(): """Liste tous les modèles disponibles via l'API Google GenAI.""" try: # Initialisation du client (il lira la clé API automatiquement) client = genai.Client(api_key=os.environ.get("GOOGLE_API_KEY")) print("✨ Modèles d'IA disponibles :") print("-------------------------------") # Récupération de la liste des modèles for model in client.models.list(): # Afficher le nom du modèle et sa description (facultatif) print(f"- **{model.name}**") # print(f" Description: {model.description}") except Exception as e: print(f"Erreur lors de la connexion à l'API : {e}") print("Vérifiez que votre clé API est valide et correctement configurée.") # Exécution de la fonction lister_modeles_disponibles()