code: def from_instances(cls,
                         instances: Iterable['adi.Instance'],
                         min_count: Dict[str, int] = None,
                         max_vocab_size: Union[int, Dict[str, int]] = None,
                         non_padded_namespaces: Iterable[str] = DEFAULT_NON_PADDED_NAMESPACES,
                         pretrained_files: Optional[Dict[str, str]] = None,
                         only_include_pretrained_words: bool = False,
                         tokens_to_add: Dict[str, List[str]] = None,
                         min_pretrained_embeddings: Dict[str, int] = None) -> 'Vocabulary':
          
          logger.info("Fitting token dictionary from dataset.")
          namespace_token_counts: Dict[str, Dict[str, int]] = defaultdict(lambda: defaultdict(int))
          for instance in Tqdm.tqdm(instances):
              instance.count_vocab_items(namespace_token_counts)
  
          return cls(counter=namespace_token_counts,
                     min_count=min_count,
                     max_vocab_size=max_vocab_size,
                     non_padded_namespaces=non_padded_namespaces,
                     pretrained_files=pretrained_files,
                     only_include_pretrained_words=only_include_pretrained_words,
                     tokens_to_add=tokens_to_add,
                     min_pretrained_embeddings=min_pretrained_embeddings)
docs: Constructs a vocabulary given a collection of `Instances` and some parameters.
          We count all of the vocabulary items in the instances, then pass those counts
          and the other parameters, to :func:`__init__`.  See that method for a description
          of what the other parameters do.