network-analysis-ai / flows /article_interface.py
odelgi0810
articulo solo word
ec49f9a
Raw
History Blame Contribute Delete
1.36 kB
import gradio as gr
from analysis.article_analysis import analizar_archivo_y_generar_articulo
def interfaz_articulos():
"""
"""
gr.Markdown("## 📰 Generación de Artículos Periodísticos")
archivo_input = gr.File(label="Sube un archivo Word (.docx)")
boton = gr.Button("Generar Artículo", interactive=True)
salida_pdf = gr.File(label="📄 Artículo Generado (.docx)")
mensaje_error = gr.Textbox(label="📢 Estado del Proceso", interactive=False, visible=True)
progreso_texto = gr.Textbox(label="📊 Detalle del Proceso", lines=15, interactive=False)
def wrapper_func(archivo):
salida, mensaje, progreso = None, "", ""
if not archivo:
yield gr.update(interactive=True), None, "❌ Por favor, sube un archivo.", ""
return
yield gr.update(interactive=False), None, "⏳ Procesando archivo... por favor espera.", ""
for salida_, mensaje_, progreso_ in analizar_archivo_y_generar_articulo(archivo):
salida, mensaje, progreso = salida_, mensaje_, progreso_
yield gr.update(interactive=False), salida, mensaje, progreso
yield gr.update(interactive=True), salida, mensaje, progreso
boton.click(
fn=wrapper_func,
inputs=[archivo_input],
outputs=[boton, salida_pdf, mensaje_error, progreso_texto]
)