code: def main():
      params = arguments.ConfigArgumentParser(
          description="CLI to generate decoder states from parallel data with a trained model, "
          "and build a data store from it."
      )
      arguments.add_state_generation_args(params)
      args = params.parse_args()
      check_condition(
          args.batch_type == C.BATCH_TYPE_SENTENCE,
          "Batching by number of words is not supported",
      )
  
      setup_main_logger(
          file_logging=False,
          console=not args.quiet,
          level=args.loglevel,
      )  # pylint: disable=no-member
  
      utils.log_basic_info(args)
      if args.end_of_prepending_tag is not None:
          logger.warning(
              "The end-of-prepending tag defined in the model will be used."
          )
  
      store(args)
  
imports: import argparse
  import logging
  import os
  from typing import List, Optional
  import numpy
  import torch
  from .None import arguments
  from .None import constants
  from .None import data_io
  from .None import utils
  from .log import setup_main_logger
  from .model import SockeyeModel, load_model
  from .vocab import Vocab
  from .utils import check_condition
  from .knn import KNNConfig, get_state_store_path, get_word_store_path, get_config_path
label_desc: Use image node_id 2 for calling a global function with example usage: main() without return types