Download app.py from rdlf/susenho: direct link, hf CLI and curl.
- Browser
- Download file 1.54 kB
-
https://huggingface.co/spaces/rdlf/susenho/resolve/main/app.py
- Command line
-
hf download hf://spaces/rdlf/susenho/app.py
-
curl -L -o app.py https://huggingface.co/spaces/rdlf/susenho/resolve/main/app.py
1.54 kB
| import gradio as gr | |
| from transformers import pipeline | |
| import tempfile | |
| generador = pipeline("text-generation", model="IIC/MEL", trust_remote_code=True) | |
| def procesar_tarea(archivos, prompt): | |
| if not prompt: | |
| return "", None, "Debes escribir un prompt" | |
| texto = "" | |
| if archivos: | |
| for fpath in archivos: | |
| try: | |
| with open(fpath, "r", encoding="utf-8") as f: | |
| texto += f.read() + "\n\n" | |
| except Exception: | |
| pass # evita fallos si no se puede leer algún archivo | |
| entrada = prompt + "\n\n" + texto | |
| salida = generador(entrada, max_new_tokens=512, do_sample=False) | |
| respuesta = salida[0].get("generated_text", "") | |
| tmp = tempfile.NamedTemporaryFile(delete=False, suffix=".txt", mode="w", encoding="utf-8") | |
| tmp.write(respuesta) | |
| tmp.close() | |
| return respuesta, tmp.name, None | |
| demo = gr.Interface( | |
| fn=procesar_tarea, | |
| inputs=[ | |
| gr.File(label="Sube documentos (.txt, .md, .pdf)", file_count="multiple", type="filepath"), | |
| 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", interactive=False) | |
| ], | |
| title="Interfaz MEL con Gradio", | |
| description="Sube tus documentos (opcional), escribe un prompt y recibe la salida generada. Puedes copiar el texto o descargarlo." | |
| ) | |
| if __name__ == "__main__": | |
| demo.launch(share=True) | |