class_docstr: Processor for the SQuAD data set.
  used by the version 1.1 and version 2.0 of SQuAD, respectively.
  
  Args:
      data_file: data file path
      mode: TRAINING_MODE/EVALUATION_MODE/INFERENCE_MODE for creating training/evaluation/inference dataset
docstr: Get examples from raw json file
docstr_tok: ["Get","examples","from","raw","json","file"]
code: def get_examples(self):
      """
      Get examples from raw json file
      """
      if self.data_file is None:
          raise ValueError(f"{self.mode} data file is None.")
  
      # remove this line and the replace cache line below - which is a temp fix
      with open(
          self.data_file.replace("_cache", ""), "r", encoding="utf-8"
      ) as reader:
          input_data = ijson.items(reader, "data.item")
  
          examples = []
          for entry in input_data:
              len_docs = []
              title = entry["title"]
              for paragraph in entry["paragraphs"]:
                  context_text = paragraph["context"]
                  for qa in paragraph["qas"]:
                      qas_id = qa["id"]
                      question_text = qa["question"]
                      if not question_text:
                          continue
                      start_position_character = None
                      answer_text = None
                      answers = []
                      if "is_impossible" in qa:
                          is_impossible = (
                              qa["is_impossible"]
                              or len(qa["answers"]) < 1
                          )
                      else:
                          is_impossible = False
  
                      if not is_impossible:
                          if self.mode in [
                              TRAINING_MODE,
                              EVALUATION_MODE,
                          ]:
                              answer = qa["answers"][0]
                              answer_text = answer["text"]
                              start_position_character = answer[
                                  "answer_start"
                              ]
                          if self.mode == EVALUATION_MODE:
                              answers = qa["answers"]
                      if context_text in self.context_text_to_doc_id:
                          doc_id = self.context_text_to_doc_id[
                              context_text
                          ]
                      else:
                          doc_id = self.doc_id
                          self.context_text_to_doc_id[
                              context_text
                          ] = doc_id
                          self.doc_id_to_context_text[
                              doc_id
                          ] = context_text
                          self.doc_id += 1
                          len_docs.append(len(context_text))
  
                      example = SquadExample(
                          qas_id=qas_id,
                          question_text=question_text,
                          context_text=context_text,
                          context_id=doc_id,
                          answer_text=answer_text,
                          start_position_character=start_position_character,
                          title=title,
                          is_impossible=is_impossible,
                          answers=answers,
                      )
  
                      examples.append(example)
  
              logging.info(
                  "mean no. of chars in doc: {}".format(
                      np.mean(len_docs)
                  )
              )
              logging.info(
                  "max no. of chars in doc: {}".format(np.max(len_docs))
              )
      return examples
  
imports: import collections
  from typing import List
  import ijson
  import numpy
  from transformers.models.bert.tokenization_bert import BasicTokenizer
  from nemo.collections.nlp.data.data_utils import DataProcessor, check_chinese_char, normalize_answer, normalize_chinese_answer
  from nemo.utils import logging
label_desc: Use image node_id 2 for calling the SquadProcessor obj's underlying member method code with example usage: obj.get_examples() and returns: examples