code: def create_model(
      model: Union[str, Any],
      fraction: float = 0.05,
      verbose: bool = True,
      fit_kwargs: Optional[dict] = None,
      experiment_custom_tags: Optional[Dict[str, Any]] = None,
      **kwargs,
  ):
      """
      This function trains a given model from the model library. All available
      models can be accessed using the ``models`` function.
  
  
      Example
      -------
      >>> from pycaret.datasets import get_data
      >>> anomaly = get_data('anomaly')
      >>> from pycaret.anomaly import *
      >>> exp_name = setup(data = anomaly)
      >>> knn = create_model('knn')
  
  
      model: str or scikit-learn compatible object
          ID of an model available in the model library or pass an untrained
          model object consistent with scikit-learn API. Estimators available
          in the model library (ID - Name):
  
          * 'abod' - Angle-base Outlier Detection
          * 'cluster' - Clustering-Based Local Outlier
          * 'cof' - Connectivity-Based Outlier Factor
          * 'histogram' - Histogram-based Outlier Detection
          * 'iforest' - Isolation Forest
          * 'knn' - k-Nearest Neighbors Detector
          * 'lof' - Local Outlier Factor
          * 'svm' - One-class SVM detector
          * 'pca' - Principal Component Analysis
          * 'mcd' - Minimum Covariance Determinant
          * 'sod' - Subspace Outlier Detection
          * 'sos' - Stochastic Outlier Selection
  
  
      fraction: float, default = 0.05
          The amount of contamination of the data set, i.e. the proportion of
          outliers in the data set. Used when fitting to define the threshold on
          the decision function.
  
  
      verbose: bool, default = True
          Status update is not printed when verbose is set to False.
  
  
      experiment_custom_tags: dict, default = None
          Dictionary of tag_name: String -> value: (String, but will be string-ified
          if not) passed to the mlflow.set_tags to add new custom tags for the experiment.
  
  
      fit_kwargs: dict, default = {} (empty dict)
          Dictionary of arguments passed to the fit method of the model.
  
  
      **kwargs:
          Additional keyword arguments to pass to the estimator.
  
  
      Returns:
          Trained Model
  
      """
  
      return _CURRENT_EXPERIMENT.create_model(
          estimator=model,
          fraction=fraction,
          fit_kwargs=fit_kwargs,
          verbose=verbose,
          experiment_custom_tags=experiment_custom_tags,
          **kwargs,
      )
  
imports: import logging
  import os
  from typing import Any, BinaryIO, Callable, Dict, List, Optional, Union
  import pandas
  from joblib.memory import Memory
  from pycaret.anomaly.oop import AnomalyExperiment
  from pycaret.loggers.base_logger import BaseLogger
  from pycaret.utils.constants import DATAFRAME_LIKE, SEQUENCE_LIKE
  from pycaret.utils.generic import check_if_global_is_not_none
label_desc: Use image node_id 2 for calling a global function with example usage: create_model(model, fraction, verbose, fit_kwargs, experiment_custom_tags) and returns: _CURRENT_EXPERIMENT