code: def original_model_rmse(
      model: SklearnModel,
      X: Union[pd.DataFrame, np.ndarray],
      y: np.ndarray,
      n_k_fold_splits: int,
  ) -> List[float]:
      """
      Calculate the RMSE of the original model
      Used as a benchmark to compare against the null
  
      Parameters
      ----------
      model: SklearnModel
      X: np.ndarray
      y: np.ndarray
      n_k_fold_splits: int
  
      Returns
      -------
      List[float]
          List of the out of sample RMSEs for each fold of the covariate matrix
      """
      kf = KFold(n_k_fold_splits, shuffle=True)
  
      base_line_rmses = []
  
      for train_index, test_index in kf.split(X):
          model = deepcopy(model)
          model.fit(X[train_index], y[train_index])
          base_line_rmses.append(
              model.rmse(X[test_index], y[test_index])
          )
  
      return base_line_rmses
  
file_path: imodels/imodels/experimental/bartpy/features/featureimportance.py
imports: from copy import deepcopy
  from typing import List, Tuple, Union
  import numpy
  import pandas
  from matplotlib import pyplot
  from sklearn.model_selection import KFold
  from ..runner import run_models
  from ..sklearnmodel import SklearnModel
label_desc: Use image node_id 1 for calling a global function with example usage: original_model_rmse(model, X, y, n_k_fold_splits) and returns: base_line_rmses