code: def create_tokenizer(
      config: ml_collections.ConfigDict,
  ) -> tokenizers.TextTokenizer:
      """Creates a DMVR tokenizer."""
      tokenizer_type = config.tokenizer_type
      vocab_path = config.get(
          "tokenizer_vocab", config.get("vocabulary_path")
      )
  
      if tokenizer_type == "bert":
          return tokenizers.BertTokenizer(vocab_path)
      elif tokenizer_type == "clip":
          return tokenizers.ClipTokenizer()
      elif tokenizer_type == "t5":
          return tokenizers.SentencePieceTokenizer(vocab_path)
      else:
          raise ValueError(
              f"Unknown tokenizer type {tokenizer_type!r} "
              f'Supported: "bert", "clip", "t5"'
          )
  
imports: from collections.abc import Callable
  from collections.abc import Iterable
  from collections.abc import Iterator
  from collections.abc import Mapping
  from collections.abc import MutableMapping
  from collections.abc import Sequence
  import copy
  import types
  from typing import Any
  from typing import Optional
  from typing import TypeVar
  from typing import Union
  from dmvr import tokenizers
  import jax
  import ml_collections
label_desc: Use image node_id 10 for calling a global function with example usage: create_tokenizer(config) and returns: tokenizers, tokenizers, tokenizers