SearchBatched
接口定义
Status ScannInterface::SearchBatched(const DenseDataset<float>& queries, MutableSpan<NNResultsVector> res, int final_nn, int pre_reorder_nn, int leaves) const;
接口用途
批量query搜索接口,单线程执行(与开源算法方法保持一致)。
参数说明
参数名称 |
描述 |
数据类型 |
取值范围 |
---|---|---|---|
queries |
批次内的Queries。 |
const DatapointPtr<float>& |
限制非空。 |
res |
用于存储最终需要的结果(labals, distances),每一项长度为final_nn,其中“final_nn”为最终返回结果数量。 |
MutableSpan<NNResultsVector> |
限制非空,长度为查询向量的数量。 |
final_nn |
最终返回结果数量,TopK。 |
int |
大于等于1,与构建时保持一致。 |
pre_reorder_nn |
重排前保存结果数量。 |
int |
大于等于final_nn,其中“final_nn”为最终返回结果数量。 |
leaves |
搜索子空间数量。 |
int |
[1, n_leaves],其中“n_leaves”为IVF倒排索引分区总子空间个数。 |
返回值
数据类型 |
说明 |
---|---|
Status |
表示方法执行状态,通过status.ok()判断是否成功。 |
父主题: C++接口