search
API定义 |
void search(idx_t n, const float *x, idx_t k, float *distances, idx_t *labels, const SearchParameters *params = nullptr) const override; |
---|---|
功能描述 |
实现AscendIndexIVFSP特征向量查询接口,根据输入的特征向量返回最相似的“k”条特征的ID。 |
输入 |
idx_t n:查询的特征向量的条数。 const float *x:特征向量数据。 idx_t k:需要返回的最近似的结果的个数。 const SearchParameters *params: faiss1.7.4的可选参数,默认为“nullptr”,暂不支持该参数。 |
输出 |
float *distances:查询向量与距离最近的前“k”个向量间的距离值。当有效的检索结果不足“k”个时,剩余无效距离用65504或-65504填充。 idx_t *labels:查询的距离最近的前“k”个向量的ID。当有效的检索结果不足“k”个时,剩余无效label用“-1”填充。 |
返回值 |
无 |
约束说明 |
查询的特征向量数据“x”的长度应该为dims * n,“distances”以及“labels”的长度应该为k * n,否则可能会出现越界读写的情况,引起程序的崩溃。此处“n”的取值范围:0 < n < 1e9;“k”通常不允许超过4096。 |
父主题: AscendIndexIVFSP