开发者
下载
[object Object][object Object][object Object]

AscendIndex作为特征检索组件中的大部分检索的Index的基类,向上承接Faiss,向下为特征检索中的其他Index定义接口。

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object][object Object]

AscendIndexCluster需要使用指定对应资源的初始化,初始化完之后会申请一段完整空间用于存储底库。在使用完之后,需要调用接口对资源进行释放。

AscendIndexCluster仅支持使用Atlas 推理系列产品,在标准态部署方式下的向量内积距离类型。AscendIndexCluster在使用时依赖Flat和AICPU算子,具体请参见

支持多线程并发调用,需要设置“MX_INDEX_MULTITHREAD”环境变量为1,即export MX_INDEX_MULTITHREAD=1,设置为其他值或者不设置,则表示不开启多线程功能。当前的特征检索内部会使用OMP做性能加速,OMP不支持与其他多线程机制混用。反复创建新线程使用OMP会导致内存持续累加,因此建议使用固定的线程来运行检索任务。

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]
[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

AscendIndex需要使用对应的AscendIndexConfig执行对应资源的初始化,AscendIndexConfig中需要配置执行检索过程中的硬件资源和内存池大小等。

[object Object]

成员介绍[object Object][object Object]

[object Object]undefined

接口说明[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object][object Object]

AscendIndexInt8作为特征检索组件中的采用INT8特征向量的Index的基类,为特征检索中的其他INT8的Index定义接口。

不支持多线程并发调用,因此在多线程的场景中需要用户在使用前加锁,否则检索接口可能导致异常。并且不支持不同线程间共享一个Device。当前的特征检索内部会使用OMP做性能加速,OMP不支持与其他多线程机制混用。反复创建新线程使用OMP会导致内存持续累加,因此建议使用固定的线程来运行检索任务。

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]
[object Object]
[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

AscendIndexInt8需要使用对应的AscendIndexInt8Config执行对应资源的初始化。

成员介绍[object Object][object Object]

[object Object]undefined

接口说明[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object][object Object]

AscendIndexInt8Flat存储INT8类型特征向量并执行暴力搜索。

支持多线程并发调用,需要设置“MX_INDEX_MULTITHREAD”环境变量为1,即export MX_INDEX_MULTITHREAD=1,设置为其他值或者不设置,则表示不开启多线程功能。当前的特征检索内部会使用OMP做性能加速,OMP不支持与其他多线程机制混用。反复创建新线程使用OMP会导致内存持续累加,因此建议使用固定的线程来运行检索任务。

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

AscendIndexInt8Flat需要使用对应的AscendIndexInt8FlatConfig执行对应资源的初始化。

成员介绍[object Object][object Object]

[object Object]undefined

接口说明[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object][object Object]

AscendIndexFlat是最基础的特征检索,存储FP16浮点数类型特征向量并执行暴力搜索。

支持多线程并发调用,需要设置“MX_INDEX_MULTITHREAD”环境变量为1,即export MX_INDEX_MULTITHREAD=1,设置为其他值或者不设置,则表示不开启多线程功能。当前的特征检索内部会使用OMP做性能加速,OMP不支持与其他多线程机制混用。反复创建新线程使用OMP会导致内存持续累加,因此建议使用固定的线程来运行检索任务。

[object Object]
[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

AscendIndexFlat需要使用对应的AscendIndexFlatConfig执行对应资源的初始化。

接口说明[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object][object Object]

AscendIndexFlatL2是存储FP16浮点数类型并使用L2距离的特征暴力检索算法。

支持多线程并发调用,需要设置“MX_INDEX_MULTITHREAD”环境变量为1,即export MX_INDEX_MULTITHREAD=1,设置为其他值或者不设置,则表示不开启多线程功能。当前的特征检索内部会使用OMP做性能加速,OMP不支持与其他多线程机制混用。反复创建新线程使用OMP会导致内存持续累加,因此建议使用固定的线程来运行检索任务。

[object Object]
[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object][object Object]

AscendIndexSQ对输入向量执行Scalar Quantization。

存入底库的向量以及各个接口的query向量均需为归一化的float浮点数类型。

支持多线程并发调用,需要设置“MX_INDEX_MULTITHREAD”环境变量为1,即export MX_INDEX_MULTITHREAD=1,设置为其他值或者不设置,则表示不开启多线程功能。当前的特征检索内部会使用OMP做性能加速,OMP不支持与其他多线程机制混用。反复创建新线程使用OMP会导致内存持续累加,因此建议使用固定的线程来运行检索任务。

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

AscendIndexSQ需要使用对应的AscendIndexSQConfig执行对应资源的初始化。

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object][object Object]

IndexIL是一个基于连续内存申请机制的特征管理抽象类,服务于将下标索引作为label的检索算法,需要继承实现所有接口来使用。

要求存入底库的向量以及各个接口的query向量均为归一化后的FP16浮点数类型。(IL表示“Indices as Labels”。)

不支持多线程并发调用,因此在多线程的场景中需要用户在使用前加锁,否则检索接口可能导致异常。并且不支持不同线程间共享一个Device。

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object][object Object]

IndexILFlat继承自IndexIL,为纯Device侧检索方案,利用昇腾AI处理器和AI Core等资源进行各个接口的使能。程序需要在Host侧编译生成二进制文件,然后将二进制文件和相关运行时依赖部署到Device侧执行。IndexILFlat需要使用指定对应资源的初始化,初始化完之后会申请一段完整空间用于存储底库。在使用完之后,需要调用接口对资源进行释放。

IndexILFlat方案当前只在Atlas 推理系列产品上进行功能和性能的维护,底库和query向量由用户保证归一化,接口当前仅支持向量内积距离,具体使用方法请参见。(该算法运行成功依赖TIK算子的om文件,纯Device场景需要用户确保部署的是基于Index SDK交付件生成的om文件,需要确保om文件不被篡改。)

支持多线程并发调用,需要设置“MX_INDEX_MULTITHREAD”环境变量为1,即export MX_INDEX_MULTITHREAD=1,设置为其他值或者不设置,则表示不开启多线程功能。当前的特征检索内部会使用OMP做性能加速,OMP不支持与其他多线程机制混用。反复创建新线程使用OMP会导致内存持续累加,因此建议使用固定的线程来运行检索任务。

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object][object Object]

AscendIndexILFlat为ILFlat标准态场景,需要使用Init指定对应资源的初始化,初始化完成之后会申请一段完整空间用于存储底库。在使用完成之后,需要调用Finalize接口对资源进行释放。

AscendIndexILFlat仅支持使用Atlas 推理系列产品,在标准态部署方式下的向量内积距离类型。AscendIndexILFlat在使用时依赖Flat和AICPU算子,具体请参见

支持多线程并发调用,需要设置“MX_INDEX_MULTITHREAD”环境变量为1,即export MX_INDEX_MULTITHREAD=1,设置为其他值或者不设置,则表示不开启多线程功能。当前的特征检索内部会使用OMP做性能加速,OMP不支持与其他多线程机制混用。反复创建新线程使用OMP会导致内存持续累加,因此建议使用固定的线程来运行检索任务。

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object][object Object]

[object Object]

[object Object][object Object]

[object Object]