2504-16:06OCRagent

This commit is contained in:
Ladebeze66 2025-04-25 16:06:46 +02:00
parent 794dec63e9
commit 3262715111

View File

@ -512,19 +512,40 @@ Structure your analysis clearly with headers and bullet points.
try:
# Obtenir directement le nom normalisé du modèle depuis l'instance LLM
normalized_model_name = getattr(self.llm, "pipeline_normalized_name", None)
if normalized_model_name:
logger.info(f"Utilisation du nom de modèle normalisé depuis LLM: {normalized_model_name}")
# Utiliser getattr avec une valeur par défaut pour éviter les AttributeError
# Si LLM est None, utiliser une valeur par défaut
if not self.llm:
logger.warning("LLM est None, utilisation du nom de modèle par défaut")
normalized_model_name = "llama3-vision-90b-instruct"
else:
# Fallback : utiliser le nom du modèle de l'instance LLM
normalized_model_name = getattr(self.llm, "modele", "llama3-vision-90b-instruct")
# Normaliser manuellement
# Vérifier d'abord pipeline_normalized_name puis modele
normalized_model_name = getattr(self.llm, "pipeline_normalized_name", None)
if not normalized_model_name:
# Fallback : utiliser le nom du modèle de l'instance LLM
normalized_model_name = getattr(self.llm, "modele", None)
if not normalized_model_name:
# Si aucun nom n'est trouvé, utiliser le type de l'objet
normalized_model_name = str(type(self.llm).__name__)
logger.warning(f"Aucun nom de modèle trouvé, utilisation du type: {normalized_model_name}")
# Normaliser manuellement (dans tous les cas)
normalized_model_name = normalized_model_name.replace(".", "-").replace(":", "-").replace("_", "-")
logger.info(f"Fallback : utilisation du nom de modèle normalisé manuellement: {normalized_model_name}")
# S'assurer que le nom n'est pas vide
if not normalized_model_name or normalized_model_name == "None":
normalized_model_name = "llama3-vision-90b-instruct"
logger.info(f"Nom de modèle normalisé pour la sauvegarde: {normalized_model_name}")
# Vérifier que le nom ne contient pas "unknown"
if "unknown" in normalized_model_name.lower():
logger.warning(f"Nom de modèle contient 'unknown', remplacement par nom par défaut")
normalized_model_name = "llama3-vision-90b-instruct"
# Normaliser les noms de modèles dans tous les résultats
for result in self.resultats:
if "model_info" in result and "model" in result["model_info"]:
if "model_info" in result:
if not isinstance(result["model_info"], dict):
result["model_info"] = {}
# Utiliser le nom de modèle normalisé pour tous les résultats
result["model_info"]["model"] = normalized_model_name
logger.debug(f"Nom de modèle défini pour un résultat: {normalized_model_name}")
@ -541,7 +562,7 @@ Structure your analysis clearly with headers and bullet points.
base_dir=None,
is_resultat=True
)
print(f"Sauvegarde groupée de {len(self.resultats)} résultats d'analyse d'images")
logger.info(f"Sauvegarde groupée de {len(self.resultats)} résultats d'analyse d'images avec le modèle {normalized_model_name}")
# Vérifier si les fichiers ont été créés avec le bon nom
from os import path, listdir