code: def run_eval(args):
      model = ConformerRNNTModule.load_from_checkpoint(
          args.checkpoint_path,
          sp_model=str(args.sp_model_path),
          biasing=args.biasing,
      ).eval()
      data_module = get_data_module(
          str(args.librispeech_path),
          str(args.global_stats_path),
          str(args.sp_model_path),
          biasinglist=args.biasing_list,
          droprate=args.droprate,
          maxsize=args.maxsize,
      )
  
      if args.use_cuda:
          model = model.to(device="cuda")
  
      total_edit_distance = 0
      total_length = 0
      dataloader = data_module.test_dataloader()
      hypout = []
      refout = []
      with torch.no_grad():
          for idx, (batch, sample) in enumerate(dataloader):
              filename = "librispeech_clean_100_{}".format(idx)
              actual = sample[0][2]
              predicted = model(batch)
              hypout.append(
                  "{} ({})\n".format(
                      predicted.upper().strip(), filename
                  )
              )
              refout.append(
                  "{} ({})\n".format(actual.upper().strip(), filename)
              )
              total_edit_distance += compute_word_level_distance(
                  actual, predicted
              )
              total_length += len(actual.split())
              if idx % 100 == 0:
                  logger.warning(
                      f"Processed elem {idx}; WER: {total_edit_distance / total_length}"
                  )
      logger.warning(f"Final WER: {total_edit_distance / total_length}")
      with open(os.path.join(args.expdir, "hyp.trn.txt"), "w") as fout:
          fout.writelines(hypout)
      with open(os.path.join(args.expdir, "ref.trn.txt"), "w") as fout:
          fout.writelines(refout)
  
file_path: audio/examples/asr/librispeech_conformer_rnnt_biasing/eval.py
imports: import logging
  import os
  import pathlib
  from argparse import ArgumentParser
  import torch
  import torchaudio
  from lightning import ConformerRNNTModule
  from transforms import get_data_module
label_desc: Use image node_id 2 for calling a global function with example usage: run_eval(args) without return types