code: def _get_text_model_memory_usage(
      config, training_set_metadata, memory_usage
  ) -> int:
      max_feature_token_length = _get_text_feature_max_length(
          config, training_set_metadata
      )
      memory_usage = (
          memory_usage / AUTOML_TEXT_ENCODER_MAX_TOKEN_LEN
      ) * max_feature_token_length
      return memory_usage
  
imports: import copy
  import logging
  import math
  from collections import OrderedDict
  from typing import List
  import psutil
  from ludwig.api import LudwigModel
  from ludwig.backend import initialize_backend
  from ludwig.constants import AUTO, AUTOML_DEFAULT_TEXT_ENCODER, AUTOML_LARGE_TEXT_DATASET, AUTOML_MAX_ROWS_PER_CHECKPOINT, AUTOML_SMALLER_TEXT_ENCODER, AUTOML_SMALLER_TEXT_LENGTH, AUTOML_TEXT_ENCODER_MAX_TOKEN_LEN, HYPEROPT, MINIMUM_BATCH_SIZE, PREPROCESSING, SPACE, TEXT, TRAINER
  from ludwig.data.preprocessing import preprocess_for_training
  from ludwig.features.feature_registries import update_config_with_metadata
  from ludwig.schema.model_config import ModelConfig
  from ludwig.utils.automl.utils import get_model_type
  from ludwig.utils.torch_utils import initialize_pytorch
label_desc: Use image node_id 4 for calling a global function with example usage: _get_text_model_memory_usage(config, training_set_metadata, memory_usage) and returns: memory_usage