code: def _run_entry_point(command, work_dir, experiment_id, run_id):
      """
      Run an entry point command in a subprocess, returning a SubmittedRun that can be used to
      query the run's status.
      :param command: Entry point command to run
      :param work_dir: Working directory in which to run the command
      :param run_id: MLflow run ID associated with the entry point execution.
      """
      env = os.environ.copy()
      env.update(get_run_env_vars(run_id, experiment_id))
      env.update(
          get_databricks_env_vars(
              tracking_uri=mlflow.get_tracking_uri()
          )
      )
      _logger.info(
          "=== Running command '%s' in run with ID '%s' === ",
          command,
          run_id,
      )
      # in case os name is not 'nt', we are not running on windows. It introduces
      # bash command otherwise.
      if os.name != "nt":
          process = subprocess.Popen(
              ["bash", "-c", command],
              close_fds=True,
              cwd=work_dir,
              env=env,
          )
      else:
          # process = subprocess.Popen(command, close_fds=True, cwd=work_dir, env=env)
          process = subprocess.Popen(
              ["cmd", "/c", command],
              close_fds=True,
              cwd=work_dir,
              env=env,
          )
      return LocalSubmittedRun(run_id, process)
  
imports: import logging
  import os
  import platform
  import posixpath
  import subprocess
  import sys
  from pathlib import Path
  import mlflow
  from mlflow import tracking
  from mlflow.environment_variables import MLFLOW_KERBEROS_TICKET_CACHE, MLFLOW_KERBEROS_USER, MLFLOW_PYARROW_EXTRA_CONF
  from mlflow.exceptions import MlflowException
  from mlflow.projects import env_type
  from mlflow.projects.backend.abstract_backend import AbstractBackend
  from mlflow.projects.submitted_run import LocalSubmittedRun
  from mlflow.projects.utils import MLFLOW_DOCKER_WORKDIR_PATH, MLFLOW_LOCAL_BACKEND_RUN_ID_CONFIG, PROJECT_BUILD_IMAGE, PROJECT_DOCKER_ARGS, PROJECT_DOCKER_AUTH, PROJECT_ENV_MANAGER, PROJECT_STORAGE_DIR, PROJECT_SYNCHRONOUS, fetch_and_validate_project, get_entry_point_command, get_or_create_run, get_run_env_vars, load_project
  from mlflow.store.artifact.artifact_repository_registry import get_artifact_repository
  from mlflow.store.artifact.azure_blob_artifact_repo import AzureBlobArtifactRepository
  from mlflow.store.artifact.gcs_artifact_repo import GCSArtifactRepository
  from mlflow.store.artifact.hdfs_artifact_repo import HdfsArtifactRepository
  from mlflow.store.artifact.local_artifact_repo import LocalArtifactRepository
  from mlflow.store.artifact.s3_artifact_repo import S3ArtifactRepository
  from mlflow.utils import env_manager
  from mlflow.utils.conda import get_or_create_conda_env
  from mlflow.utils.databricks_utils import get_databricks_env_vars, is_in_databricks_runtime
  from mlflow.utils.environment import _PythonEnv
  from mlflow.utils.file_utils import get_or_create_nfs_tmp_dir
  from mlflow.utils.mlflow_tags import MLFLOW_PROJECT_ENV
  from mlflow.utils.virtualenv import _PYENV_ROOT_DIR, _VIRTUALENV_ENVS_DIR, _create_virtualenv, _get_mlflow_virtualenv_root, _get_virtualenv_extra_env_vars, _get_virtualenv_name, _install_python
label_desc: Use image node_id 5 for calling a global function with example usage: _run_entry_point(command, work_dir, experiment_id, run_id) and returns: LocalSubmittedRun