code: def test_auto_ml_pipeline_feature_generator_raw_text(
      generator_helper, data_helper
  ):
      # Given
      input_data = data_helper.generate_multi_feature_full()
  
      toy_vectorizer = CountVectorizer(
          min_df=2,
          ngram_range=(1, 3),
          max_features=1000,
          dtype=np.uint8,
      )
  
      generator = AutoMLPipelineFeatureGenerator(
          enable_raw_text_features=True, vectorizer=toy_vectorizer
      )
  
      for generator_stage in generator.generators:
          for generator_inner in generator_stage:
              if isinstance(generator_inner, TextNgramFeatureGenerator):
                  # Necessary in test to avoid CI non-deterministically pruning ngram counts.
                  generator_inner.max_memory_ratio = None
  
      expected_feature_metadata_in_full = {
          ("category", ()): ["cat"],
          ("datetime", ()): ["datetime"],
          ("float", ()): ["float"],
          ("int", ()): ["int_bool", "int"],
          ("object", ()): ["obj"],
          ("object", ("datetime_as_object",)): ["datetime_as_object"],
          ("object", ("text",)): ["text"],
      }
  
      expected_feature_metadata_full = {
          ("category", ()): ["obj", "cat"],
          ("float", ()): ["float"],
          ("int", ()): ["int"],
          ("int", ("binned", "text_special")): [
              "text.char_count",
              "text.word_count",
              "text.lower_ratio",
              "text.special_ratio",
              "text.symbol_ratio. ",
          ],
          ("int", ("bool",)): ["int_bool"],
          ("int", ("datetime_as_int",)): [
              "datetime",
              "datetime.year",
              "datetime.month",
              "datetime.day",
              "datetime.dayofweek",
          ],
          ("int", ("text_ngram",)): [
              "__nlp__.breaks",
              "__nlp__.end",
              "__nlp__.end of",
              "__nlp__.sentence",
              "__nlp__.the",
              "__nlp__.world",
              "__nlp__._total_",
          ],
          ("object", ("text",)): ["text_raw_text"],
      }
  
      # When
      output_data = generator_helper.fit_transform_assert(
          input_data=input_data,
          generator=generator,
          expected_feature_metadata_in_full=expected_feature_metadata_in_full,
          expected_feature_metadata_full=expected_feature_metadata_full,
      )
  
      assert list(input_data["text"].values) == list(
          output_data["text_raw_text"].values
      )
  
file_path: autogluon/features/tests/features/generators/test_auto_ml_pipeline.py
imports: import numpy
  import pytest
  from sklearn.feature_extraction.text import CountVectorizer
  from autogluon.features.generators import AutoMLPipelineFeatureGenerator, TextNgramFeatureGenerator
label_desc: Use image node_id 2 for calling a global function with example usage: test_auto_ml_pipeline_feature_generator_raw_text(generator_helper, data_helper) without return types