code: def get_backend(
      mode: Mode,
      api_token: Optional[str] = None,
      proxies: Optional[dict] = None,
  ) -> NeptuneBackend:
      if mode == Mode.ASYNC:
          return HostedNeptuneBackend(
              credentials=Credentials.from_token(api_token=api_token),
              proxies=proxies,
          )
      elif mode == Mode.SYNC:
          return HostedNeptuneBackend(
              credentials=Credentials.from_token(api_token=api_token),
              proxies=proxies,
          )
      elif mode == Mode.DEBUG:
          return NeptuneBackendMock()
      elif mode == Mode.OFFLINE:
          return OfflineNeptuneBackend()
      elif mode == Mode.READ_ONLY:
          return HostedNeptuneBackend(
              credentials=Credentials.from_token(api_token=api_token),
              proxies=proxies,
          )
      else:
          raise ValueError(f"mode should be one of {[m for m in Mode]}")
  
file_path: neptune-client/src/neptune/internal/backends/factory.py
imports: from typing import Optional
  from neptune.internal.credentials import Credentials
  from neptune.types.mode import Mode
  from .hosted_neptune_backend import HostedNeptuneBackend
  from .neptune_backend import NeptuneBackend
  from .neptune_backend_mock import NeptuneBackendMock
  from .offline_neptune_backend import OfflineNeptuneBackend
label_desc: Use image node_id 1 for calling a global function with example usage: get_backend(mode, api_token, proxies) and returns: HostedNeptuneBackend, HostedNeptuneBackend, NeptuneBackendMock, OfflineNeptuneBackend, HostedNeptuneBackend