code: def export_model(model_path, output_path, registered_model_name=None):
      if registered_model_name:
          if (
              not model_path.startswith("runs:/")
              or output_path is not None
          ):
              # No run specified, so in order to register the model in mlflow, we need
              # to create a new run and upload the model as an artifact first
              output_path = output_path or "model"
              log_model(
                  _CopyModel(model_path),
                  artifact_path=output_path,
                  registered_model_name=registered_model_name,
              )
          else:
              # Registering a model from an artifact of an existing run
              mlflow.register_model(
                  model_path,
                  registered_model_name,
              )
      else:
          # No model name means we only want to save the model locally
          save_model(
              _CopyModel(model_path),
              path=output_path,
          )
  
imports: import logging
  import os
  import shutil
  import mlflow
  import yaml
  from mlflow import pyfunc
  from mlflow.exceptions import MlflowException
  from mlflow.models import Model
  from mlflow.models.model import MLMODEL_FILE_NAME
  from mlflow.models.signature import ModelSignature
  from mlflow.models.utils import _save_example, ModelInputExample
  from mlflow.tracking._model_registry import DEFAULT_AWAIT_MAX_SLEEP_SECONDS
  from mlflow.tracking.artifact_utils import _download_artifact_from_uri
  from mlflow.utils.environment import _mlflow_conda_env
  from mlflow.utils.model_utils import _get_flavor_configuration
  from ludwig.api_annotations import DeveloperAPI
  from ludwig.globals import MODEL_HYPERPARAMETERS_FILE_NAME
  from ludwig.utils.data_utils import load_json
label_desc: Use image node_id 7 for calling a global function with example usage: export_model(model_path, output_path, registered_model_name) without return types