code: def download_zoo_model(name, overwrite=False):
      """Downloads the model of the given name from the FiftyOne Dataset Zoo.
  
      If the model is already downloaded, it is not re-downloaded unless
      ``overwrite == True`` is specified.
  
      Args:
          name: the name of the zoo model, which can have ``@<ver>`` appended to
              refer to a specific version of the model. If no version is
              specified, the latest version of the model is used. Call
              :func:`list_zoo_models` to see the available models
          overwrite (False): whether to overwrite any existing files
  
      Returns:
          tuple of
  
          -   model: the :class:`ZooModel` for the model
          -   model_path: the path to the downloaded model on disk
      """
      model, model_path = _get_model_in_dir(name)
  
      if not overwrite and is_zoo_model_downloaded(name):
          logger.info("Model '%s' is already downloaded", name)
      elif model.manager is not None:
          model.manager.download_model(model_path, force=overwrite)
      else:
          logger.info(
              "Model '%s' downloading is not managed by FiftyOne", name
          )
  
      return model, model_path
  
imports: from collections import defaultdict
  from copy import deepcopy
  import logging
  import os
  import weakref
  from eta.core.config import ConfigError
  import eta.core.learning
  import eta.core.models
  import eta.core.utils
  import fiftyone
  import fiftyone.core.models
label_desc: Use image node_id 4 for calling a global function with example usage: download_zoo_model(name, overwrite) and returns: model,  model_path