def METHOD_NAME(sys_argv):
    parser = argparse.ArgumentParser(
        description="This script loads a pretrained model and uses it to forecast",
        prog="ludwig forecast",
        usage="%(prog)s [options]",
    )
    parser.add_argument(
        "-n", "--horizon", help="horizon, or number of steps in the future to forecast", type=int, default=1
    )
    # ---------------
    # Data parameters
    # ---------------
    parser.add_argument("--dataset", help="input data file path", required=True)
    parser.add_argument(
        "--data_format",
        help="format of the input data",
        default="auto",
        choices=[
            "auto",
            "csv",
            "excel",
            "feather",
            "fwf",
            "hdf5",
            "html",
            "tables",
            "json",
            "jsonl",
            "parquet",
            "pickle",
            "sas",
            "spss",
            "stata",
            "tsv",
        ],
    )
    # ----------------
    # Model parameters
    # ----------------
    parser.add_argument("-m", "--model_path", help="model to load", required=True)
    # -------------------------
    # Output results parameters
    # -------------------------
    parser.add_argument(
        "-od", "--output_directory", type=str, default="results", help="directory that contains the results"
    )
    parser.add_argument(
        "-of",
        "--output_format",
        help="format to write the output dataset",
        default="parquet",
        choices=[
            "csv",
            "parquet",
        ],
    )
    parser.add_argument(
        "-b",
        "--backend",
        help="specifies backend to use for parallel / distributed execution, "
        "defaults to local execution or Horovod if called using horovodrun",
        choices=ALL_BACKENDS,
    )
    parser.add_argument(
        "-l",
        "--logging_level",
        default="info",
        help="the level of logging to use",
        choices=["critical", "error", "warning", "info", "debug", "notset"],
    )
    add_contrib_callback_args(parser)
    args = parser.parse_args(sys_argv)
    args.callbacks = args.callbacks or []
    for callback in args.callbacks:
        callback.on_cmdline("forecast", *sys_argv)
    args.logging_level = get_logging_level_registry()[args.logging_level]
    logging.getLogger("ludwig").setLevel(args.logging_level)
    global logger
    logger = logging.getLogger("ludwig.forecast")
    args.backend = initialize_backend(args.backend)
    if args.backend.is_coordinator():
        print_ludwig("Forecast", LUDWIG_VERSION)
        logger.info(f"Dataset path: {args.dataset}")
        logger.info(f"Model path: {args.model_path}")
        logger.info("")
    forecast_cli(**vars(args))