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。 |
父主题: C++