code: def one_hop_neighbor(graph, nodes, node_buffer):
      """Find one hop neighbors."""
  
      pred_nodes, pred_eids = graph.predecessor(nodes, return_eids=True)
      pred_nodes = np.concatenate(pred_nodes, -1)
      pred_eids = np.concatenate(pred_eids, -1)
  
      node_buffer[nodes] = 1
      out_of_batch_neighbors = pred_nodes[node_buffer[pred_nodes] == 0]
      out_of_batch_neighbors = np.unique(out_of_batch_neighbors)
      new_nodes = np.concatenate((nodes, out_of_batch_neighbors))
      node_buffer[nodes] = 0
      return new_nodes, pred_eids
  
imports: import os
  import math
  from functools import partial
  import numpy
  import paddle
  import pgl
  from pgl.utils.logger import log
  from pgl.utils.data import Dataset
  from pgl.sampling.custom import subgraph
  from pgl.utils.data.dataloader import Dataloader
  from pgl.utils.transform import to_undirected, add_self_loops
  from utils import generate_mask
label_desc: Use image node_id 1 for calling a global function with example usage: one_hop_neighbor(graph, nodes, node_buffer) and returns: new_nodes,  pred_eids