class_docstr: DatasetBuilder for a *-CFQ split.
class_docstr_tok: ["DatasetBuilder","for","a","*","-CFQ","split","."]
docstr: Returns SplitGenerators.
docstr_tok: ["Returns","SplitGenerators","."]
code: def _split_generators(self, dl_manager):
      """Returns SplitGenerators."""
      split_dir = dl_manager.download_and_extract(
          "%s/%s" % (_DATA_URL, self.builder_config.split_archive_path)
      )
      split_path = os.path.join(
          split_dir, self.builder_config.split_path
      )
  
      dataset_paths = {}
      if self.builder_config.compound_divergence:
          extracted_dataset_path = dl_manager.download_and_extract(
              _DATA_URL
              + "/datasets/u-cfq-for-divergence-splits-1.0-compact-combined.tar.gz"
          )
          dataset_paths[_UCFQ_POOL] = os.path.join(
              extracted_dataset_path,
              "u-cfq-for-divergence-splits-1.0-compact-combined",
          )
  
      else:
          with epath.Path(split_path).open() as file:
              splits = json.load(file)
              for split in splits.values():
                  for s in split:
                      name = s["dataset"]
                      if name in dataset_paths:
                          continue
                      logging.info("Downloading dataset %s...", name)
                      extracted_dataset_path = dl_manager.download_and_extract(
                          _DATA_URL
                          + f"/datasets/{name.lower()}-1.0-compact.tar.gz"
                      )
                      dataset_paths[name] = os.path.join(
                          extracted_dataset_path,
                          f"{name.lower()}-1.0-compact",
                      )
  
      if self.builder_config.compound_divergence:
          return {
              "train": self._generate_examples(
                  dataset_paths, split_path, "trainIdxs"
              ),
              "validation": self._generate_examples(
                  dataset_paths, split_path, "devIdxs"
              ),
              "test": self._generate_examples(
                  dataset_paths, split_path, "testIdxs"
              ),
          }
      return {
          "train": self._generate_examples(
              dataset_paths, split_path, "train"
          ),
          "test": self._generate_examples(
              dataset_paths, split_path, "test"
          ),
      }
  
imports: import json
  import os
  from absl import logging
  from etils import epath
  import tensorflow_datasets.public_api
label_desc: Use image node_id 2 for calling the Builder obj's underlying member method code with example usage: obj._split_generators(dl_manager) and returns: dict, dict