class_docstr: UserLibri dataset of paired audio transcripts.
docstr: Generates user splits like 'test-other_speaker-1234-book-5678'.
code: def _split_generators(self, dl_manager):
      """Generates user splits like 'test-other_speaker-1234-book-5678'."""
      extracted_dir = dl_manager.download_kaggle_data(
          competition_or_dataset=_KAGGLE_DATASET_ID
      )
      audio_dir = extracted_dir / "UserLibri/audio_data"
      # Load metadata file which is the same for both test-clean and test-other.
      metadata_file = audio_dir / "metadata.tsv"
      self.info.metadata["users"] = read_metadata_file(metadata_file)
      splits = []
      for split in ["test-clean", "test-other"]:
          split_path = audio_dir / split
          for user_id in tf.io.gfile.listdir(split_path):
              split_and_user = f"{split}_{user_id}"
              splits.append(
                  tfds.core.SplitGenerator(
                      name=split_and_user,
                      gen_kwargs={
                          "directory": os.path.join(
                              audio_dir, split, user_id
                          )
                      },
                  )
              )
      return splits
  
file_path: datasets/tensorflow_datasets/audio/userlibri_audio_data/userlibri_audio_data.py
imports: import csv
  import os
  from etils import epath
  from tensorflow_datasets.core.utils.lazy_imports_utils import tensorflow
  import tensorflow_datasets.public_api
label_desc: Use image node_id 2 for calling the UserLibriAudio obj's underlying member method code with example usage: obj._split_generators(dl_manager) and returns: splits