fix: update aisaq param (#44861)

issue: #44365

Signed-off-by: xianliang.li <xianliang.li@zilliz.com>
This commit is contained in:
foxspy 2025-10-15 19:18:00 +08:00 committed by GitHub
parent 26d06c6340
commit b91878857e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 18 additions and 6 deletions

View File

@ -1379,6 +1379,13 @@ streaming:
# Any configuration related to the knowhere vector search engine
knowhere:
enable: true # When enable this configuration, the index parameters defined following will be automatically populated as index parameters, without requiring user input.
AISAQ:
build:
max_degree: 56 # Maximum degree of the Vamana graph
pq_code_budget_gb_ratio: 0.125 # Size limit on the PQ code (compared with raw data)
search_list_size: 100 # Size of the candidate list during building graph
search:
beam_width_ratio: 4 # Ratio between the maximum number of IO requests per search iteration and CPU number
DISKANN:
build:
max_degree: 56 # Maximum degree of the Vamana graph

View File

@ -228,13 +228,10 @@ func (it *indexBuildTask) Execute(ctx context.Context) error {
indexType := it.newIndexParams[common.IndexTypeKey]
var fieldDataSize uint64
var err error
if vecindexmgr.GetVecIndexMgrInstance().IsDiskANN(indexType) {
fieldDataSize, err = estimateFieldDataSize(it.req.GetDim(), it.req.GetNumRows(), it.req.GetField().GetDataType())
if err != nil {
log.Warn("get local used size failed")
return err
}
// Ignore the error here, this param will only be used for diskann and aisaq
fieldDataSize, _ = estimateFieldDataSize(it.req.GetDim(), it.req.GetNumRows(), it.req.GetField().GetDataType())
if vecindexmgr.GetVecIndexMgrInstance().IsDiskANN(indexType) {
err = indexparams.SetDiskIndexBuildParams(it.newIndexParams, int64(fieldDataSize))
if err != nil {
log.Warn("failed to fill disk index params", zap.Error(err))

View File

@ -44,6 +44,14 @@ func (p *knowhereConfig) init(base *BaseTable) {
return "Size of the candidate list during building graph"
case "DISKANN.search.beam_width_ratio":
return "Ratio between the maximum number of IO requests per search iteration and CPU number"
case "AISAQ.build.max_degree":
return "Maximum degree of the Vamana graph"
case "AISAQ.build.pq_code_budget_gb_ratio":
return "Size limit on the PQ code (compared with raw data)"
case "AISAQ.build.search_list_size":
return "Size of the candidate list during building graph"
case "AISAQ.search.beam_width_ratio":
return "Ratio between the maximum number of IO requests per search iteration and CPU number"
default:
return ""
}