code: def forward(self, x, k=2):
      logits = self.gate(x)
      scores = F.softmax(logits, dim=-1)
      crit, l_aux = moe.top_k_routing(scores, top_k=k)
      y = moe.fast_encode(x, crit)
      y = net.all_to_all(y, 1, 0)
      y = self.expert(y)
      y = net.all_to_all(y, 0, 1)
      output = moe.fast_decode(y, crit)
      return output, l_aux
  
file_path: tutel/tutel/examples/helloworld_from_scratch.py
imports: import time
  import torch
  import torch.nn.functional
  from tutel import system
  from tutel import moe
  from tutel import net
label_desc: Use image node_id 2 for calling the CustomMoE obj's underlying member method code with example usage: obj.forward(x, k) and returns: output,  l_aux