class_docstr: Serializable data structure for holding data for blocks --
  embeddings and necessary metadata for Retriever
class_docstr_tok: ["Serializable","data","structure","for","holding","data","for","blocks","--","embeddings","and","necessary","metadata","for","Retriever"]
docstr: Populate members from instance saved to file
docstr_tok: ["Populate","members","from","instance","saved","to","file"]
code: def load_from_file(self):
      """Populate members from instance saved to file"""
  
      if (
          not mpu.model_parallel_is_initialized()
          or mpu.get_data_parallel_rank() == 0
      ):
          print("\n> Unpickling BlockData", flush=True)
      state_dict = pickle.load(open(self.embedding_path, "rb"))
      if (
          not mpu.model_parallel_is_initialized()
          or mpu.get_data_parallel_rank() == 0
      ):
          print(">> Finished unpickling BlockData\n", flush=True)
  
      self.embed_data = state_dict["embed_data"]
  
imports: import itertools
  import os
  import pickle
  import shutil
  import numpy
  import torch
  from megatron import get_args
  from megatron.core import mpu
label_desc: Use image node_id 4 for calling the OpenRetreivalDataStore obj's underlying member method code with example usage: obj.load_from_file() without return types