Amélioration contraste mobile, traçabilité des IA et filtrage catalogue
Build and Push Docker Image / build-and-push (push) Successful in 35s

This commit is contained in:
xavier committed 2026-08-23 15:09:57 +02:00
1 parent 3e140d7d6f
commit 9fdb2bd73e
7 files changed
+115 -19

No files matched your search

+8 -3
View File
@@ -37,11 +37,12 @@ def executer_synthese_multi_ia(prompt_securise: str, fournisseur: str, mode_paya
def executer_requete_ia(fournisseur: str, prompt: str, mode_payant: bool = False, multi_ia: bool = False, chat_id: str = None):
prompt_securise = f"{SYSTEM_CONFIDENTIALITY_INSTRUCTION}\n\nRequête utilisateur :\n{prompt}"
trace_tentatives = []
if multi_ia or fournisseur in ["openrouter_code", "openrouter_droit"]:
resultat_multi = executer_synthese_multi_ia(prompt_securise, fournisseur, mode_payant, chat_id)
if resultat_multi:
return resultat_multi
return resultat_multi[0], resultat_multi[1], resultat_multi[2], resultat_multi[3], ["🟢 Multi-IA / Synthèse Gemini réussie"]
if fournisseur == "gemini":
ordre_repli = [interroger_gemini, interroger_openrouter, interroger_local_ollama]
@@ -51,6 +52,7 @@ def executer_requete_ia(fournisseur: str, prompt: str, mode_payant: bool = False
ordre_repli = [interroger_local_ollama, interroger_openrouter, interroger_gemini]
for fonction_api in ordre_repli:
nom_tente = fonction_api.__name__.replace("interroger_", "")
try:
if fonction_api.__name__ == "interroger_openrouter":
texte, couleur, nom_fournisseur, nom_modele, _, _ = fonction_api(
@@ -60,9 +62,12 @@ def executer_requete_ia(fournisseur: str, prompt: str, mode_payant: bool = False
texte, couleur, nom_fournisseur, nom_modele = fonction_api(prompt_securise)
if texte:
return texte, couleur, nom_fournisseur, nom_modele
trace_tentatives.append(f"🟢 {nom_tente.upper()} ({nom_modele}) : Succès")
return texte, couleur, nom_fournisseur, nom_modele, trace_tentatives
except Exception as e:
msg_err = str(e).split("-")[0].strip()[:50] # On raccourcit l'erreur pour l'affichage
trace_tentatives.append(f"🔴 {nom_tente.upper()} : Échec ({msg_err})")
log_event("WARNING", "ORCHESTRATEUR", f"Basculement suite à l'échec de {fonction_api.__name__} : {e}")
continue
raise Exception("Tous les fournisseurs d'IA sont indisponibles.")
raise Exception(f"Tous les fournisseurs d'IA ont échoué. Trace : {' | '.join(trace_tentatives)}")