File size: 1,704 Bytes
86baa07
57f8a46
659d84c
86baa07
 
 
 
 
 
 
4e0786f
977dae4
8d8377f
e36f1db
86baa07
 
 
 
07e7e9e
4e0786f
c2fb9d4
86baa07
8d8377f
86baa07
4e0786f
86baa07
d2545fc
 
86baa07
d2545fc
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
from transformers import AutoModelForSequenceClassification, AutoTokenizer, TextClassificationPipeline
import gradio as gr

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": float(prediction[0]['score']), "Informativo" if prediction[0]['label'] == 'LABEL_0' else "Comercial": float(1-prediction[0]['score'])}

# 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
os.environ.getattribute("Colsubsidio")
# Lanzar la interfaz
iface.launch(share = True, auth=("colsubsidio", Colsubsidio))