code: def stop_by_num_features(
      logs: ListLogListType, min_num_features: int = 50
  ) -> bool:
      """
      Checks for logs to see if feature selection should stop
  
      Parameters
      ----------
      logs : list of list of dict
          A list of log-like lists of dictionaries evaluations.
  
      min_num_features: int (default 50)
          The minimun number of features the model can have before stopping
  
      Returns
      -------
      stop: bool
          A boolean whether to stop recursion or not
      """
  
      return len(get_used_features(first(logs))) <= min_num_features
  
file_path: fklearn/src/fklearn/tuning/stoppers.py
imports: from typing import Callable
  from toolz.curried import curry, take, first
  from fklearn.tuning.utils import get_best_performing_log, get_avg_metric_from_extractor, get_used_features
  from fklearn.types import ExtractorFnType, ListLogListType
label_desc: Use image node_id 5 for calling a global function with example usage: stop_by_num_features(logs, min_num_features) and returns: unknown