crrodrvi's picture
Update app.py
db14aa5 verified
import gradio as gr
import torch
from transformers import AutoConfig, AutoModelForSequenceClassification, AutoTokenizer
model_dir = "crrodrvi/beto_lectura_facil_clasif"
# Configuración del modelo y carga del tokenizer
config = AutoConfig.from_pretrained(model_dir, num_labels=2, finetuning_task="text-classification")
tokenizer = AutoTokenizer.from_pretrained(model_dir)
model = AutoModelForSequenceClassification.from_pretrained(model_dir, config=config)
# Etiquetas personalizadas
id2label = {0: "Difícil", 1: "Fácil"}
def inference(input_text):
inputs = tokenizer(
input_text,
max_length=512,
truncation=True,
padding="max_length",
return_tensors="pt",
)
with torch.no_grad():
logits = model(**inputs).logits
predicted_class_id = logits.argmax().item()
output = id2label[predicted_class_id]
return output
# Crear la interfaz de Gradio
demo = gr.Interface(
fn=inference,
inputs=gr.Textbox(label="Input Text", placeholder="Introduce el texto aquí...", lines=10),
outputs=gr.Textbox(label="Output Label"),
examples=[
["En París se hace un desfile militar con aviones celebrando ese día. Además en las embajadas francesas de todo el mundo se realizan actos.", 1],
["Según Clean Cities, las ZBE son ampliamente utilizadas en otros países de Europa con el fin de mejorar la calidad del aire, salvaguardar la salud pública y abordar la crisis climática. Además, estas medidas fomentan la adopción de transportes limpios, activos y sostenibles, apoyan la transición hacia energías más limpias, reducen la contaminación sonora y contribuyen a la reorganización y naturalización de los entornos urbanos.", 0],
],
title="BETO Clasificación lectura fácil-difícil",
)
# Lanzar la aplicación
demo.launch(debug=True)