code: def _get_virtualenv_extra_env_vars(env_root_dir=None):
      extra_env = {
          # PIP_NO_INPUT=1 makes pip run in non-interactive mode,
          # otherwise pip might prompt "yes or no" and ask stdin input
          "PIP_NO_INPUT": "1",
      }
      if env_root_dir is not None:
          # Note: Both conda pip and virtualenv can use the pip cache directory.
          extra_env["PIP_CACHE_DIR"] = os.path.join(
              env_root_dir, _PIP_CACHE_DIR
          )
      return extra_env
  
imports: import logging
  import os
  import re
  import shutil
  import sys
  import tempfile
  import uuid
  from pathlib import Path
  from packaging.version import Version
  import mlflow
  from mlflow.environment_variables import MLFLOW_ENV_ROOT
  from mlflow.exceptions import MlflowException
  from mlflow.models.model import MLMODEL_FILE_NAME, Model
  from mlflow.utils.conda import _PIP_CACHE_DIR
  from mlflow.utils.databricks_utils import is_in_databricks_runtime
  from mlflow.utils.environment import _CONDA_ENV_FILE_NAME, _PYTHON_ENV_FILE_NAME, _REQUIREMENTS_FILE_NAME, _get_mlflow_env_name, _get_pip_install_mlflow, _PythonEnv
  from mlflow.utils.file_utils import remove_on_error
  from mlflow.utils.process import _IS_UNIX, _exec_cmd, _join_commands
  from mlflow.utils.requirements_utils import _parse_requirements
label_desc: Use image node_id 15 for calling a global function with example usage: _get_virtualenv_extra_env_vars(env_root_dir) and returns: extra_env