code: def get_dataset_itr(args, task, models):
      return task.get_batch_iterator(
          dataset=task.dataset(args.gen_subset),
          max_tokens=args.max_tokens,
          max_sentences=args.batch_size,
          max_positions=(sys.maxsize, sys.maxsize),
          ignore_invalid_inputs=args.skip_invalid_size_inputs_valid_test,
          required_batch_size_multiple=args.required_batch_size_multiple,
          num_shards=args.num_shards,
          shard_id=args.shard_id,
          num_workers=args.num_workers,
          data_buffer_size=args.data_buffer_size,
      ).next_epoch_itr(shuffle=False)
  
imports: import ast
  import logging
  import math
  import os
  import sys
  import editdistance
  import numpy
  import torch
  from fairseq import checkpoint_utils, options, progress_bar, tasks, utils
  from fairseq.data.data_utils import post_process
  from fairseq.logging.meters import StopwatchMeter, TimeMeter
label_desc: Use image node_id 3 for calling a global function with example usage: get_dataset_itr(args, task, models) and returns: task