code: def process_json_file(self, file_name):
      input_file_name, output_prefix = file_name
      print("Opening", input_file_name)
      fin = open(input_file_name, "r", encoding="utf-8")
  
      startup_start = time.time()
      encoder = Encoder(self.args)
      tokenizer = build_tokenizer(self.args)
      pool = multiprocessing.Pool(
          self.workers, initializer=encoder.initializer
      )
      encoded_docs = pool.imap(encoder.encode, fin, 32)
  
      level = "document"
      if self.args.split_sentences:
          level = "sentence"
  
      output_bin_files = {}
      output_idx_files = {}
      builders = {}
  
      for key in self.args.json_keys:
          output_bin_files[key] = "{}_{}_{}.bin".format(
              output_prefix, key, level
          )
          output_idx_files[key] = "{}_{}_{}.idx".format(
              output_prefix, key, level
          )
          builders[key] = indexed_dataset.MMapIndexedDatasetBuilder(
              output_bin_files[key],
              dtype=indexed_dataset.DType.optimal_dtype(
                  tokenizer.vocab_size
              ),
          )
  
      startup_end = time.time()
      proc_start = time.time()
      total_bytes_processed = 0
      print("Time to startup:", startup_end - startup_start)
      for i, (doc, sentence_lens, bytes_processed) in enumerate(
          encoded_docs, start=1
      ):
          total_bytes_processed += bytes_processed
          for key in doc.keys():
              builders[key].add_document(doc[key], sentence_lens[key])
          self.print_processing_stats(
              i, proc_start, total_bytes_processed
          )
  
      fin.close()
      builders[key].finalize(output_idx_files[key])
  
imports: import argparse
  import math
  import json
  import os
  import sys
  import time
  import gzip
  import glob
  import torch
  import numpy
  import multiprocessing
  from megatron.tokenizer import build_tokenizer
  from megatron.core.datasets import indexed_dataset
label_desc: Use image node_id 4 for calling the Partition obj's underlying member method code with example usage: obj.process_json_file(file_name) without return types