gnosticdev commited on
Commit
a80ee2c
verified
1 Parent(s): fc30b48

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +61 -2
app.py CHANGED
@@ -570,11 +570,70 @@ with gr.Blocks(title="馃幀 Generador de Videos IA", theme=gr.themes.Soft()) as d
570
  鈴憋笍 **Tiempo estimado**: 2-5 minutos dependiendo de la duraci贸n del contenido.
571
  """)
572
 
573
- # Ejecutar aplicaci贸n
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
574
  if __name__ == "__main__":
575
  logger.info("馃殌 Iniciando aplicaci贸n Generador de Videos IA...")
 
 
 
 
 
 
 
 
 
 
 
 
576
  demo.launch(
577
  server_name="0.0.0.0",
578
  server_port=7860,
579
- show_api=False
 
 
 
 
 
 
 
 
 
 
 
 
580
  )
 
570
  鈴憋笍 **Tiempo estimado**: 2-5 minutos dependiendo de la duraci贸n del contenido.
571
  """)
572
 
573
+ # Configurar variables de entorno para timeout
574
+ os.environ["GRADIO_SERVER_TIMEOUT"] = "1800" # 30 minutos en segundos
575
+
576
+ # Tambi茅n puedes configurar el timeout espec铆fico para las funciones
577
+ def configure_gradio_interface():
578
+ # Aqu铆 va tu interfaz de Gradio existente
579
+ # Ejemplo de c贸mo configurar timeout en los componentes:
580
+
581
+ with gr.Blocks(
582
+ title="Generador de Videos IA",
583
+ theme=gr.themes.Soft(),
584
+ css="""
585
+ .gradio-container {
586
+ max-width: 1200px !important;
587
+ }
588
+ """
589
+ ) as demo:
590
+
591
+ # Tus componentes de interfaz aqu铆...
592
+
593
+ # Para botones con procesamiento largo, usar queue y timeout
594
+ generate_btn = gr.Button("Generar Video", variant="primary")
595
+
596
+ # Configurar el evento con timeout espec铆fico
597
+ generate_btn.click(
598
+ fn=tu_funcion_generacion_video, # Tu funci贸n de generaci贸n
599
+ inputs=[...], # Tus inputs
600
+ outputs=[...], # Tus outputs
601
+ queue=True, # Habilitar cola
602
+ api_name="generate_video",
603
+ # show_progress=True # Mostrar progreso
604
+ )
605
+
606
+ return demo
607
+
608
+ # Ejecutar aplicaci贸n con configuraci贸n de timeout
609
  if __name__ == "__main__":
610
  logger.info("馃殌 Iniciando aplicaci贸n Generador de Videos IA...")
611
+
612
+ # Crear la demo
613
+ demo = configure_gradio_interface()
614
+
615
+ # Configurar la cola con timeout extendido
616
+ demo.queue(
617
+ concurrency_count=1, # Procesar un video a la vez
618
+ max_size=10, # M谩ximo 10 en cola
619
+ api_open=False
620
+ )
621
+
622
+ # Lanzar con configuraci贸n de timeout
623
  demo.launch(
624
  server_name="0.0.0.0",
625
  server_port=7860,
626
+ show_api=False,
627
+ share=False, # Cambiar a True si necesitas compartir p煤blicamente
628
+ inbrowser=False,
629
+ quiet=False,
630
+ # Configuraciones adicionales de servidor
631
+ enable_queue=True,
632
+ max_threads=40, # M谩s threads para manejar requests
633
+ # Configurar timeout del servidor web
634
+ server_kwargs={
635
+ "timeout_keep_alive": 1800, # 30 minutos
636
+ "timeout_graceful_shutdown": 30,
637
+ "limit_concurrency": 10
638
+ }
639
  )