class_docstr: Diabetic retinopathy detection.
code: def _split_generators(self, dl_manager):
      # TODO(pierrot): implement download using kaggle API.
      # TODO(pierrot): implement extraction of multiple files archives.
      path = dl_manager.manual_dir
      test_labels_path = dl_manager.download(_URL_TEST_LABELS)
      if tf.io.gfile.isdir(test_labels_path):
          # While testing: download() returns the dir containing the tests files.
          test_labels_path = os.path.join(
              test_labels_path, "retinopathy_solution.csv"
          )
      return [
          tfds.core.SplitGenerator(
              name="sample",  # 10 images, to do quicktests using dataset.
              gen_kwargs={
                  "images_dir_path": os.path.join(path, "sample"),
              },
          ),
          tfds.core.SplitGenerator(
              name="train",
              gen_kwargs={
                  "images_dir_path": os.path.join(path, "train"),
                  "csv_path": os.path.join(path, "trainLabels.csv"),
                  # CSV of the train split does not have the "Usage" column.
                  # 35,126 examples.
                  "csv_usage": None,
              },
          ),
          tfds.core.SplitGenerator(
              name="validation",
              gen_kwargs={
                  "images_dir_path": os.path.join(path, "test"),
                  "csv_path": test_labels_path,
                  # Validation split corresponds to the public leaderboard data.
                  # 10,906 examples.
                  "csv_usage": "Public",
              },
          ),
          tfds.core.SplitGenerator(
              name="test",
              gen_kwargs={
                  "images_dir_path": os.path.join(path, "test"),
                  "csv_path": test_labels_path,
                  # Test split corresponds to the public leaderboard data.
                  # 42,670 examples.
                  "csv_usage": "Private",
              },
          ),
      ]
  
imports: import csv
  import io
  import os
  from absl import logging
  from etils import epath
  import numpy
  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 DiabeticRetinopathyDetection obj's underlying member method code with example usage: obj._split_generators(dl_manager) and returns: list