code: def save_model(
      model,
      model_name: str,
      model_only: bool = False,
      verbose: bool = True,
  ):
      """
      This function saves the transformation pipeline and trained model object
      into the current working directory as a pickle file for later use.
  
      Example
      -------
      >>> from pycaret.datasets import get_data
      >>> data = get_data('airline')
      >>> from pycaret.time_series import *
      >>> exp_name = setup(data = data, fh = 12)
      >>> arima = create_model('arima')
      >>> save_model(arima, 'saved_arima_model')
  
  
      model: sktime compatible object
          Trained model object
  
  
      model_name: str
          Name of the model.
  
  
      model_only: bool, default = False
          When set to True, only trained model object is saved instead of the
          entire pipeline.
  
  
      verbose: bool, default = True
          Success message is not printed when verbose is set to False.
  
  
      Returns:
          Tuple of the model object and the filename.
  
      """
  
      return _CURRENT_EXPERIMENT.save_model(
          model=model,
          model_name=model_name,
          model_only=model_only,
          verbose=verbose,
      )
  
imports: import logging
  import os
  from typing import TYPE_CHECKING, Any, BinaryIO, Callable, Dict, List, Optional, Tuple, Union
  import numpy
  import pandas
  from pycaret.internal.parallel.parallel_backend import ParallelBackend
  from pycaret.time_series.forecasting.oop import TSForecastingExperiment
  from pycaret.utils.generic import check_if_global_is_not_none
label_desc: Use image node_id 12 for calling a global function with example usage: save_model(model, model_name, model_only, verbose) and returns: _CURRENT_EXPERIMENT