code: def model_evaluation(
      alternative_scorers: Dict[str, Callable] = None,
      columns: Union[Hashable, List[Hashable]] = None,
      ignore_columns: Union[Hashable, List[Hashable]] = None,
      n_top_columns: int = None,
      n_samples: int = None,
      random_state: int = 42,
      n_to_show: int = 5,
      **kwargs,
  ) -> Suite:
      """Suite for evaluating the model's performance over different metrics, segments, error analysis, examining \
         overfitting, comparing to baseline, and more.
  
      List of Checks:
          .. list-table:: List of Checks
             :widths: 50 50
             :header-rows: 1
  
             * - Check Example
               - API Reference
             * - :ref:`tabular__roc_report`
               - :class:`~deepchecks.tabular.checks.model_evaluation.RocReport`
             * - :ref:`tabular__confusion_matrix_report`
               - :class:`~deepchecks.tabular.checks.model_evaluation.ConfusionMatrixReport`
             * - :ref:`tabular__weak_segments_performance`
               - :class:`~deepchecks.tabular.checks.model_evaluation.WeakSegmentPerformance`
             * - :ref:`tabular__prediction_drift`
               - :class:`~deepchecks.tabular.checks.model_evaluation.PredictionDrift`
             * - :ref:`tabular__simple_model_comparison`
               - :class:`~deepchecks.tabular.checks.model_evaluation.SimpleModelComparison`
             * - :ref:`tabular__calibration_score`
               - :class:`~deepchecks.tabular.checks.model_evaluation.CalibrationScore`
             * - :ref:`tabular__regression_systematic_error`
               - :class:`~deepchecks.tabular.checks.model_evaluation.RegressionSystematicError`
             * - :ref:`tabular__regression_error_distribution`
               - :class:`~deepchecks.tabular.checks.model_evaluation.RegressionErrorDistribution`
             * - :ref:`tabular__unused_features`
               - :class:`~deepchecks.tabular.checks.model_evaluation.UnusedFeatures`
             * - :ref:`tabular__boosting_overfit`
               - :class:`~deepchecks.tabular.checks.model_evaluation.BoostingOverfit`
             * - :ref:`tabular__model_inference_time`
               - :class:`~deepchecks.tabular.checks.model_evaluation.ModelInferenceTime`
             * - :ref:`tabular__prediction_drift`
               - :class:`~deepchecks.tabular.checks.model_evaluation.PredictionDrift`
  
      Parameters
      ----------
      alternative_scorers : Dict[str, Callable], default: None
          An optional dictionary of scorer name to scorer functions.
          If none given, use default scorers
      columns : Union[Hashable, List[Hashable]] , default: None
          The columns to be checked. If None, all columns will be checked except the ones in `ignore_columns`.
      ignore_columns : Union[Hashable, List[Hashable]] , default: None
          The columns to be ignored. If None, no columns will be ignored.
      n_top_columns : int , optional
          number of columns to show ordered by feature importance (date, index, label are first) (check dependent)
      n_samples : int , default: 1_000_000
          number of samples to use for checks that sample data. If none, use the default n_samples per check.
      random_state : int, default: 42
          random seed for all checks.
      n_to_show : int , default: 5
          number of top results to show (check dependent)
      **kwargs : dict
          additional arguments to pass to the checks.
  
      Returns
      -------
      Suite
          A suite for evaluating the model's performance.
  
      Examples
      --------
      >>> from deepchecks.tabular.suites import model_evaluation
      >>> suite = model_evaluation(columns=['a', 'b', 'c'], n_samples=1_000_000)
      >>> result = suite.run()
      >>> result.show()
  
      See Also
      --------
      :ref:`quick_full_suite`
      """
      args = locals()
      args.pop("kwargs")
      non_none_args = {k: v for k, v in args.items() if v is not None}
      kwargs = {**non_none_args, **kwargs}
  
      return Suite(
          "Model Evaluation Suite",
          TrainTestPerformance(
              **kwargs
          ).add_condition_train_test_relative_degradation_less_than(),
          RocReport(**kwargs).add_condition_auc_greater_than(),
          ConfusionMatrixReport(**kwargs),
          PredictionDrift(
              **kwargs
          ).add_condition_drift_score_less_than(),
          SimpleModelComparison(
              **kwargs
          ).add_condition_gain_greater_than(),
          WeakSegmentsPerformance(
              **kwargs
          ).add_condition_segments_relative_performance_greater_than(),
          CalibrationScore(**kwargs),
          RegressionErrorDistribution(**kwargs)
          .add_condition_kurtosis_greater_than()
          .add_condition_systematic_error_ratio_to_rmse_less_than(),
          UnusedFeatures(
              **kwargs
          ).add_condition_number_of_high_variance_unused_features_less_or_equal(),
          BoostingOverfit(
              **kwargs
          ).add_condition_test_score_percent_decline_less_than(),
          ModelInferenceTime(
              **kwargs
          ).add_condition_inference_time_less_than(),
      )
  
file_path: deepchecks/deepchecks/tabular/suites/default_suites.py
imports: from typing import Callable, Dict, List, Union
  from deepchecks.tabular import Suite
  from deepchecks.tabular.checks import BoostingOverfit, CalibrationScore, ConflictingLabels, ConfusionMatrixReport, DataDuplicates, DatasetsSizeComparison, DateTrainTestLeakageDuplicates, DateTrainTestLeakageOverlap, FeatureDrift, FeatureFeatureCorrelation, FeatureLabelCorrelation, FeatureLabelCorrelationChange, IdentifierLabelCorrelation, IndexTrainTestLeakage, IsSingleValue, LabelDrift, MixedDataTypes, MixedNulls, ModelInferenceTime, MultivariateDrift, NewCategoryTrainTest, NewLabelTrainTest, OutlierSampleDetection, PercentOfNulls, PredictionDrift, RegressionErrorDistribution, RocReport, SimpleModelComparison, SingleDatasetPerformance, SpecialCharacters, StringLengthOutOfBounds, StringMismatch, StringMismatchComparison, TrainTestPerformance, TrainTestSamplesMix, UnusedFeatures, WeakSegmentsPerformance
  from deepchecks.tabular.utils.task_type import TaskType
  from deepchecks.utils.typing import Hashable
label_desc: Use image node_id 3 for calling a global function with example usage: model_evaluation(alternative_scorers, columns, ignore_columns, n_top_columns, n_samples, random_state, n_to_show) and returns: Suite