Public Access
fix: Migration vers le nouveau SDK Google GenAI et mise à jour des dépendances
Build and Push Docker Image / build-and-push (push) Successful in 2m4s
Build and Push Docker Image / build-and-push (push) Successful in 2m4s
This commit is contained in:
1 parent
5a4e7dd094
commit
a10c854b2b
11 files changed
+2122
-100
No files matched your search
+21
-11
@@ -10,21 +10,31 @@ client = OpenAI(
|
||||
api_key=os.getenv("OPENROUTER_API_KEY", "VOTRE_CLE_ICI") # À définir dans le .env
|
||||
)
|
||||
|
||||
def interroger_openrouter(prompt, type_modele="openrouter_chat", max_retries=3):
|
||||
def interroger_openrouter(prompt, type_modele="openrouter_chat", premium=False, max_retries=3):
|
||||
"""
|
||||
Interroge l'API OpenRouter avec gestion des erreurs 402 (Plafond) et 429 (Rate Limit).
|
||||
Sélectionne un modèle gratuit selon l'intention (Chat ou Code).
|
||||
Bascule entre les modèles gratuits et premiums (VIP/Payant) selon le choix utilisateur.
|
||||
"""
|
||||
|
||||
# Sélection des modèles 100% gratuits et performants sur OpenRouter
|
||||
if type_modele == "openrouter_code":
|
||||
nom_modele_api = "qwen/qwen-2.5-coder-32b-instruct:free"
|
||||
nom_affichage = "OpenRouter (Qwen Coder - Gratuit)"
|
||||
couleur = "#10a37f" # Vert émeraude
|
||||
# Sélection dynamique des modèles selon l'abonnement
|
||||
if premium:
|
||||
if type_modele == "openrouter_code":
|
||||
nom_modele_api = "anthropic/claude-3.5-sonnet"
|
||||
nom_affichage = "OpenRouter (Claude 3.5 Sonnet - Premium)"
|
||||
couleur = "#d97757" # Orange Anthropic
|
||||
else:
|
||||
nom_modele_api = "openai/gpt-4o-mini"
|
||||
nom_affichage = "OpenRouter (GPT-4o Mini - Premium)"
|
||||
couleur = "#10a37f" # Vert OpenAI
|
||||
else:
|
||||
nom_modele_api = "meta-llama/llama-3.1-8b-instruct:free"
|
||||
nom_affichage = "OpenRouter (Llama 3.1 - Gratuit)"
|
||||
couleur = "#4a90e2" # Bleu clair
|
||||
if type_modele == "openrouter_code":
|
||||
nom_modele_api = "qwen/qwen-2.5-coder-32b-instruct:free"
|
||||
nom_affichage = "OpenRouter (Qwen Coder - Gratuit)"
|
||||
couleur = "#4a90e2" # Bleu clair
|
||||
else:
|
||||
nom_modele_api = "meta-llama/llama-3.1-8b-instruct:free"
|
||||
nom_affichage = "OpenRouter (Llama 3.1 - Gratuit)"
|
||||
couleur = "#4a90e2" # Bleu clair
|
||||
|
||||
for tentative in range(max_retries):
|
||||
try:
|
||||
@@ -42,7 +52,7 @@ def interroger_openrouter(prompt, type_modele="openrouter_chat", max_retries=3):
|
||||
time.sleep(temps_attente)
|
||||
if tentative == max_retries - 1:
|
||||
log_event("ERROR", "OPENROUTER", "Échec définitif suite aux limites de taux (429).")
|
||||
raise Exception("Service temporairement saturé. Veuillez réessayer.")
|
||||
raise Exception("Service temporairement saturé sur OpenRouter. Veuillez réessayer.")
|
||||
|
||||
except openai.APIStatusError as e:
|
||||
if e.status_code == 402:
|
||||
|
||||
Reference in new issue
Block a user