Spaces:
Sleeping
Sleeping
from transformers import AutoModelForSequenceClassification, AutoTokenizer, TextClassificationPipeline | |
import gradio as gr | |
import random | |
model_id = "hedtorresca/Multilingual-MiniLM-L12-H384-fine-tunning2" | |
model = AutoModelForSequenceClassification.from_pretrained(model_id) | |
tokenizer = AutoTokenizer.from_pretrained(model_id, return_dict=True ) | |
pipe = TextClassificationPipeline(model=model, tokenizer=tokenizer, add_special_tokens=True, max_length= 512, truncation= True) | |
# Definir la funci贸n de inferencia | |
def classify_message(ues_detallada, medio_de_comunicacion, asunto_o_copy): | |
combined = f"{ues_detallada.upper()} por {medio_de_comunicacion}. {asunto_o_copy}" | |
prediction = pipe(combined) | |
return "Comercial" if prediction[0]['label'] == 'LABEL_0' else "Informativo" | |
# Crear la interfaz de Gradio | |
iface = gr.Interface( | |
fn=classify_message, | |
inputs=[ | |
gr.Textbox(lines=1, placeholder="Escribe la UES aqu铆.", label="UES"), | |
gr.Radio(["EMAIL", "SMS", "WHATSAPP"], label="Canal de Comunicaci贸n"), | |
gr.Textbox(lines=2, placeholder="Escribe el asunto o copy del mensaje aqu铆.", label="Asunto o Copy") | |
], | |
outputs= gr.Label( label="Tipo de Campa帽a"), | |
title="Clasificador de Campa帽as", | |
description="Describe la unidad de negocio, el canal de comunicaci贸n y el copy de la campa帽a para clasificar si es comercial o informativo." | |
) | |
import os | |
colsubsidio = os.getenv("colsubsidio") | |
# Lanzar la interfaz | |
iface.launch(share = True, auth=("colsubsidio", colsubsidio)) |