Spaces:
Runtime error
Runtime error
import gradio as gr | |
from pysentimiento import create_analyzer | |
sentiment_analyzer = create_analyzer(task="sentiment", lang="es") | |
emotion_analyzer = create_analyzer(task="emotion", lang="es") | |
def get_texto_con_porcentaje(decimal): | |
return "{:.1%}".format(decimal) | |
def get_sentiment(input_text): | |
analyzer_resultado = sentiment_analyzer.predict(input_text) | |
resultado_positivo = get_texto_con_porcentaje(analyzer_resultado.probas["POS"]) | |
resultado_negativo = get_texto_con_porcentaje(analyzer_resultado.probas["NEG"]) | |
resultado_neutro = get_texto_con_porcentaje(analyzer_resultado.probas["NEU"]) | |
return resultado_positivo, resultado_negativo, resultado_neutro | |
def get_emotions(input_text): | |
analyzer_resultado = emotion_analyzer.predict(input_text) | |
return analyzer_resultado.output | |
def get_analisis(input_text): | |
resultado_positivo, resultado_negativo, resultado_neutro = get_sentiment(input_text) | |
resultado_emociones = get_emotions(input_text) | |
return resultado_positivo, resultado_negativo, resultado_neutro, resultado_emociones | |
description =""" | |
<p> | |
<center> | |
Demo análisis de sentimientos y emociones, el objetivo es indicar el sentimiento positivo, negativo o neutro, y la emoción identificada a partir de un texto. | |
<img src="https://raw.githubusercontent.com/All-Aideas/sea_apirest/main/logo.png" alt="logo" width="250"/> | |
</center> | |
</p> | |
""" | |
article = "<p style='text-align: center'><a href='http://allaideas.com/index.html' target='_blank'>Análisis de sentimiento y emoción: Link para más info</a> </p>" | |
examples = [['Estoy muy feliz'], ['No me lo esperaba. Muchas gracias'],['No ganamos, que rabia']] | |
input_1 = gr.inputs.Textbox(label="Texto a analizar") | |
output_1 = gr.outputs.Textbox(label="Resultado sentimiento positivo") | |
output_2 = gr.outputs.Textbox(label="Resultado sentimiento negativo") | |
output_3 = gr.outputs.Textbox(label="Resultado sentimiento nuetro") | |
output_4 = gr.outputs.Textbox(label="Resultado emoción identificada") | |
iface = gr.Interface(fn=get_analisis, | |
inputs=input_1, | |
outputs=[output_1, output_2, output_3, output_4], | |
description=description, | |
article=article, | |
examples=examples, | |
title="Análisis de Sentimiento y Emoción en Español") | |
iface.launch(debug=True) | |