class_docstr: multimodal vector retriver:
  text retrieve video or video retrieve text.
class_docstr_tok: ["multimodal","vector","retriver",":","text","retrieve","video","or","video","retrieve","text","."]
code: def save(self, out_dir):
      faiss.write_index(
          self.db["video"], os.path.join(out_dir, "video_faiss_idx")
      )
      faiss.write_index(
          self.db["text"], os.path.join(out_dir, "text_faiss_idx")
      )
  
      with open(
          os.path.join(out_dir, "videoid_to_vectoridx.pkl"), "wb"
      ) as fw:
          pickle.dump(
              self.videoid_to_vectoridx,
              fw,
              protocol=pickle.HIGHEST_PROTOCOL,
          )
  
imports: import os
  import numpy
  import pickle
  import time
  from collections import defaultdict
  from ..utils import get_local_rank, print_on_rank0
label_desc: Use image node_id 4 for calling the MMVectorRetriever obj's underlying member method code with example usage: obj.save(out_dir) without return types