import gradio as gr from transformers import pipeline # Pipeline de generación genérica que acepta prompts generador = pipeline("text-generation", model="IIC/MEL", trust_remote_code=True) def procesar_tarea(archivos, prompt): if not prompt: return "", "Debes escribir un prompt" texto = "" for f in archivos: try: texto += f.read().decode("utf‑8") + "\n\n" except: texto += "" entrada = prompt + "\n\n" + texto salida = generador(entrada, max_new_tokens=512, do_sample=False) respuesta = salida[0].get("generated_text", "") return respuesta, respuesta demo = gr.Interface( fn=procesar_tarea, inputs=[ gr.File(label="Sube documentos (.txt, .md, .pdf)", file_count="multiple", type="file"), gr.Textbox(label="Prompt (instrucción)", lines=3, placeholder="Ej. Resume este texto, explica esto...") ], outputs=[ gr.Textbox(label="Resultado (para copiar)", lines=10), gr.File(label="Descargar resultado", file_name="resultado.txt") ], title="Interfaz MEL con Gradio", description="Sube tus documentos, escribe un prompt y recibe la salida generada. Puedes copiar el texto o descargarlo." ) if __name__ == "__main__": demo.launch()