Interfaz
Browse files- app.py +33 -0
- presentation.py +23 -0
- requirements.txt +3 -0
app.py
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import gradio as gr
|
| 2 |
+
from datasets import load_dataset
|
| 3 |
+
from transformers import pipeline
|
| 4 |
+
from presentation import main_title, examples
|
| 5 |
+
|
| 6 |
+
model_name= 'hackathon-pln-es/electricidad-small-discriminator-finetuned-clasificacion-comentarios-suicidas'
|
| 7 |
+
|
| 8 |
+
def clasificar_comentarios(comentario):
|
| 9 |
+
cls= pipeline("text-classification", model=model_name)
|
| 10 |
+
return cls(comentario)[0]['label']
|
| 11 |
+
|
| 12 |
+
if __name__ == "__main__":
|
| 13 |
+
gr.Interface(
|
| 14 |
+
fn=clasificar_comentarios,
|
| 15 |
+
inputs=[
|
| 16 |
+
gr.inputs.Textbox(
|
| 17 |
+
lines=10,
|
| 18 |
+
label="Comentario a analizar:",
|
| 19 |
+
placeholder="Ingrese el comentario por favor...",
|
| 20 |
+
optional=False,
|
| 21 |
+
),
|
| 22 |
+
],
|
| 23 |
+
outputs=[
|
| 24 |
+
gr.outputs.HTML(
|
| 25 |
+
label="Resultado:"
|
| 26 |
+
)
|
| 27 |
+
],
|
| 28 |
+
description=main_title,
|
| 29 |
+
examples=examples,
|
| 30 |
+
theme="dark-huggingface",
|
| 31 |
+
thumbnail="None",
|
| 32 |
+
css="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css",
|
| 33 |
+
).launch()
|
presentation.py
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
main_title = """
|
| 2 |
+
<a href="https://unl.edu.ec/">
|
| 3 |
+
<img src="http://drive.google.com/uc?export=view&id=19VTXgT7jDdPvXtpY3HaxRj7NdG6w4RYY" style="max-width: 100%; max-height: 10%; width: 1920px; height: 280px; object-fit: fill">
|
| 4 |
+
</a>
|
| 5 |
+
<h1 style="text-color:white">Clasificador de comentarios Suicidas</h1>
|
| 6 |
+
<p>La siguiente aplicación ha sido diseñada con la intención de clasificar un comentario en "Suicida" y "No Suicida", con el fin de que para futuros trabajos e investigaciones se lo pueda implementar en una situación real para prevenir los casos de suicidio.</p>
|
| 7 |
+
"""
|
| 8 |
+
|
| 9 |
+
|
| 10 |
+
examples = [
|
| 11 |
+
[
|
| 12 |
+
"No entiendo por qué no soy lo suficientemente bueno. Sé que hay muchas personas en este Subreddit que están en situaciones increíblemente difíciles y siento que mi problema es tan pequeño en comparación. Sin embargo, es algo que me pesa y me siento tan bajo que quiero morir. Soy una mujer de 30 años y nunca he sido afortunada cuando se trata de citas o relaciones, sin embargo, conocí a alguien el año pasado con el que sentí que estaba conectado. Nos divertimos mucho juntos y me encantaba estar a su alrededor, pero sentí que no era lo suficientemente buena como para ser su novia. Me siento como una idiota al ponerme en esta situación, pero no veo ninguna esperanza."
|
| 13 |
+
],
|
| 14 |
+
[
|
| 15 |
+
"Me corté por primera vez hoy. Solo para sentirme un poco mejor. No puedo perdonarme ahora. Estoy acabando con todo poco a poco. Estoy tan inestable en este momento, incluso en la medicación, la terapia y el ejercicio. Sé que puedo llegar a mis amigos para apoyar y no quiero cargarlos. Solo tengo miedo, y solo estoy solo en este momento. No quiero morir, pero la muerte se ve más y más favorable. Solo quiero que la culpa y el dolor innecesarias desaparezcan."
|
| 16 |
+
],
|
| 17 |
+
[
|
| 18 |
+
"Siento que solo estoy viviendo debido a otras personas, no porque tenga una voluntad de vivir. La idea de matarme me da paz. Todo lo que quiero hacer es terminar mi vida. A cualquiera que lea esto, gracias."
|
| 19 |
+
],
|
| 20 |
+
[
|
| 21 |
+
"He estado enojado y triste sin ninguna razón válida, y solo quiero terminarlo. Sólo he estado enojado con todo en mi vida y es demasiado. Estoy harto de despertarse y estar enojado todo el día sin nada. Literalmente, nada en mi vida vale la pena enojarse, pero estoy irracionalmente enojado. Quiero dejarlo salir, pero no quiero lastimar a la gente en mi vida. Así que simplemente eliminaré lo que puedo controlar, a mí. Espero que el mundo sea mejor sin mí."
|
| 22 |
+
],
|
| 23 |
+
]
|
requirements.txt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
torch
|
| 2 |
+
transformers
|
| 3 |
+
gradio
|