ASesYusuf1 commited on
Commit
efe5936
·
verified ·
1 Parent(s): 92e9644

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +10 -6
app.py CHANGED
@@ -488,7 +488,6 @@ def auto_ensemble_process(audio, model_keys, seg_size=128, overlap=0.1, out_form
488
  while retry_count <= max_retries:
489
  try:
490
  progress((model_idx + 0.1) / total_models, desc=f"Loading {model_key} for chunk {chunk_idx}")
491
- # Check if model is cached
492
  model_path = os.path.join(model_dir, model)
493
  if not os.path.exists(model_path):
494
  logger.info(f"Model {model} not cached, will download")
@@ -522,14 +521,13 @@ def auto_ensemble_process(audio, model_keys, seg_size=128, overlap=0.1, out_form
522
  if retry_count > max_retries:
523
  logger.error(f"Max retries reached for {model_key} chunk {chunk_idx}, skipping")
524
  break
525
- time.sleep(1) # Reduced delay to minimize overhead
526
  finally:
527
  separator = None
528
  gc.collect()
529
  if torch.cuda.is_available():
530
  torch.cuda.empty_cache()
531
  logger.info(f"Cleared CUDA cache after {model_key} chunk {chunk_idx}")
532
- # Yield control to ZeroGPU scheduler
533
  time.sleep(0.1)
534
  progress(0.8, desc="Combining stems...")
535
  for model_key, stems_dict in model_stems.items():
@@ -565,13 +563,19 @@ def auto_ensemble_process(audio, model_keys, seg_size=128, overlap=0.1, out_form
565
  progress(0.9, desc="Running ensemble...")
566
  logger.info(f"Running ensemble with args: {ensemble_args}")
567
  try:
568
- ensemble_files(ensemble_args)
569
- logger.info("Ensemble completed")
 
 
570
  progress(1.0, desc="Ensemble completed")
571
  return output_file, f"Ensemble completed with {ensemble_method}, excluded: {exclude_stems if exclude_stems else 'None'}"
572
  except Exception as e:
573
  logger.error(f"Ensemble processing error: {e}")
574
- raise RuntimeError(f"Ensemble processing error: {e}")
 
 
 
 
575
  except Exception as e:
576
  logger.error(f"Ensemble error: {e}")
577
  if "ZeroGPU" in str(e) or "aborted" in str(e).lower():
 
488
  while retry_count <= max_retries:
489
  try:
490
  progress((model_idx + 0.1) / total_models, desc=f"Loading {model_key} for chunk {chunk_idx}")
 
491
  model_path = os.path.join(model_dir, model)
492
  if not os.path.exists(model_path):
493
  logger.info(f"Model {model} not cached, will download")
 
521
  if retry_count > max_retries:
522
  logger.error(f"Max retries reached for {model_key} chunk {chunk_idx}, skipping")
523
  break
524
+ time.sleep(1)
525
  finally:
526
  separator = None
527
  gc.collect()
528
  if torch.cuda.is_available():
529
  torch.cuda.empty_cache()
530
  logger.info(f"Cleared CUDA cache after {model_key} chunk {chunk_idx}")
 
531
  time.sleep(0.1)
532
  progress(0.8, desc="Combining stems...")
533
  for model_key, stems_dict in model_stems.items():
 
563
  progress(0.9, desc="Running ensemble...")
564
  logger.info(f"Running ensemble with args: {ensemble_args}")
565
  try:
566
+ ensemble.ensemble_files(ensemble_args)
567
+ if not os.path.exists(output_file):
568
+ raise RuntimeError(f"Ensemble output file not created: {output_file}")
569
+ logger.info(f"Ensemble completed, output: {output_file}")
570
  progress(1.0, desc="Ensemble completed")
571
  return output_file, f"Ensemble completed with {ensemble_method}, excluded: {exclude_stems if exclude_stems else 'None'}"
572
  except Exception as e:
573
  logger.error(f"Ensemble processing error: {e}")
574
+ if "numpy" in str(e).lower() or "copy" in str(e).lower():
575
+ error_msg = f"NumPy compatibility error: {e}. Try installing numpy<2.0.0 or contact support."
576
+ else:
577
+ error_msg = f"Ensemble processing error: {e}"
578
+ raise RuntimeError(error_msg)
579
  except Exception as e:
580
  logger.error(f"Ensemble error: {e}")
581
  if "ZeroGPU" in str(e) or "aborted" in str(e).lower():