[X] I have searched the existing issues and checked the recent builds/commits
What happened?
@lshqqytiger , one issue i noticed with latest changes if i don't manually delete the existing models (unet specifically) in stable-diffusion-webui-directml\models\ONNX and run the "Download & Optimize..." step from Olive UI, the optimization step fails with error during "saving optimized model" step. could we make sure we can force overwrite with new model or delete the old one before starting this step.
Saving unoptimized models...
Error completing request
Arguments: ('runwayml/stable-diffusion-v1-5', '', 'vae', 'stable-diffusion-v1-5', 'stable-diffusion-v1-5', True, True, False, True, True, True, True, 768, False, '', '', '') {}
Traceback (most recent call last):
File "C:\Users\ml-admin\Documents\Hisham\auto1111_olive\stable-diffusion-webui-directml\modules\call_queue.py", line 57, in f
res = list(func(*args, kwargs))
File "C:\Users\ml-admin\Documents\Hisham\auto1111_olive\stable-diffusion-webui-directml\modules\call_queue.py", line 36, in f
res = func(*args, *kwargs)
File "C:\Users\ml-admin\Documents\Hisham\auto1111_olive\stable-diffusion-webui-directml\modules\sd_olive_ui.py", line 55, in optimize_from_onnx
optimize(unoptimized_dir, optimized_dir, pipeline, vae_id, vae_subfolder, safety_checker, text_encoder, text_encoder_2, unet, vae_decoder, vae_encoder, use_fp16, sample_size if hw_synced else sample_size[0], sample_size if hw_synced else sample_size[1], olive_merge_lora, olive_merge_lora_inputs)
File "C:\Users\ml-admin\Documents\Hisham\auto1111_olive\stable-diffusion-webui-directml\modules\sd_olive_ui.py", line 162, in optimize
onnx_pipeline.save_pretrained(unoptimized_dir)
File "C:\Users\ml-admin\Documents\Hisham\auto1111_olive\stable-diffusion-webui-directml\venv\lib\site-packages\diffusers\pipelines\pipeline_utils.py", line 655, in save_pretrained
save_method(os.path.join(save_directory, pipeline_component_name), save_kwargs)
File "C:\Users\ml-admin\Documents\Hisham\auto1111_olive\stable-diffusion-webui-directml\venv\lib\site-packages\diffusers\pipelines\onnx_utils.py", line 130, in save_pretrained
self._save_pretrained(save_directory, **kwargs)
File "C:\Users\ml-admin\Documents\Hisham\auto1111_olive\stable-diffusion-webui-directml\venv\lib\site-packages\diffusers\pipelines\onnx_utils.py", line 106, in _save_pretrained
shutil.copyfile(src_path, dst_path)
File "C:\Users\ml-admin\miniconda3\envs\Auto1111_olive\lib\shutil.py", line 256, in copyfile
with open(dst, 'wb') as fdst:
OSError: [Errno 22] Invalid argument: 'C:\Users\ml-admin\Documents\Hisham\auto1111_olive\stable-diffusion-webui-directml\models\ONNX\stable-diffusion-v1-5\unet\weights.pb'
work around is to delete the folder that had previous optimized onnx model and rerun the optimize olive step
Steps to reproduce the problem
Go to Olive tab->Optimize ONNX Model->model id=stabilityai/stable-diffusion-xl-refiner-1.0->Download and Optimize ONNX Model using Olive
change the model id to something else: stabilityai/stable-diffusion-xl-base-1.0, but dont change the input/output folder name
run "Download and Optimize ONNX "
What should have happened?
old files should have been overwritten by the newly optimized file if the same folder name is used
Is there an existing issue for this?
What happened?
@lshqqytiger , one issue i noticed with latest changes if i don't manually delete the existing models (unet specifically) in stable-diffusion-webui-directml\models\ONNX and run the "Download & Optimize..." step from Olive UI, the optimization step fails with error during "saving optimized model" step. could we make sure we can force overwrite with new model or delete the old one before starting this step.
Saving unoptimized models... Error completing request Arguments: ('runwayml/stable-diffusion-v1-5', '', 'vae', 'stable-diffusion-v1-5', 'stable-diffusion-v1-5', True, True, False, True, True, True, True, 768, False, '', '', '') {} Traceback (most recent call last): File "C:\Users\ml-admin\Documents\Hisham\auto1111_olive\stable-diffusion-webui-directml\modules\call_queue.py", line 57, in f res = list(func(*args, kwargs)) File "C:\Users\ml-admin\Documents\Hisham\auto1111_olive\stable-diffusion-webui-directml\modules\call_queue.py", line 36, in f res = func(*args, *kwargs) File "C:\Users\ml-admin\Documents\Hisham\auto1111_olive\stable-diffusion-webui-directml\modules\sd_olive_ui.py", line 55, in optimize_from_onnx optimize(unoptimized_dir, optimized_dir, pipeline, vae_id, vae_subfolder, safety_checker, text_encoder, text_encoder_2, unet, vae_decoder, vae_encoder, use_fp16, sample_size if hw_synced else sample_size[0], sample_size if hw_synced else sample_size[1], olive_merge_lora, olive_merge_lora_inputs) File "C:\Users\ml-admin\Documents\Hisham\auto1111_olive\stable-diffusion-webui-directml\modules\sd_olive_ui.py", line 162, in optimize onnx_pipeline.save_pretrained(unoptimized_dir) File "C:\Users\ml-admin\Documents\Hisham\auto1111_olive\stable-diffusion-webui-directml\venv\lib\site-packages\diffusers\pipelines\pipeline_utils.py", line 655, in save_pretrained save_method(os.path.join(save_directory, pipeline_component_name), save_kwargs) File "C:\Users\ml-admin\Documents\Hisham\auto1111_olive\stable-diffusion-webui-directml\venv\lib\site-packages\diffusers\pipelines\onnx_utils.py", line 130, in save_pretrained self._save_pretrained(save_directory, **kwargs) File "C:\Users\ml-admin\Documents\Hisham\auto1111_olive\stable-diffusion-webui-directml\venv\lib\site-packages\diffusers\pipelines\onnx_utils.py", line 106, in _save_pretrained shutil.copyfile(src_path, dst_path) File "C:\Users\ml-admin\miniconda3\envs\Auto1111_olive\lib\shutil.py", line 256, in copyfile with open(dst, 'wb') as fdst: OSError: [Errno 22] Invalid argument: 'C:\Users\ml-admin\Documents\Hisham\auto1111_olive\stable-diffusion-webui-directml\models\ONNX\stable-diffusion-v1-5\unet\weights.pb'
work around is to delete the folder that had previous optimized onnx model and rerun the optimize olive step
Steps to reproduce the problem
What should have happened?
old files should have been overwritten by the newly optimized file if the same folder name is used
Sysinfo
sysinfo-2023-09-11-07-20.txt
What browsers do you use to access the UI ?
Microsoft Edge
Console logs
Additional information
No response