Search
API定义 |
APP_ERROR Search(int n, const float16_t *queries, int topk, idx_t *indices, float *distances, unsigned int tableLen = 0, const float *table = nullptr); |
---|---|
功能描述 |
查询与query向量距离最近的“topk”个底库下标索引和对应的距离,如传递有效的映射表(tableLen > 0 且table为非空指针),则输出映射后的距离。 |
输入 |
int n:待查询特征向量的数目。 const float16_t *queries:待查询特征向量,长度为n * 向量维度dim。 int topk:查询向量和底库的比对距离进行排序,返回“topk”条结果。 unsigned int tableLen:映射表长度,默认值为0,表示不做映射。目前支持配置映射表长为“10000”。 const float *table:映射表指针,指向“tableLen”长度的有效映射值存储空间,目前支持的冗余长度为“48”,即“table”指向的空间长度为 10048 * sizeof(float) Byte。 |
输出 |
float *distances:外部内存,与query相似度最高的topk * n个底库特征向量所对应的余弦距离,长度为n * topk。 idx_t *indices:外部内存,返回与query相似度最高的“topk”个底库向量对应的下标索引,长度为n * topk。 |
返回值 |
APP_ERROR:调用返回状态,具体请参见接口调用返回值参考。 |
约束说明 |
|