class_docstr: TaskNTalk basic teacher, it picks a random image and associates a random task with
  it.
  
  Metric updates and observation are to be implemented.
docstr: Select random image and associate random task with it.
docstr_tok: ["Select","random","image","and","associate","random","task","with","it","."]
code: def act(self):
      """
      Select random image and associate random task with it.
      """
      image = random.choice(self.data)
      task = random.choice(self.task_defn)
      labels = [image[self.task_index[attr]] for attr in task]
      action = {
          "image": " ".join(image),
          "text": " ".join(task),
          "labels": [" ".join(labels)],
          "episode_done": True,
      }
      # TODO(kd): fetch all data for valid/test
      return action
  
imports: from parlai.core.teachers import Teacher
  from parlai.utils.io import PathManager
  from .build import build
  import json
  import os
  import random
label_desc: Use image node_id 6 for calling the AbstractTaskNTalk obj's underlying member method code with example usage: obj.act() and returns: action