Inconsistent index’s returned from index.search after saving index to disk.
quantizer = faiss.index_factory(1024, "Flat", faiss.METRIC_INNER_PRODUCT)
index = faiss.IndexIVFPQ(quantizer, 1024, nlist, 8, 8)
index2 = faiss.IndexIDMap(index)
index2.train(xt)
index2.add_with_ids(xd, ids)
faiss.write_index(index2, 'index.bin')
disk_index = faiss.read_index( 'index.bin', faiss.IO_FLAG_ONDISK_SAME_DIR)
D, I = index2.search(xq, k)
D_disk, I_disk = disk_index.search(xq, k)
np.array_equal(D, D_disk) # True
np.array_equal(I, I_disk) # False
What could be the reason for the id’s do not match?
Producing the same id’s
New contributor
Yotam Intrator is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.