Files changed (1) hide show
  1. app.py +13 -5
app.py CHANGED
@@ -419,7 +419,7 @@ def cleanup_temp_files(directory=None):
419
  except Exception as e:
420
  print(f"Warning: Error during cleanup: {e}")
421
 
422
- def convert_model(model_to_load, save_precision_as, epoch, global_step, reference_model, fp16, output_widget):
423
  """Convert the model between different formats."""
424
  temp_dir = None
425
  history = ConversionHistory()
@@ -453,6 +453,7 @@ def convert_model(model_to_load, save_precision_as, epoch, global_step, referenc
453
  args.global_step = global_step
454
  args.reference_model = reference_model
455
  args.fp16 = fp16
 
456
 
457
  update_progress(output_widget, "πŸ” Validating input model...", 10)
458
  args.model_to_save = increment_filename(os.path.splitext(args.model_to_load)[0] + ".safetensors")
@@ -618,7 +619,7 @@ def get_auto_optimization_suggestions(model_path: str, precision: str, available
618
 
619
  return suggestions
620
 
621
- def upload_to_huggingface(model_path, hf_token, orgs_name, model_name, make_private, output_widget):
622
  """Uploads a model to the Hugging Face Hub."""
623
  try:
624
  # Login to Hugging Face
@@ -658,15 +659,15 @@ def upload_to_huggingface(model_path, hf_token, orgs_name, model_name, make_priv
658
 
659
  # ---------------------- GRADIO INTERFACE ----------------------
660
 
661
- def main(model_to_load, save_precision_as, epoch, global_step, reference_model, fp16, hf_token, orgs_name, model_name, make_private):
662
  """Main function orchestrating the entire process."""
663
  output = gr.Markdown()
664
 
665
  # Create tempdir, will only be there for the function
666
  with tempfile.TemporaryDirectory() as output_path:
667
- conversion_output = convert_model(model_to_load, save_precision_as, epoch, global_step, reference_model, fp16, output)
668
 
669
- upload_output = upload_to_huggingface(output_path, hf_token, orgs_name, model_name, make_private, output)
670
 
671
  # Return a combined output
672
  return f"{conversion_output}\n\n{upload_output}"
@@ -750,6 +751,12 @@ with gr.Blocks(css="#main-container { display: flex; flex-direction: column; hei
750
  info="Load model in half precision (recommended for CPU usage)"
751
  )
752
 
 
 
 
 
 
 
753
  # Hugging Face Upload Section
754
  gr.Markdown("### Upload to Hugging Face (Optional)")
755
 
@@ -790,6 +797,7 @@ with gr.Blocks(css="#main-container { display: flex; flex-direction: column; hei
790
  global_step,
791
  reference_model,
792
  fp16,
 
793
  hf_token,
794
  orgs_name,
795
  model_name,
 
419
  except Exception as e:
420
  print(f"Warning: Error during cleanup: {e}")
421
 
422
+ def convert_model(model_to_load, save_precision_as, epoch, global_step, reference_model, fp16, use_xformers, hf_token, orgs_name, model_name, make_private):
423
  """Convert the model between different formats."""
424
  temp_dir = None
425
  history = ConversionHistory()
 
453
  args.global_step = global_step
454
  args.reference_model = reference_model
455
  args.fp16 = fp16
456
+ args.use_xformers = use_xformers
457
 
458
  update_progress(output_widget, "πŸ” Validating input model...", 10)
459
  args.model_to_save = increment_filename(os.path.splitext(args.model_to_load)[0] + ".safetensors")
 
619
 
620
  return suggestions
621
 
622
+ def upload_to_huggingface(model_path, hf_token, orgs_name, model_name, make_private):
623
  """Uploads a model to the Hugging Face Hub."""
624
  try:
625
  # Login to Hugging Face
 
659
 
660
  # ---------------------- GRADIO INTERFACE ----------------------
661
 
662
+ def main(model_to_load, save_precision_as, epoch, global_step, reference_model, fp16, use_xformers, hf_token, orgs_name, model_name, make_private):
663
  """Main function orchestrating the entire process."""
664
  output = gr.Markdown()
665
 
666
  # Create tempdir, will only be there for the function
667
  with tempfile.TemporaryDirectory() as output_path:
668
+ conversion_output = convert_model(model_to_load, save_precision_as, epoch, global_step, reference_model, fp16, use_xformers, output)
669
 
670
+ upload_output = upload_to_huggingface(output_path, hf_token, orgs_name, model_name, make_private)
671
 
672
  # Return a combined output
673
  return f"{conversion_output}\n\n{upload_output}"
 
751
  info="Load model in half precision (recommended for CPU usage)"
752
  )
753
 
754
+ use_xformers = gr.Checkbox(
755
+ label="Enable Memory-Efficient Attention",
756
+ value=False,
757
+ info="Enable xFormers for reduced memory usage during conversion"
758
+ )
759
+
760
  # Hugging Face Upload Section
761
  gr.Markdown("### Upload to Hugging Face (Optional)")
762
 
 
797
  global_step,
798
  reference_model,
799
  fp16,
800
+ use_xformers,
801
  hf_token,
802
  orgs_name,
803
  model_name,