code: def get_info_dict_tree(x, y, ml_model, fit_algorithm, pred_cols):
      """Get the ``info_dict`` dictionary for tree models.
  
      A series of functions are used in a flow to get all information needed
      in tree model summary. The flow is
      `~greykite.algo.common.model_summary_utils.create_info_dict_tree`,
      `~greykite.algo.common.model_summary_utils.add_model_params_tree`,
      `~greykite.algo.common.model_summary_utils.add_model_coef_df_tree`.
  
      Parameters
      ----------
      x : `numpy.array`
          The design matrix.
      y : `numpy.array`
          The response vector.
      ml_model : `class`
          The trained machine learning model class, see
          `~greykite.algo.common.ml_models.fit_model_via_design_matrix`
      fit_algorithm : `str`
          The name of fit algorithm, see
          `~greykite.algo.common.ml_models.fit_model_via_design_matrix`
      pred_cols : `list` [ `str` ]
          A list of predictor names.
  
      Returns
      -------
      info_dict : `dict`
          The dictionary of tree model summary information with the following keys:
  
              "x" : `numpy.array`
                  The design matrix.
              "y" : `numpy.array`
                  The response vector.
              "ml_model" : `class`
                  The trained machine learning model class, see
                  `~greykite.algo.common.ml_models.fit_model_via_design_matrix`
              "fit_algorithm" : `str`
                  The name of fit algorithm, see
                  `~greykite.algo.common.ml_models.fit_model_via_design_matrix`
              "pred_cols" : `list` [ `str` ]
                  A list of predictor names.
              "degenerate_index" : `numpy.array`
                  The indices where the x columns are degenerate.
              "n_sample" : `int`
                  Number of observations.
              "n_feature" : `int`
                  Number of features.
              "y_pred" : `numpy.array`
                  The predicted values.
              "y_mean" : `float`
                  The mean of response.
              "residual" : `numpy.array`
                  Residuals.
              "residual_summary" : `numpy.array`
                  Five number summary of residuals.
              "model" : `str`
                  The model name.
              "num_tree" : `int`
                  Number of trees used.
              "criterion" : `str`
                  The criterion to be minimized.
              "max_depth" : `int` or `None`
                  The maximal tree depth.
              "subsample" : `float` or `None`
                  The subsampling proportion.
              "max_features" : `int` or `None`
                  The maximal number of features to be used in a single split.
              "coef_summary_df" : `pandas.DataFrame`
                  The model summary df with the following columns:
  
                      "Pred_col" : `str`
                          The predictor names.
                      "Feature importance" : `float`
                          The impurity-based feature importance.
                      "Importance rank" : `int`
                          The rank of feature importance.
  
              "model_type" : `str`
                  Equals "tree" for tree models.
      """
      info_dict = create_info_dict_tree(
          x, y, ml_model, fit_algorithm, pred_cols
      )
      info_dict = add_model_params_tree(info_dict)
      info_dict = add_model_coef_df_tree(info_dict)
      info_dict["model_type"] = "tree"
      return info_dict
  
imports: import numpy
  import pandas
  import statsmodels
  import statsmodels.api
  from scipy.stats import f
  from scipy.stats import norm
  from scipy.stats import t
  from sklearn.base import clone
  from sklearn.linear_model import Ridge
  from sklearn.model_selection import train_test_split
  from greykite.algo.common.col_name_utils import INTERCEPT
  from greykite.algo.common.col_name_utils import simplify_pred_cols
label_desc: Use image node_id 22 for calling a global function with example usage: get_info_dict_tree(x, y, ml_model, fit_algorithm, pred_cols) and returns: info_dict