@@ -467,6 +467,7 @@ def _upload_folder(
467467        token : Optional [str ] =  None ,
468468        commit_message : Optional [str ] =  None ,
469469        create_pr : bool  =  False ,
470+         subfolder : Optional [str ] =  None ,
470471    ):
471472        """ 
472473        Uploads all files in `working_dir` to `repo_id`. 
@@ -481,7 +482,7 @@ def _upload_folder(
481482
482483        logger .info (f"Uploading the files of { working_dir } { repo_id }  )
483484        return  upload_folder (
484-             repo_id = repo_id , folder_path = working_dir , token = token , commit_message = commit_message , create_pr = create_pr 
485+             repo_id = repo_id , folder_path = working_dir , token = token , commit_message = commit_message , create_pr = create_pr ,  path_in_repo = subfolder 
485486        )
486487
487488    def  push_to_hub (
@@ -493,6 +494,7 @@ def push_to_hub(
493494        create_pr : bool  =  False ,
494495        safe_serialization : bool  =  True ,
495496        variant : Optional [str ] =  None ,
497+         subfolder : Optional [str ] =  None ,
496498    ) ->  str :
497499        """ 
498500        Upload model, scheduler, or pipeline files to the 🤗 Hugging Face Hub. 
@@ -534,8 +536,9 @@ def push_to_hub(
534536        repo_id  =  create_repo (repo_id , private = private , token = token , exist_ok = True ).repo_id 
535537
536538        # Create a new empty model card and eventually tag it 
537-         model_card  =  load_or_create_model_card (repo_id , token = token )
538-         model_card  =  populate_model_card (model_card )
539+         if  not  subfolder :
540+             model_card  =  load_or_create_model_card (repo_id , token = token )
541+             model_card  =  populate_model_card (model_card )
539542
540543        # Save all files. 
541544        save_kwargs  =  {"safe_serialization" : safe_serialization }
@@ -546,12 +549,14 @@ def push_to_hub(
546549            self .save_pretrained (tmpdir , ** save_kwargs )
547550
548551            # Update model card if needed: 
549-             model_card .save (os .path .join (tmpdir , "README.md" ))
552+             if  not  subfolder :
553+                 model_card .save (os .path .join (tmpdir , "README.md" ))
550554
551555            return  self ._upload_folder (
552556                tmpdir ,
553557                repo_id ,
554558                token = token ,
555559                commit_message = commit_message ,
556560                create_pr = create_pr ,
561+                 subfolder = subfolder ,
557562            )
0 commit comments