code: def _check_config(self, **config):
      super()._check_config(**config)
      from bigdl.nano.utils.common import invalidInputError
  
      invalidInputError(
          isinstance(config["input_dim"], int),
          "'input_dim' should be int",
      )
      invalidInputError(
          isinstance(config["output_dim"], int),
          "'output_dim' should be int",
      )
      lstm_name = "lstm_units"
      dropout_name = "dropouts"
      if lstm_name in config:
          if not check_iter_type(config[lstm_name], (int, np.integer)):
              invalidInputError(
                  False,
                  f"{lstm_name} should be int or an list/tuple of ints. "
                  f"Got {config[lstm_name]}",
              )
      if dropout_name in config:
          if not check_iter_type(
              config[dropout_name], (float, np.float32)
          ):
              invalidInputError(
                  False,
                  f"{dropout_name} should be float or a list/tuple of floats. "
                  f"Got {config[dropout_name]}",
              )
      if lstm_name in config and dropout_name in config:
          if (
              isinstance(config[lstm_name], int)
              and isinstance(config[dropout_name], Iterable)
          ) or (
              isinstance(config[lstm_name], Iterable)
              and isinstance(config[dropout_name], Iterable)
              and len(config[lstm_name]) != len(config[dropout_name])
          ):
              invalidInputError(
                  False,
                  f"{lstm_name} should have the same elements num"
                  f" as {dropout_name}",
              )
  
file_path: BigDL/python/chronos/src/bigdl/chronos/model/tf1/VanillaLSTM_keras.py
imports: from bigdl.orca.automl.model.base_keras_model import KerasBaseModel
  from collections.abc import Iterable
  import numpy
label_desc: Use image node_id 2 for calling the VanillaLSTM obj's underlying member method code with example usage: obj._check_config() without return types