code: def getEmbedding(self, users, pos_items, neg_items):
      users_emb = self.embedding_user.weight
      items_emb = self.embedding_item.weight
      all_users, all_items = self.lightgcn(
          self.Graph, users_emb, items_emb
      )
      users_emb = paddle.index_select(all_users, users)
      pos_emb = paddle.index_select(all_items, pos_items)
      neg_emb = paddle.index_select(all_items, neg_items)
      users_emb_ego = self.embedding_user(users)
      pos_emb_ego = self.embedding_item(pos_items)
      neg_emb_ego = self.embedding_item(neg_items)
      return (
          users_emb,
          pos_emb,
          neg_emb,
          users_emb_ego,
          pos_emb_ego,
          neg_emb_ego,
      )
  
imports: import paddle
  import paddle.nn
  from dataloader import BasicDataset
  import numpy
  import paddle
  import paddle.nn
  import paddle.nn.functional
  import pgl
  from pgl.nn import functional
  from tqdm import tqdm
label_desc: Use image node_id 3 for calling the LightGCN obj's underlying member method code with example usage: obj.getEmbedding(users, pos_items, neg_items) and returns: users_emb,  pos_emb,  neg_emb,  users_emb_ego,  pos_emb_ego,  neg_emb_ego