pentarosarium commited on
Commit
601d2f9
·
1 Parent(s): ff8256a

back 2 async fix3

Browse files
Files changed (1) hide show
  1. app.py +9 -5
app.py CHANGED
@@ -771,12 +771,15 @@ def create_output_file(df, uploaded_file):
771
 
772
 
773
  @spaces.GPU(duration=300)
774
- def process_and_download(file_bytes):
775
  """Synchronous wrapper for async processing"""
776
  if file_bytes is None:
777
  gr.Warning("Пожалуйста, загрузите файл")
778
  return pd.DataFrame(), None, None, None, "Ожидание файла...", ""
779
 
 
 
 
780
  async def async_process():
781
  detector = None
782
  gpu_manager = GPUTaskManager(
@@ -894,7 +897,8 @@ def process_and_download(file_bytes):
894
  asyncio.set_event_loop(loop)
895
 
896
  return loop.run_until_complete(async_process())
897
-
 
898
  def create_interface():
899
  control = ProcessControl()
900
 
@@ -902,7 +906,7 @@ def create_interface():
902
  # Create state for file data
903
  current_file = gr.State(None)
904
 
905
- gr.Markdown("# AI-анализ мониторинга новостей v.2.1 + ext")
906
 
907
  with gr.Row():
908
  file_input = gr.File(
@@ -965,9 +969,9 @@ def create_interface():
965
 
966
  stop_btn.click(fn=stop_processing, outputs=[progress])
967
 
968
- # Main processing with synchronous function
969
  analyze_btn.click(
970
- fn=process_and_download,
971
  inputs=[file_input],
972
  outputs=[
973
  stats,
 
771
 
772
 
773
  @spaces.GPU(duration=300)
774
+ def process_and_download(file_bytes, control=None):
775
  """Synchronous wrapper for async processing"""
776
  if file_bytes is None:
777
  gr.Warning("Пожалуйста, загрузите файл")
778
  return pd.DataFrame(), None, None, None, "Ожидание файла...", ""
779
 
780
+ if control is None:
781
+ control = ProcessControl()
782
+
783
  async def async_process():
784
  detector = None
785
  gpu_manager = GPUTaskManager(
 
897
  asyncio.set_event_loop(loop)
898
 
899
  return loop.run_until_complete(async_process())
900
+
901
+ # Update the interface creation to pass the control object
902
  def create_interface():
903
  control = ProcessControl()
904
 
 
906
  # Create state for file data
907
  current_file = gr.State(None)
908
 
909
+ gr.Markdown("# AI-анализ мониторинга новостей v.2.2 + extn")
910
 
911
  with gr.Row():
912
  file_input = gr.File(
 
969
 
970
  stop_btn.click(fn=stop_processing, outputs=[progress])
971
 
972
+ # Main processing with control object passed
973
  analyze_btn.click(
974
+ fn=lambda x: process_and_download(x, control),
975
  inputs=[file_input],
976
  outputs=[
977
  stats,