Spaces:
Runtime error
Runtime error
File size: 1,481 Bytes
d46fa4f fb64d41 4ffc5f1 e5c1099 f27292a 2da4e53 e5c1099 efba1b1 4ffc5f1 867427f 62f2a72 2da4e53 d7b565c 2da4e53 d7b565c 2da4e53 d7b565c 1a67d0c fb64d41 d7b565c efba1b1 fb64d41 3db2cf3 3d582b5 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
import gradio as gr
import requests
import spaces
import os
api_key = os.getenv("TOKEN")
API_URL = "https://api-inference.huggingface.co/models/distilbert-base-uncased-finetuned-sst-2-english"
headers = {"Authorization": "Bearer api_key"}
@spaces.GPU
def analyze_sentiment(text):
payload = {"inputs": text}
try:
response = requests.post(API_URL, headers=headers, json=payload)
response.raise_for_status()
result = response.json()
if isinstance(result, list) and len(result) > 0 and isinstance(result[0], list):
# Le modèle renvoie généralement une liste de scores pour les étiquettes NEGATIVE et POSITIVE
sentiment_scores = result[0]
sentiment = "heureux" if sentiment_scores[1] > sentiment_scores[0] else "malheureux"
return sentiment
else:
return "Erreur: Format de réponse inattendu"
except requests.exceptions.RequestException as e:
return f"Erreur de requête: {str(e)}"
except Exception as e:
return f"Erreur inattendue: {str(e)}"
def gradio_interface(input_text):
return analyze_sentiment(input_text)
iface = gr.Interface(
fn=gradio_interface,
inputs=gr.Textbox(lines=3, placeholder="Entrez votre texte ici..."),
outputs=gr.Label(num_top_classes=1),
title="Analyseur de Sentiment",
description="Entrez un texte pour déterminer si le sentiment est 'heureux' ou 'malheureux'."
)
iface.launch() |