Public Access
21 lines
989 B
Python
21 lines
989 B
Python
import os
|
|
from openai import OpenAI
|
|
from modules.logger import log_event
|
|
|
|
def interroger_mistral(prompt_securise):
|
|
api_key = os.getenv("MISTRAL_API_KEY")
|
|
if not api_key: raise Exception("Clé API Mistral manquante.")
|
|
client = OpenAI(base_url="https://api.mistral.ai/v1", api_key=api_key)
|
|
modeles = ["mistral-large-latest", "open-mistral-nemo"]
|
|
for modele in modeles:
|
|
try:
|
|
resp = client.chat.completions.create(
|
|
model=modele,
|
|
messages=[{"role": "system", "content": "Réponds en français en Markdown."}, {"role": "user", "content": prompt_securise}]
|
|
)
|
|
if resp and resp.choices:
|
|
log_event("INFO", f"MISTRAL-{modele}", "Succès.")
|
|
return resp.choices[0].message.content, "#f59e0b", "MISTRAL", modele
|
|
except Exception as e:
|
|
log_event("WARNING", f"MISTRAL-{modele}", f"Erreur: {e}")
|
|
raise Exception("Tous les modèles Mistral ont échoué.") |