When performing a multi-index merge, why should the coarse quantizers be the same ? #3686
guoxinghai
started this conversation in
General
Replies: 2 comments
|
Through the experiment, I found that the index performance obtained by the merge after re-specifying the quantizer for index2 would significantly decrease. Will quantizers also participate in the 'train' and 'add' processes. Is there another way to merge two indices that use different quantizers? |
0 replies
|
I used python to train two indexes in multiple processes (created by the same quantizer), and a Segmentation fault (core dumped) occurred during the merge. Is there a method for distributed training multiple indexes and merging them into one index |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Summary
I trained the two indexes separately, but when I merged the two indexes using
merge_from()I got the following error:RuntimeError: Error in virtual void faiss::IndexIVF::check_compatible_for_merge(const faiss::Index&) const at /root/workspace/faiss/IndexIVF.cpp:1210: Error: 'v == v2' failed: coarse quantizers should be the sameThe code I use is as follows:
In addition, I modified the index2 quantizer before the
merge_from()(aftertrain()andadd()), and it worked. Is there any problem with this.Platform
OS: ubuntu 20.04
Faiss version: V1.8.0
Running on:
Interface:
Reproduction instructions
All reactions