code: def __init__(self, *args, **kwargs):
      if "device" in kwargs and "xpu" in kwargs["device"]:
          import intel_extension_for_pytorch
      self.bigdl_llm_kwargs = {}
      keys = list(kwargs.keys())
      for k in keys:
          if k not in self.AutoCausalLM_ARGS:
              self.bigdl_llm_kwargs[k] = kwargs.pop(k)
  
      self.bigdl_llm_kwargs["use_cache"] = kwargs.get("use_cache", True)
      self.bigdl_llm_kwargs["optimize_model"] = kwargs.get(
          "optimize_model", True
      )
      AutoModelForCausalLM.from_pretrained = partial(
          AutoModelForCausalLM.from_pretrained, **self.bigdl_llm_kwargs
      )
  
      kwargs["trust_remote_code"] = kwargs.get(
          "trust_remote_code", True
      )
      super().__init__(*args, **kwargs)
  
file_path: BigDL/python/llm/dev/benchmark/harness/bigdl_llm.py
imports: from bigdl.llm.transformers import AutoModelForCausalLM
  import inspect
  from lm_eval.models.huggingface import AutoCausalLM
  from lm_eval import utils
  from functools import partial
label_desc: Use image node_id 1 to create a new BigDLLM object from inherited base classes: AutoCausalLM with example: obj = BigDLLM()