From dfdf85d32c7a43f139ec051d20a2b10dc1eca6cd Mon Sep 17 00:00:00 2001 From: Hengwen Tong Date: Tue, 26 Sep 2023 02:22:41 +0800 Subject: [PATCH] [pipeline utils] sanitize pretrained_model_name_or_path (#5173) Make sure the repo_id is valid before sending it to huggingface_hub to get a more understandable error message. Re #5110 Co-authored-by: Patrick von Platen --- src/diffusers/pipelines/pipeline_utils.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/diffusers/pipelines/pipeline_utils.py b/src/diffusers/pipelines/pipeline_utils.py index df2a7c6c40..b0e7ec9efc 100644 --- a/src/diffusers/pipelines/pipeline_utils.py +++ b/src/diffusers/pipelines/pipeline_utils.py @@ -1033,6 +1033,10 @@ class DiffusionPipeline(ConfigMixin, PushToHubMixin): # 1. Download the checkpoints and configs # use snapshot download here to get it working from from_pretrained if not os.path.isdir(pretrained_model_name_or_path): + if pretrained_model_name_or_path.count("/") > 1: + raise ValueError( + f"The provided pretrained_model_name_or_path \"{pretrained_model_name_or_path}\"" + " is neither a valid local path nor a valid repo id. Please check the parameter.") cached_folder = cls.download( pretrained_model_name_or_path, cache_dir=cache_dir,