code: def process_decode_result(item):
      wav_filename, ground_truth, prediction, loss = item
      char_distance = levenshtein(ground_truth, prediction)
      char_length = len(ground_truth)
      word_distance = levenshtein(
          ground_truth.split(), prediction.split()
      )
      word_length = len(ground_truth.split())
      return AttrDict(
          {
              "wav_filename": wav_filename,
              "src": ground_truth,
              "res": prediction,
              "loss": loss,
              "char_distance": char_distance,
              "char_length": char_length,
              "word_distance": word_distance,
              "word_length": word_length,
              "cer": char_distance / char_length,
              "wer": word_distance / word_length,
          }
      )
  
file_path: DeepSpeech/training/deepspeech_training/util/evaluate_tools.py
imports: from __future__ import absolute_import, division, print_function
  import json
  from multiprocessing.dummy import Pool
  import numpy
  from attrdict import AttrDict
  from .flags import FLAGS
  from .text import levenshtein
  from .io import open_remote
label_desc: Use image node_id 3 for calling a global function with example usage: process_decode_result(item) and returns: AttrDict