鲲鹏社区首页
中文
注册
开发者
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

Search

接口定义

int Search(int nq, const float *xq, int topk, float *distances, int64_t *labels, int num_thread);

接口用途

图检索。

参数说明

参数名称

数据类型

描述

取值范围

nq

int

查询向量集数据量。

大于等于1。建议小于10亿。

xq

const float *

查询向量集数据。

限制非空,期待长度为nq * dim(数据量 * 特征维度)。

topk

int

最近邻的数量。

[1,nb],其中“nb”为向量底库数据量大小。

distances

float *

距离数组。

限制非空,期待长度为nq * topk

labels

int64_t *

检索结果的ID数组。

限制非空,期待长度为nq * topk

num_thread

int

检索时使用的线程数。

[1,std::thread::hardware_concurrency()],其中std::thread::hardware_concurrency()为当前系统支持的并发线程数

返回值

数据类型

说明

int

若参数超出取值范围则返回-1;在调用BuildSearcher或Load/Deserialize/LoadGraph前调用该接口时返回-1;否则返回0。