code: def mixtral_mlp_forward(
      self, x: torch.Tensor, routing_weights
  ) -> torch.Tensor:
      qtype = getattr(self.w1, "qtype", None)
      if mlp_fusion_check(x, qtype, self.training):
          import linear_q4_0
  
          return (
              self.w2(
                  linear_q4_0.mlp_forward_xpu(
                      x,
                      self.w1.weight.data,
                      self.w3.weight.data,
                      x.shape[0],
                      x.shape[1],
                      self.w1.out_len,
                      qtype,
                  )
              )
              * routing_weights
          )
      else:
          current_hidden_states = self.act_fn(self.w1(x)) * self.w3(x)
          current_hidden_states = self.w2(current_hidden_states)
          return routing_weights * current_hidden_states
  
file_path: BigDL/python/llm/src/bigdl/llm/transformers/models/mixtral.py
imports: import math
  from typing import Optional, Tuple
  import torch
  from torch import nn
  import torch.nn.functional
  from bigdl.llm.ggml.quantize import ggml_tensor_qtype
  from bigdl.llm.utils.common import invalidInputError
  from bigdl.llm.transformers.models.utils import init_kv_cache, extend_kv_cache, append_kv_cache
  from bigdl.llm.transformers.models.utils import apply_rotary_pos_emb, apply_rotary_pos_emb_no_cache_xpu, is_enough_kv_cache_room_4_36
  from bigdl.llm.transformers.models.mistral import should_use_fuse_rope, use_decoding_fast_path
  from bigdl.llm.transformers.models.utils import use_flash_attention
  from bigdl.llm.transformers.models.utils import mlp_fusion_check
label_desc: Use image node_id 4 for calling a global function with example usage: mixtral_mlp_forward(x, routing_weights) and returns: unknown, unknown