class_docstr: Object that manages all the data related to the computation
  except the actual within-bucket matching and the organization of the
  computation (parallel or not)
class_docstr_tok: ["Object","that","manages","all","the","data","related","to","the","computation","except","the","actual","within-bucket","matching","and","the","organization","of","the","computation","(","parallel","or","not",")"]
code: def coarse_quantization(self):
      self.tic("coarse quantization")
      bs = 65536
      nq = len(self.xq)
      q_assign = np.empty((nq, self.index.nprobe), dtype="int32")
      for i0 in range(0, nq, bs):
          i1 = min(nq, i0 + bs)
          q_dis_i, q_assign_i = self.index.quantizer.search(
              self.xq[i0:i1], self.index.nprobe
          )
          # q_dis[i0:i1] = q_dis_i
          q_assign[i0:i1] = q_assign_i
      self.toc()
      self.q_assign = q_assign
  
imports: import time
  import pickle
  import os
  import logging
  from multiprocessing.pool import ThreadPool
  import threading
  import _thread
  from queue import Queue
  import traceback
  import datetime
  import numpy
  import faiss
  from faiss.contrib.inspect_tools import get_invlist
label_desc: Use image node_id 7 for calling the BigBatchSearcher obj's underlying member method code with example usage: obj.coarse_quantization() without return types