code: def ensure_zoo_model_requirements(
      name, error_level=None, log_success=True
  ):
      """Ensures that the package requirements for the zoo model with the given
      name are satisfied.
  
      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
          error_level (None): the error level to use when installing/ensuring
              requirements, defined as:
  
              -   0: raise error if a requirement is not satisfied
              -   1: log warning if a requirement is not satisifed
              -   2: ignore unsatisifed requirements
  
              By default, ``fo.config.requirement_error_level`` is used
          log_success (True): whether to generate a log message when a
              requirement is satisifed
      """
      if error_level is None:
          error_level = fo.config.requirement_error_level
  
      model = _get_model(name)
      model.ensure_requirements(
          error_level=error_level, log_success=log_success
      )
  
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 6 for calling a global function with example usage: ensure_zoo_model_requirements(name, error_level, log_success) without return types