import os import requests import spaces import gradio as gr import re api_token = os.environ.get("TOKEN") API_URL = "https://api-inference.huggingface.co/models/meta-llama/Meta-Llama-3-8B-Instruct" headers = {"Authorization": f"Bearer {api_token}"} @spaces.GPU def query(payload): response = requests.post(API_URL, headers=headers, json=payload) return response.json() def analyze_sentiment(text): prompt = f"Tu es un analyseur de sentiment. Ton rôle est d'évaluer le sentiment général du texte fourni. Réponds uniquement par 'positif' ou 'négatif'. N'ajoute aucune explication. Voici le texte à analyser : {text}" output = query({ "inputs": prompt, }) if isinstance(output, list) and len(output) > 0: response = output[0].get('generated_text', '') # Chercher 'positif' ou 'négatif' dans la réponse sentiment = re.search(r'\b(positif|négatif)\b', response.lower()) if sentiment: return sentiment.group() else: return "Sentiment non détecté" else: return "Erreur: Réponse inattendue de l'API" demo = gr.Interface( fn = analyze_sentiment, inputs=["text"], outputs=["text"], ) demo.launch()