code: def log_sklearn_pipeline(
      self, experiment, prep_pipe, model, path=None
  ):
      # get default conda env
      from mlflow.sklearn import get_default_conda_env
  
      from pycaret import __version__
  
      default_conda_env = get_default_conda_env()
      default_conda_env["name"] = f"{experiment.exp_name_log}-env"
      default_conda_env.get("dependencies").pop(-3)
      dependencies = default_conda_env.get("dependencies")[-1]
  
      dep = f"pycaret=={__version__}"
      dependencies["pip"] = [dep]
  
      # # define model signature
      # from mlflow.models.signature import infer_signature
  
      # try:
      #     signature = infer_signature(
      #         data_before_preprocess.drop([target_param], axis=1)
      #     )
      # except Exception:
      #     logger.warning("Couldn't infer MLFlow signature.")
      #     signature = None
      # if not _is_unsupervised(_ml_usecase):
      #     input_example = (
      #         data_before_preprocess.drop([target_param], axis=1).iloc[0].to_dict()
      #     )
      # else:
      #     input_example = data_before_preprocess.iloc[0].to_dict()
  
      # log model as sklearn flavor
      with set_active_mlflow_run(self.active_run):
          mlflow.sklearn.log_model(
              self._construct_pipeline_if_needed(model, prep_pipe),
              "model",
              conda_env=default_conda_env,
              # signature=signature,
              # input_example=input_example,
          )
  
imports: import secrets
  from contextlib import contextmanager
  from pycaret.loggers.base_logger import BaseLogger
  from pycaret.utils.generic import mlflow_remove_bad_chars
label_desc: Use image node_id 13 for calling the MlflowLogger obj's underlying member method code with example usage: obj.log_sklearn_pipeline(experiment, prep_pipe, model, path) without return types