code: def forward(self, blocks, x, device):
      h = x
      for i, (layer, block) in enumerate(zip(self.layers, blocks)):
          src, dst = block.edges()
          edge_index = torch.stack([src, dst], dim=0)
          h_src, h_dst = h, h[: block.number_of_dst_nodes()]
          h = layer((h_src, h_dst), edge_index)
          if i != len(blocks) - 1:
              h = F.relu(h)
      return h
  
file_path: dgl/examples/sampling/pyg/node_classification.py
imports: import argparse
  import dgl.graphbolt
  import torch
  import torch.nn.functional
  import torchmetrics.functional
  from torch_geometric.nn import SAGEConv
label_desc: Use image node_id 2 for calling the GraphSAGE obj's underlying member method code with example usage: obj.forward(blocks, x, device) and returns: h