enhance: add checkers for Faiss-based HNSW (#36857)

Knowhere introduced FAISS-based HNSQ Flat/SQ/PQ/PRQ. This PR adds param
check in Milvus side.

This PR actually do nothing but let the check pass, since:
1. All indexes param check will be moved to Knowhere recently. @foxspy 
2. The index name will be changed from `FAISS_HNSW_xx` to `HNSW_xx`
after QA test. @alexanderguzhva

Signed-off-by: Li Liu <li.liu@zilliz.com>
pull/36816/head
liliu-z 2024-10-15 12:29:22 +08:00 committed by GitHub
parent aa904be6ec
commit b0d5866507
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 12 additions and 0 deletions

View File

@ -57,6 +57,10 @@ func (mgr *indexCheckerMgrImpl) registerIndexChecker() {
mgr.checkers[IndexHNSW] = newHnswChecker()
mgr.checkers[IndexDISKANN] = newDiskannChecker()
mgr.checkers[IndexSparseInverted] = newSparseInvertedIndexChecker()
mgr.checkers[IndexFaissHNSW] = newFloatVectorBaseChecker()
mgr.checkers[IndexFaissHNSWPQ] = newFloatVectorBaseChecker()
mgr.checkers[IndexFaissHNSWSQ] = newFloatVectorBaseChecker()
mgr.checkers[IndexFaissHNSWPRQ] = newFloatVectorBaseChecker()
// WAND doesn't have more index params than sparse inverted index, thus
// using the same checker.
mgr.checkers[IndexSparseWand] = newSparseInvertedIndexChecker()

View File

@ -40,6 +40,14 @@ const (
IndexDISKANN IndexType = "DISKANN"
IndexSparseInverted IndexType = "SPARSE_INVERTED_INDEX"
IndexSparseWand IndexType = "SPARSE_WAND"
// For temporary use, will be removed in the future.
// 1. All Index related param check will be moved to Knowhere recently.
// 2. FAISS_HNSW_xxx will be rename to HNSW_xxx after QA test. We keep the original name for comparison purpose.
// TODO: @liliu-z @foxspy
IndexFaissHNSW IndexType = "FAISS_HNSW_FLAT"
IndexFaissHNSWPQ IndexType = "FAISS_HNSW_PQ"
IndexFaissHNSWSQ IndexType = "FAISS_HNSW_SQ"
IndexFaissHNSWPRQ IndexType = "FAISS_HNSW_PRQ"
// scalar index
IndexSTLSORT IndexType = "STL_SORT"