code: def _make_builders(
      args: argparse.Namespace,
      ds_to_build: str,
  ) -> Iterator[tfds.core.DatasetBuilder]:
      """Yields builders to generate."""
      builder_cls, builder_kwargs = _get_builder_cls(
          ds_to_build,
          has_imports=bool(args.imports),
      )
  
      # Eventually overwrite version
      if args.experimental_latest_version:
          if "version" in builder_kwargs:
              raise ValueError(
                  "Can't have both `--experimental_latest` and version set (`:1.0.0`)"
              )
          builder_kwargs["version"] = "experimental_latest"
  
      # Eventually overwrite config
      builder_kwargs["config"] = _get_config_name(
          builder_cls=builder_cls,
          config_kwarg=builder_kwargs.get("config"),
          config_name=args.config,
          config_idx=args.config_idx,
      )
  
      if args.file_format:
          builder_kwargs["file_format"] = args.file_format
  
      make_builder = functools.partial(
          _make_builder,
          builder_cls,
          overwrite=args.overwrite,
          fail_if_exists=args.fail_if_exists,
          data_dir=args.data_dir,
          **builder_kwargs,
      )
  
      # Generate all configs if no config requested.
      if (
          builder_cls.BUILDER_CONFIGS
          and builder_kwargs["config"] is None
      ):
          for config in builder_cls.BUILDER_CONFIGS:
              yield make_builder(config=config.name)
      # Generate only the dataset
      else:
          yield make_builder()
  
imports: import argparse
  import functools
  import importlib
  import itertools
  import json
  import multiprocessing
  import os
  import typing
  from typing import Dict, Iterator, Optional, Tuple, Type, Union
  from absl import logging
  from etils import epath
  import tensorflow_datasets
label_desc: Use image node_id 3 for calling a global function with example usage: _make_builders(args, ds_to_build) without return types