code: def serve(self) -> None:
      self._setup_tracelog()
      mux = StreamMux()
      self._startup_debug_print("before_network")
      sock_port = (
          self._start_sock(mux=mux) if self._serve_sock else None
      )
      self._startup_debug_print("after_network")
      self._inform_used_ports(sock_port=sock_port)
      self._startup_debug_print("after_inform")
      self._setup_proctitle(sock_port=sock_port)
      self._startup_debug_print("before_loop")
      mux.loop()
      self._stop_servers()
  
file_path: wandb/wandb/sdk/service/server.py
imports: import logging
  import os
  import sys
  from typing import Optional
  import wandb
  from ..lib import tracelog
  from .None import _startup_debug, port_file
  from .server_sock import SocketServer
  from .streams import StreamMux
label_desc: Use image node_id 8 for calling the WandbServer obj's underlying member method code with example usage: obj.serve() without return types