code: def test_run_with_scorer_proba_too_many_classes(
      text_classification_string_class_dataset_mock,
  ):
      # Arrange
      check = SingleDatasetPerformance(scorers=["f1_macro"])
  
      # Act & Assert
      assert_that(
          calling(check.run).with_args(
              text_classification_string_class_dataset_mock,
              probabilities=[
                  [0.1, 0.4, 0.5],
                  [0.9, 0.05, 0.05],
                  [0.9, 0.01, 0.09],
              ],
          ),
          raises(
              ValidationError,
              'Check requires classification probabilities for the "Train" dataset to have 2 columns, '
              "same as the number of classes",
          ),
      )
  
imports: import numpy
  from hamcrest import assert_that, calling, close_to, equal_to, has_items, raises
  from deepchecks.core.errors import DeepchecksValueError, ValidationError
  from deepchecks.nlp.checks.model_evaluation.single_dataset_performance import SingleDatasetPerformance
  from tests.base.utils import equal_condition_result
label_desc: Use image node_id 3 for calling a global function with example usage: test_run_with_scorer_proba_too_many_classes(text_classification_string_class_dataset_mock) without return types