code: 
  import argparse
  import copy
  import json
  import multiprocessing
  import os
  import time
  
  from create_dummy_models import COMPOSITE_MODELS, create_tiny_models
  from huggingface_hub import ModelFilter, hf_api
  
  import transformers
  from transformers import AutoFeatureExtractor, AutoImageProcessor, AutoTokenizer
  from transformers.image_processing_utils import BaseImageProcessor
  def   snake_case_       (							):
        snake_case_						       =							set()
        # Each auto modeling files contains multiple mappings. Let's get them in a dynamic way.
        for module_name in ["modeling_auto", "modeling_tf_auto", "modeling_flax_auto"]:
              snake_case_						       =							getattr(transformers.models.auto ,					_a ,					_a			)
              if module is None:
                    continue
              # all mappings in a single auto modeling file
              snake_case_						       =							[
                  x
                  for x in dir(_a			)
                  if x.endswith("_MAPPING_NAMES"			)
                  and (x.startswith("MODEL_"			) or x.startswith("TF_MODEL_"			) or x.startswith("FLAX_MODEL_"			))
              ]
              for name in mapping_names:
                    snake_case_						       =							getattr(_a ,					_a			)
                    if mapping is not None:
                          for v in mapping.values():
                                if isinstance(_a ,					(list, tuple)			):
                                      model_names.update(_a			)
                                elif isinstance(_a ,					_a			):
                                      model_names.add(_a			)
  
        return sorted(_a			)
  def   snake_case_       (							):
        # All model names defined in auto mappings
        snake_case_						       =							set(get_all_model_names()			)
  
        with open("tests/utils/tiny_model_summary.json"			) as fp:
              snake_case_						       =							json.load(_a			)
        snake_case_						       =							set()
        for model_base_name in tiny_model_info:
              tiny_models_names.update(tiny_model_info[model_base_name]["model_classes"]			)
  
        # Remove a tiny model name if one of its framework implementation hasn't yet a tiny version on the Hub.
        snake_case_						       =							model_names.difference(_a			)
        for model_name in copy.copy(_a			):
              if not model_name.startswith("TF"			) and F'''TF{model_name}''' in not_on_hub:
                    tiny_models_names.remove(_a			)
              elif model_name.startswith("TF"			) and model_name[2:] in not_on_hub:
                    tiny_models_names.remove(_a			)
  
        return sorted(_a			)
  def   snake_case_       (							_a     :							Union[str, Any]			):
        snake_case_						       =							COMPOSITE_MODELS.values()
  
        # All tiny model base names on Hub
        snake_case_						       =							get_all_model_names()
        snake_case_						       =							hf_api.list_models(
            filter=ModelFilter(
                author="hf-internal-testing" ,					)			)
        snake_case_						       =							set()
        for x in models:
              snake_case_						       =							x.modelId
              snake_case_       ,	snake_case_						       =							model.split("/"			)
              if not model.startswith("tiny-random-"			):
                    continue
              snake_case_						       =							model.replace("tiny-random-" ,					""			)
              if not model[0].isupper():
                    continue
              if model not in model_names and model not in special_models:
                    continue
              _models.add(_a			)
  
        snake_case_						       =							sorted(_models			)
        # All tiny model names on Hub
        snake_case_						       =							{}
        for model in models:
              snake_case_						       =							F'''hf-internal-testing/tiny-random-{model}'''
              snake_case_						       =							model.split("-"			)[0]
              try:
                    snake_case_						       =							hf_api.repo_info(_a			)
                    snake_case_						       =							{
                        "tokenizer_classes": set(),
                        "processor_classes": set(),
                        "model_classes": set(),
                        "sha": repo_info.sha,
                    }
              except Exception:
                    continue
              try:
                    time.sleep(1			)
                    snake_case_						       =							AutoTokenizer.from_pretrained(_a			)
                    content["tokenizer_classes"].add(tokenizer_fast.__class__.__name__			)
              except Exception:
                    pass
              try:
                    time.sleep(1			)
                    snake_case_						       =							AutoTokenizer.from_pretrained(_a ,					use_fast=_a			)
                    content["tokenizer_classes"].add(tokenizer_slow.__class__.__name__			)
              except Exception:
                    pass
              try:
                    time.sleep(1			)
                    snake_case_						       =							AutoImageProcessor.from_pretrained(_a			)
                    content["processor_classes"].add(img_p.__class__.__name__			)
              except Exception:
                    pass
              try:
                    time.sleep(1			)
                    snake_case_						       =							AutoFeatureExtractor.from_pretrained(_a			)
                    if not isinstance(_a ,					_a			):
                          content["processor_classes"].add(feat_p.__class__.__name__			)
              except Exception:
                    pass
              try:
                    time.sleep(1			)
                    snake_case_						       =							getattr(_a ,					_a			)
                    snake_case_						       =							model_class.from_pretrained(_a			)
                    content["model_classes"].add(m.__class__.__name__			)
              except Exception:
                    pass
              try:
                    time.sleep(1			)
                    snake_case_						       =							getattr(_a ,					F'''TF{model}'''			)
                    snake_case_						       =							model_class.from_pretrained(_a			)
                    content["model_classes"].add(m.__class__.__name__			)
              except Exception:
                    pass
  
              snake_case_						       =							sorted(content["tokenizer_classes"]			)
              snake_case_						       =							sorted(content["processor_classes"]			)
              snake_case_						       =							sorted(content["model_classes"]			)
  
              snake_case_						       =							content
              with open(os.path.join(_a ,					"hub_tiny_model_summary.json"			) ,					"w"			) as fp:
                    json.dump(_a ,					_a ,					ensure_ascii=_a ,					indent=4			)
  
  
  if __name__ == "__main__":
       A           =   argparse.ArgumentParser()
       parser.add_argument("--num_workers", default=1, type=int, help="The number of workers to run.")
       A           =   parser.parse_args()
  
       # This has to be `spawn` to avoid hanging forever!
       multiprocessing.set_start_method("spawn")
  
       A           =   "tiny_models"
       A           =   True
       A           =   None
       A           =   get_tiny_model_names_from_repo()
       A           =   True
       A           =   True
       A           =   "hf-internal-testing"
  
       create_tiny_models(
           output_path,
           all,
           model_types,
           models_to_skip,
           no_check,
           upload,
           organization,
           token=os.environ.get("TOKEN", None),
           num_workers=args.num_workers,
       )
  
  
style_context: 
  '''simple docstring'''
  
  
  
  
  
  def   snake_case_       (							_a     :							int = 1_000			):
        return sum(i for i in range(_a			) if i % 3 == 0 or i % 5 == 0			)
  
  
  if __name__ == "__main__":
       print(F"""{solution() = }""")
  
  