class_docstr: MoE manager. This class manages different
  parallel groups in MoE context and MoE loss in training.
code: def __init__(self):
      self.parallel = None
      self.mode = None
      self.use_ep_inside = None
      self.world_size = None
      self._parallel_info_dict = dict()
  
      # router
      self.router_aux_loss = []
      self.router_z_loss = []
  
      # fixed mode
      self.pp_size = None
      self.dp_size = None
      self.ep_size = None
  
      # dynamic mode
      # Users may want to set maximum expert parallel size smaller than the world size
      # since very low bandwidth across nodes may constrain the performance of MoE
      # When we have a maximum expert parallel size, we have a minimum data parallel size naturally
      self.max_ep_size = None
  
      self.has_setup = False
  
file_path: ColossalAI/colossalai/moe/manager.py
imports: from typing import Tuple
  import torch
  import torch.distributed
  from colossalai.context.singleton_meta import SingletonMeta
  from colossalai.tensor.moe_tensor.api import get_moe_info
  from colossalai.tensor.moe_tensor.moe_info import MoeParallelInfo
label_desc: Use image node_id 1 to create a new MoEManager object  with example: obj = MoEManager()