code: def compute_mean_llm_calls(
      model_name, num_prompts, model=None, X=None
  ):
      if model_name == "manual_tree":
          return calculate_mean_depth_of_points_in_tree(model.tree_)
      elif model_name == "manual_hstree":
          return calculate_mean_depth_of_points_in_tree(
              model.estimator_.tree_
          )
      elif model_name == "manual_gbdt":
          return calculate_mean_unique_calls_in_ensemble(model, X)
      elif model_name == "manual_tree_cv":
          return calculate_mean_depth_of_points_in_tree(
              model.best_estimator_.tree_
          )
      elif model_name in ["manual_single_prompt"]:
          return 1
      elif model_name in ["manual_ensemble", "manual_boosting"]:
          return num_prompts
      else:
          return num_prompts
  
file_path: imodels/imodels/util/tree.py
imports: from sklearn import datasets
  from sklearn.tree import DecisionTreeRegressor
  import numpy
  from sklearn.tree._tree import Tree
  from imodels.tree.custom_greedy_tree import CustomDecisionTreeClassifier
label_desc: Use image node_id 8 for calling a global function with example usage: compute_mean_llm_calls(model_name, num_prompts, model, X) and returns: calculate_mean_depth_of_points_in_tree, calculate_mean_depth_of_points_in_tree, calculate_mean_unique_calls_in_ensemble, calculate_mean_depth_of_points_in_tree, int, num_prompts, num_prompts