code: def sample_subgraphs(self, seeds):
      sampled_matrices = []
      src = seeds
  
      #####################################################################
      # (HIGHLIGHT) Using the sparse sample operator to preform random
      # sampling on the neighboring nodes of the seeds nodes. The sparse
      # compact operator is then employed to compact and relabel the sampled
      # matrix, resulting in the sampled matrix and the relabel index.
      #####################################################################
      for fanout in self.fanouts:
          # Sample neighbors.
          sampled_matrix = self.matrix.sample(
              1, fanout, ids=src
          ).coalesce()
          # Compact the sampled matrix.
          compacted_mat, row_ids = sampled_matrix.compact(0)
          sampled_matrices.insert(0, compacted_mat)
          src = row_ids
  
      return src, sampled_matrices
  
imports: import argparse
  from functools import partial
  import dgl.graphbolt
  import dgl.sparse
  import torch
  import torch.nn
  import torch.nn.functional
  import torchmetrics.functional
  from dgl.graphbolt.subgraph_sampler import SubgraphSampler
  from torch.utils.data import functional_datapipe
label_desc: Use image node_id 2 for calling the SparseNeighborSampler obj's underlying member method code with example usage: obj.sample_subgraphs(seeds) and returns: src,  sampled_matrices