def submit_glue(config_path, output_path, download):
    """Creates submission file for the GLUE tasks.
    Args:
        config_path: Path to the model configuration file.
        output_path: Path to output file. If None, file name is selected according corresponding task name.
        download: If True, the model will be downloaded from the DeepPavlov server.
    """

    model, data_gen, task_name = split_config(config_path, download)

    if task_name == 'cola':
        submission = get_predictions(model, data_gen, 'acceptable')

    elif task_name.startswith('mnli'):
        submission = get_predictions(model, data_gen)

    elif task_name == 'mrpc':
        submission = get_predictions(model, data_gen, 'equivalent')

    elif task_name == 'sst2':
        submission = get_predictions(model, data_gen, 'positive')

    elif task_name == 'stsb':
        submission = get_predictions(model, data_gen, None, True)

    elif task_name == 'wnli':
        submission = get_predictions(model, data_gen, 'entailment')

    elif task_name in GLUE_TASKS:
        submission = get_predictions(model, data_gen)
    else:
        raise ValueError(f'Unexpected GLUE task name: {task_name}')

    save_path = output_path or f'{GLUE_TASKS[task_name]}.tsv'
    save_path = expand_path(save_path)
    save_path.parent.mkdir(parents=True, exist_ok=True)
    save_array = np.vstack(([list(submission.keys())], np.array(list(submission.values())).transpose()))
    np.savetxt(save_path, save_array, delimiter='\t', fmt='%s')
    log.info(f'Prediction saved to {save_path}')
Creates submission file for the GLUE tasks.
    Args:
        config_path: Path to the model configuration file.
        output_path: Path to output file. If None, file name is selected according corresponding task name.
        download: If True, the model will be downloaded from the DeepPavlov server.
    
deeppavlov/utils/benchmarks/benchmarks.py