code: def _serve_dev(data, host, port, no_open, logging):
      view_port = util.free_port(port + 1)
      dev_server = DevServer(host, port, view_port)
      dev_server.start()
      dev_server.wait_for_ready()
      view_url = util.local_server_url(host, view_port)
      if not no_open:
          util.open_url(util.local_server_url(host, port))
      sys.stdout.write(f" I  Guild View backend: {view_url}\n")
      _start_view(data, host, view_port, logging)
      sys.stdout.write("\n")
  
imports: import json
  import logging
  import math
  import os
  import socket
  import subprocess
  import sys
  import threading
  import time
  from werkzeug.exceptions import NotFound
  from werkzeug.utils import redirect
  from guild import serving_util
  from guild import util
  from guild import var
label_desc: Use image node_id 2 for calling a global function with example usage: _serve_dev(data, host, port, no_open, logging) without return types