Public Access
feat: Intégration de l'API OpenRouter, suppression de Groq et mise à jour du README
This commit is contained in:
1 parent
909e2e995a
commit
317ecddc56
5 files changed
+128
-121
No files matched your search
+18
-15
@@ -1,11 +1,8 @@
|
||||
from modules.logger import log_event
|
||||
from modules.ai_gemini import interroger_gemini
|
||||
from modules.ai_groq import interroger_groq
|
||||
from modules.ai_deepseek import interroger_deepseek
|
||||
from modules.ai_mistral import interroger_mistral
|
||||
from modules.ai_huggingface import interroger_huggingface
|
||||
from modules.ai_cloudflare import interroger_cloudflare
|
||||
from modules.ai_local import interroger_local_ollama
|
||||
# Le nouveau module que nous allons créer à la prochaine étape
|
||||
from modules.ai_openrouter import interroger_openrouter
|
||||
|
||||
SYSTEM_CONFIDENTIALITY_INSTRUCTION = (
|
||||
"RÈGLE DE CONFIDENTIALITÉ ABSOLUE : Tu es un assistant intégré à la plateforme privée Aethas38. "
|
||||
@@ -15,21 +12,27 @@ SYSTEM_CONFIDENTIALITY_INSTRUCTION = (
|
||||
)
|
||||
|
||||
def executer_requete_ia(fournisseur, prompt):
|
||||
"""Moteur central gérant les consignes de sécurité et la cascade intelligente."""
|
||||
"""Moteur central gérant les consignes de sécurité et la cascade intelligente vers OpenRouter."""
|
||||
prompt_securise = f"{SYSTEM_CONFIDENTIALITY_INSTRUCTION}\n\nRequête utilisateur :\n{prompt}"
|
||||
|
||||
# 🔄 Ordre de cascade intelligent défini par l'orchestrateur (repli automatique)
|
||||
if fournisseur == "gemini": ordre_repli = [interroger_gemini, interroger_groq, interroger_mistral, interroger_deepseek, interroger_huggingface, interroger_cloudflare, interroger_local_ollama]
|
||||
elif fournisseur == "groq": ordre_repli = [interroger_groq, interroger_mistral, interroger_deepseek, interroger_gemini, interroger_huggingface, interroger_cloudflare, interroger_local_ollama]
|
||||
elif fournisseur == "deepseek": ordre_repli = [interroger_deepseek, interroger_gemini, interroger_groq, interroger_mistral, interroger_local_ollama]
|
||||
elif fournisseur == "mistral": ordre_repli = [interroger_mistral, interroger_groq, interroger_gemini, interroger_huggingface, interroger_local_ollama]
|
||||
elif fournisseur == "huggingface": ordre_repli = [interroger_huggingface, interroger_cloudflare, interroger_groq, interroger_gemini, interroger_local_ollama]
|
||||
elif fournisseur == "cloudflare": ordre_repli = [interroger_cloudflare, interroger_huggingface, interroger_groq, interroger_gemini, interroger_local_ollama]
|
||||
else: ordre_repli = [interroger_local_ollama, interroger_gemini, interroger_groq]
|
||||
# 🔄 Ordre de cascade recentré sur OpenRouter (Gratuit), Gemini et le Local
|
||||
if fournisseur == "gemini":
|
||||
ordre_repli = [interroger_gemini, interroger_openrouter, interroger_local_ollama]
|
||||
elif fournisseur == "openrouter_code":
|
||||
ordre_repli = [interroger_openrouter, interroger_gemini, interroger_local_ollama]
|
||||
elif fournisseur == "openrouter_chat":
|
||||
ordre_repli = [interroger_openrouter, interroger_gemini, interroger_local_ollama]
|
||||
else:
|
||||
ordre_repli = [interroger_local_ollama, interroger_openrouter, interroger_gemini]
|
||||
|
||||
for fonction_api in ordre_repli:
|
||||
try:
|
||||
texte, couleur, nom_fournisseur, nom_modele = fonction_api(prompt_securise)
|
||||
# Transfert du 'fournisseur' cible pour qu'OpenRouter sache s'il doit appeler un modèle Code ou Chat
|
||||
if fonction_api.__name__ == 'interroger_openrouter':
|
||||
texte, couleur, nom_fournisseur, nom_modele = fonction_api(prompt_securise, type_modele=fournisseur)
|
||||
else:
|
||||
texte, couleur, nom_fournisseur, nom_modele = fonction_api(prompt_securise)
|
||||
|
||||
if texte:
|
||||
return texte, couleur, nom_fournisseur, nom_modele
|
||||
except Exception as e:
|
||||
|
||||
Reference in new issue
Block a user