code: def evaluate(args):
      mwt_dict = load_mwt_dict(args["mwt_json_file"])
      trainer = Trainer(
          model_file=args["load_name"] or args["save_name"],
          device=args["device"],
      )
      loaded_args, vocab = trainer.args, trainer.vocab
  
      for k in loaded_args:
          if not k.endswith("_file") and k not in [
              "device",
              "mode",
              "save_dir",
              "load_name",
              "save_name",
          ]:
              args[k] = loaded_args[k]
  
      eval_input_files = {
          "txt": args["txt_file"],
          "label": args["label_file"],
      }
  
      batches = TokenizationDataset(
          args,
          input_files=eval_input_files,
          vocab=vocab,
          evaluation=True,
          dictionary=trainer.dictionary,
      )
  
      oov_count, N, _, _ = output_predictions(
          args["conll_file"],
          trainer,
          batches,
          vocab,
          mwt_dict,
          args["max_seqlen"],
      )
  
      logger.info(
          "OOV rate: {:6.3f}% ({:6d}/{:6d})".format(
              oov_count / N * 100, oov_count, N
          )
      )
  
file_path: stanza/stanza/models/tokenizer.py
imports: import argparse
  from copy import copy
  import logging
  import random
  import numpy
  import os
  import torch
  import json
  from stanza.models.common import utils
  from stanza.models.tokenization.trainer import Trainer
  from stanza.models.tokenization.data import DataLoader, TokenizationDataset
  from stanza.models.tokenization.utils import load_mwt_dict, eval_model, output_predictions, load_lexicon, create_dictionary
  from stanza.models import _training_logging
label_desc: Use image node_id 6 for calling a global function with example usage: evaluate(args) without return types