docstr: Caution: All the attributes need to be set to serializable values
  because Python multiprocessing need to pickle the instance while starting new Process
docstr_tok: ["Caution",":","All","the","attributes","need","to","be","set","to","serializable","values","because","Python","multiprocessing","need","to","pickle","the","instance","while","starting","new","Process"]
code: def __init__(self) -> None:
      """
      Caution: All the attributes need to be set to serializable values
      because Python multiprocessing need to pickle the instance while starting new Process
      """
      self.scheduler = (
          None  # set a None to trigger scheduler initialization
      )
      self.generator = None
      self.pipe = None
      self.model_dir = None
  
      self.calibrated = False
      self.version = None
      self.optimization_method = ""
      self.opt_postfix = (
          ""  # one optimization method could have multiple options
      )
      self.device = None
      self.precision = None
  
imports: from typing import ClassVar, Optional
  import torch
  import os
  from bigdl.nano.pytorch import InferenceOptimizer
  from diffusers.schedulers import *
  from .utils import get_snapshot_dir_from_model_version
  from .pipelines import NanoStableDiffusionPipeline
label_desc: Use image node_id 1 to create a new StableDiffusionRunner object  with example: obj = StableDiffusionRunner()