Docfile commited on
Commit
71ffbd5
·
verified ·
1 Parent(s): 0ab0c95

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -6
app.py CHANGED
@@ -37,8 +37,8 @@ print(f"Dossier d'upload configuré : {os.path.abspath(UPLOAD_FOLDER)}")
37
 
38
  # --- Configuration de l'API Gemini ---
39
  # Utilisez les noms de modèles les plus récents auxquels vous avez accès
40
- MODEL_FLASH = 'gemini-1.5-flash-latest'
41
- MODEL_PRO = 'gemini-1.5-pro-latest' # Pro est souvent nécessaire/meilleur pour la vidéo
42
 
43
  # Instruction système pour le modèle
44
  SYSTEM_INSTRUCTION = "Tu es un assistant intelligent et amical nommé Mariam. Tu assistes les utilisateurs au mieux de tes capacités, y compris dans l'analyse de texte, d'images et de vidéos (via upload ou lien YouTube). Tu as été créé par Aenir."
@@ -51,19 +51,20 @@ SAFETY_SETTINGS = [ {"category": c, "threshold": "BLOCK_NONE"} for c in [
51
  GEMINI_CONFIGURED = False
52
  gemini_client = None # Client API pour les opérations sur les fichiers (upload vidéo)
53
 
 
54
  try:
55
  gemini_api_key = os.getenv("GOOGLE_API_KEY")
56
  if not gemini_api_key:
57
  raise ValueError("Clé API GOOGLE_API_KEY manquante dans le fichier .env")
58
 
59
- # Initialise le client pour les opérations sur les fichiers (upload vidéo avec polling)
60
  gemini_client = genai.Client(api_key=gemini_api_key)
61
  # Configure également l'espace de noms global pour GenerativeModel, etc.
 
62
 
63
-
64
- # Vérifie si les modèles requis sont disponibles
65
  print("Vérification des modèles Gemini disponibles...")
66
- models_list = [m.name for m in genai.list_models()]
67
  required_models = [f'models/{MODEL_FLASH}', f'models/{MODEL_PRO}']
68
  if all(model in models_list for model in required_models):
69
  print(f"Configuration Gemini effectuée. Modèles requis trouvés.")
@@ -78,6 +79,8 @@ except Exception as e:
78
  print(f"ERREUR Critique lors de la configuration initiale de Gemini : {e}")
79
  print("L'application fonctionnera sans les fonctionnalités IA.")
80
  gemini_client = None # S'assure que le client est None si la config échoue
 
 
81
 
82
  # --- Fonctions Utilitaires ---
83
 
 
37
 
38
  # --- Configuration de l'API Gemini ---
39
  # Utilisez les noms de modèles les plus récents auxquels vous avez accès
40
+ MODEL_FLASH = 'gemini-2.0-flash'
41
+ MODEL_PRO = 'gemini-2.5-pro-03-25' # Pro est souvent nécessaire/meilleur pour la vidéo
42
 
43
  # Instruction système pour le modèle
44
  SYSTEM_INSTRUCTION = "Tu es un assistant intelligent et amical nommé Mariam. Tu assistes les utilisateurs au mieux de tes capacités, y compris dans l'analyse de texte, d'images et de vidéos (via upload ou lien YouTube). Tu as été créé par Aenir."
 
51
  GEMINI_CONFIGURED = False
52
  gemini_client = None # Client API pour les opérations sur les fichiers (upload vidéo)
53
 
54
+
55
  try:
56
  gemini_api_key = os.getenv("GOOGLE_API_KEY")
57
  if not gemini_api_key:
58
  raise ValueError("Clé API GOOGLE_API_KEY manquante dans le fichier .env")
59
 
60
+ # Initialise le client pour les opérations sur les fichiers ET pour lister les modèles
61
  gemini_client = genai.Client(api_key=gemini_api_key)
62
  # Configure également l'espace de noms global pour GenerativeModel, etc.
63
+ # genai.configure(api_key=gemini_api_key) # Cette ligne peut être redondante si le client est utilisé partout
64
 
65
+ # Vérifie si les modèles requis sont disponibles en utilisant le client
 
66
  print("Vérification des modèles Gemini disponibles...")
67
+ models_list = [m.name for m in gemini_client.models.list()] # <-- LIGNE CORRIGÉE
68
  required_models = [f'models/{MODEL_FLASH}', f'models/{MODEL_PRO}']
69
  if all(model in models_list for model in required_models):
70
  print(f"Configuration Gemini effectuée. Modèles requis trouvés.")
 
79
  print(f"ERREUR Critique lors de la configuration initiale de Gemini : {e}")
80
  print("L'application fonctionnera sans les fonctionnalités IA.")
81
  gemini_client = None # S'assure que le client est None si la config échoue
82
+ GEMINI_CONFIGURED = False # S'assurer qu'il est False en cas d'erreur
83
+
84
 
85
  # --- Fonctions Utilitaires ---
86