code: def create_spec(self) -> None:
      bentofile_path = os.path.join(self.working_dir, "bentofile.yaml")
      if not os.path.exists(bentofile_path):
          # if bentofile.yaml is not found, by default we will assume to watch all files
          # via BentoBuildConfig.with_defaults()
          build_config = BentoBuildConfig(service="").with_defaults()
      else:
          # respect bentofile.yaml include and exclude
          with open(bentofile_path, "r") as f:
              build_config = BentoBuildConfig.from_yaml(
                  f
              ).with_defaults()
  
      self.bento_spec = BentoPathSpec(
          build_config.include, build_config.exclude
      )
  
imports: from __future__ import annotations
  import logging
  import os
  import typing
  from pathlib import Path
  from threading import Event
  from threading import Thread
  from typing import TYPE_CHECKING
  import fs
  from circus.plugins import CircusPlugin
  from watchfiles import watch
  from ...bento.build_config import BentoBuildConfig
  from ...bento.build_config import BentoPathSpec
  from ...configuration import is_pypi_installed_bentoml
  from ...context import component_context
  from ...log import configure_server_logging
  from ...utils.pkg import source_locations
label_desc: Use image node_id 2 for calling the ServiceReloaderPlugin obj's underlying member method code with example usage: obj.create_spec() without return types