class_docstr: FiftyOne configuration settings.
class_docstr_tok: ["FiftyOne","configuration","settings","."]
code: def _init(self):
      if self.default_dataset_dir is None:
          self.default_dataset_dir = os.path.join(
              os.path.expanduser("~"), "fiftyone"
          )
  
      if self.dataset_zoo_dir is None:
          self.dataset_zoo_dir = self.default_dataset_dir
  
      if self.model_zoo_dir is None:
          self.model_zoo_dir = os.path.join(
              self.default_dataset_dir, "__models__"
          )
  
      if self.plugins_dir is None:
          self.plugins_dir = os.path.join(
              self.default_dataset_dir,
              "__plugins__",
          )
  
      if self.default_ml_backend is None:
          installed_packages = _get_installed_packages()
  
          if "torch" in installed_packages:
              self.default_ml_backend = "torch"
          elif "tensorflow" in installed_packages:
              self.default_ml_backend = "tensorflow"
  
      if self.default_ml_backend is not None:
          self.default_ml_backend = self.default_ml_backend.lower()
  
      if self.module_path is not None:
          for idx, module_name in enumerate(self.module_path):
              try:
                  __import__(module_name)
              except ImportError as e:
                  logger.warning(
                      "Failed to import fiftyone.config.module_path[%d]: %s",
                      idx,
                      e,
                  )
  
      if self.timezone and self.timezone.lower() not in {
          "local",
          "utc",
      }:
          try:
              pytz.timezone(self.timezone)
          except:
              logger.warning(
                  "Ignoring invalid timezone '%s'", self.timezone
              )
              self.timezone = None
  
imports: import logging
  import os
  import pytz
  import eta
  import eta.core.config
  import fiftyone.constants
  import fiftyone.core.utils
label_desc: Use image node_id 5 for calling the FiftyOneConfig obj's underlying member method code with example usage: obj._init() without return types