Testbakend / app.py
HuggyGuyJo01's picture
Update app.py
0f75fb5 verified
import gradio as gr
import requests
import json
import os
from dotenv import load_dotenv
# Charger les variables d'environnement
load_dotenv()
HUGGINGFACE_API_URL = os.getenv("HUGGINGFACE_API_URL") # URL de l'API Hugging Face
HUGGINGFACE_API_KEY = os.getenv("HUGGINGFACE_API_KEY") # Clé API de Hugging Face
# Fonction pour obtenir les paramètres du dashboard
def get_dashboard_params():
response = requests.get("http://your_dashboard_api/params") # Remplacez par l'URL de votre API dashboard
if response.status_code == 200:
return response.json()
else:
return {}
def process_message(message, history):
# Récupérer les paramètres du dashboard
params = get_dashboard_params()
# Utilisation d'un modèle NLP pour générer une réponse
headers = {
"Authorization": f"Bearer {HUGGINGFACE_API_KEY}",
"Content-Type": "application/json"
}
payload = {
"inputs": message,
"parameters": params.get("model_settings", {})
}
response = requests.post(HUGGINGFACE_API_URL, headers=headers, data=json.dumps(payload))
if response.status_code == 200:
response_data = response.json()
return response_data.get("generated_text", "Désolé, je n'ai pas pu traiter votre demande.")
else:
return "Erreur de communication avec le modèle."
# Créer l'interface Gradio
with gr.Blocks() as demo:
chatbot = gr.Chatbot()
msg = gr.Textbox()
clear = gr.Button("Clear")
msg.submit(process_message, [msg, chatbot], [msg, chatbot])
clear.click(lambda: None, None, chatbot, queue=False)
if __name__ == "__main__":
demo.launch()