raulpepe's picture
Create app.py
d949249 verified
from transformers import pipeline
import gradio as gr
# Cargar modelo ligero (ej: tinyllama, phi-2, o bertin)
model_name = "bertin-project/bertin-gpt-j-6B" # Modelo en español
tag_generator = pipeline("text-generation", model=model_name)
def generate_tags(title):
prompt = f"""
Genera 3 etiquetas técnicas en español para este título de TFM.
Formato: tag1, tag2, tag3
Ejemplo: "machine_learning, análisis_de_datos, optimización"
Título: {title}
Etiquetas:"""
result = tag_generator(prompt, max_length=100, do_sample=True, temperature=0.3)
tags = result[0]['generated_text'].split("Etiquetas:")[-1].strip()
return [tag.strip() for tag in tags.split(",")][:3]
# Interfaz Gradio
demo = gr.Interface(
fn=generate_tags,
inputs=gr.Textbox(label="Título del TFM"),
outputs=gr.JSON(label="Etiquetas generadas"),
title="Etiquetador automático de TFMs",
examples=[["Predicción de demanda energética con redes neuronales"]]
)
demo.launch(server_name="0.0.0.0", server_port=7860)