一种混合版本的向量数据检索方法、装置及计算机设备与流程

摘要: 本发明涉及数据库、向量数据库、人工智能原生数据库、向量近邻检索、嵌入模型版本迁移、目标模型推理调用控制以及神经网络形式化验证。具体涉及一种在数据对象集合中一部分...
一种混合版本的向量数据检索方法、装置及计算机设备与流程

本发明涉及数据库、向量数据库、人工智能原生数据库、向量近邻检索、嵌入模型版本迁移、目标模型推理调用控制以及神经网络形式化验证。具体涉及一种在数据对象集合中一部分数据对象尚未保存目标版本向量、另一部分数据对象已经保存目标版本向量的混合版本状态下,针对具有预设固定中心的倒排文件索引,利用校准锚点、经形式化验证的方向残差lipschitz证书、经形式化验证的向量残差lipschitz证书、旧版本数据对象的可能倒排分区编号集合、目标向量误差上界以及查询处理过程中动态更新的候选排序阈值,对旧版本数据对象进行分区排除和严格距离下界排除,并仅对不能被严格排除的旧版本数据对象调用目标版本嵌入模型的检索方法、装置及计算机设备。本发明不以恢复对全部数据对象执行全局精确最近邻检索为必要目标,而以使用相同数据对象集合、相同目标版本嵌入模型、相同固定中心集合、相同查询探测分区数量和相同候选排序规则的固定中心倒排文件索引参考执行为检索基准。

背景技术:

1、向量数据库通常利用嵌入模型将文本、图像、音频、视频、商品、用户或者其他数据对象编码为高维向量,并利用倒排文件索引等向量索引结构减少查询时需要计算距离的数据对象数量。

2、在嵌入模型版本迁移过程中,设第一嵌入模型为,设作为目标版本模型的第二嵌入模型为,其中为对象输入空间,和为相应向量维数。

3、设参与检索的数据对象集合为。在给定的数据快照下,将尚未保存真实目标版本向量的数据对象构成旧版本数据对象集合,并将其余已经保存真实目标版本向量且已经确定真实逻辑分区的数据对象构成目标版本就绪对象集合。对于任一,系统已经保存旧版本向量,但尚未保存真实目标版本向量。对于任一,系统已经保存真实目标版本向量,并能够直接确定该对象的真实逻辑分区和查询距离。

4、旧版本数据对象和目标版本就绪对象表示数据对象在迁移过程中的处理状态,而不表示对象创建时间。旧版本数据对象在生成并持久化真实目标版本向量、且确定真实逻辑分区后,可以转入目标版本就绪对象集合。

5、固定中心倒排文件索引具有预设固定中心集合:

6、

7、对于任意目标向量,可以按照由欧氏距离和中心编号构成的字典序定义真实逻辑分区函数:

8、

9、当多个固定中心与目标向量之间的欧氏距离相同时,中心编号较小的固定中心优先,从而每一目标版本向量具有唯一真实逻辑分区。

10、若全部数据对象均已经采用第二嵌入模型编码,则数据对象应被分配至编号为的逻辑倒排分区。对于查询对象,系统生成目标版本查询向量,并按照二元组的字典序选择排序在前位的中心编号,形成查询探测分区编号集合。位于所述查询探测分区中的对象按照候选排序元组:

11、

12、进行排序,其中为数据对象的确定性唯一标识。

13、在混合版本状态下,若直接利用旧版本向量确定旧版本数据对象所属的目标版本逻辑倒排分区,由于第一嵌入模型与第二嵌入模型生成的向量可能位于不同向量空间或者具有不同几何关系,旧版本向量不能直接代替真实目标版本向量。

14、即使设置第一向量空间至第二向量空间的转换函数,并根据旧版本向量形成目标空间估计向量,所述目标空间估计向量与真实目标版本向量之间仍可能存在误差。若直接根据确定唯一倒排分区或者直接使用计算查询距离,可能产生以下问题:

15、将本应属于查询探测分区的旧版本数据对象错误地排除;

16、将本不属于查询探测分区的旧版本数据对象错误地作为候选对象处理;

17、对候选对象的距离次序作出错误判断;

18、改变最终前项检索结果;

19、使混合版本检索无法与全量目标版本固定中心倒排文件索引参考执行保持一致。

20、一种直接解决方式是在目标版本检索服务上线前,对全部旧版本数据对象调用第二嵌入模型,生成并保存全部真实目标版本向量,随后重新建立全量目标版本倒排文件索引。所述直接方式在技术上可行,但其上线前第二嵌入模型调用数量通常与旧版本数据对象数量呈线性关系。当第二嵌入模型推理需要图形处理器、中央处理器、专用加速器、原始数据对象读取、解码、跨节点传输或者目标版本向量写入时,全量预生成会产生较高的计算、存储和迁移成本。对于冷数据、低访问频率数据、即将过期数据或者迁移期间未参与任何有效查询的数据对象,全量预生成还可能执行大量最终未影响任何检索结果的第二嵌入模型调用。

21、另一方面,仅根据经验误差、有限样本统计量或者未经形式化验证的近似界排除旧版本数据对象,可能遗漏真实候选对象或者错误剪枝能够进入前项的对象,因而不能提供严格一致性保证。

22、因此,需要一种混合版本的向量数据检索机制,使系统能够:

23、在目标版本检索服务上线前不必对全部旧版本数据对象调用第二嵌入模型;

24、基于查询无关且具有严格覆盖性的对象级认证量,判断旧版本数据对象是否可能属于查询探测范围;

25、对不能通过分区关系排除的旧版本数据对象,基于目标向量误差上界计算严格距离下界;

26、使用由基于真实目标版本向量计算的候选排序元组形成的当前候选排序阈值,判断旧版本数据对象是否仍可能进入前项;

27、仅对不能被严格排除的旧版本数据对象调用第二嵌入模型;

28、对被调用第二嵌入模型的旧版本数据对象,根据其真实逻辑分区确定候选归属,并使用真实目标版本向量形成候选排序元组;

29、在上述分区排除、距离下界排除和按需模型调用过程中,保持最终检索结果与固定中心倒排文件索引参考执行严格一致。

技术实现思路

1、本发明的目的在于提供一种基于校准锚点和经形式化验证的lipschitz证书的混合版本向量数据检索方法、装置及计算机设备,以解决嵌入模型迁移期间全量预生成目标版本向量成本高、直接利用旧版本向量或者目标空间估计向量可能造成分区错误和排序错误、以及非严格误差估计不能支持安全剪枝的问题。

2、本发明并非以恢复全部数据对象上的全局精确最近邻结果为必要目标,而是以预先确定的固定中心倒排文件索引参考执行为基准。所述参考执行包括:

3、全部数据对象均利用第二嵌入模型f_2生成真实目标版本向量;

4、全部数据对象按照相同固定中心集合c以及相同中心编号并列规则确定真实逻辑分区;

5、查询按照相同目标版本查询向量q_2、相同欧氏距离、相同固定中心集合以及相同n_probe确定查询探测分区;

6、候选对象按照相同候选排序元组以及相同字典序规则进行排序;

7、使用相同的数据对象快照以及相同前k项选取规则生成参考检索结果。

8、本技术第一方面提供一种混合版本的向量数据检索方法,所述方法包括:

9、获取对象输入空间x、定义于所述对象输入空间上的预设对象距离函数d_x:x×x→r_(≥0)、数据对象集合d、旧版本数据对象集合d_old={x_i∣i∈{1,…,n}}⊆d、目标版本就绪对象集合d_ready=d\d_old、校准锚点集合c_cal={x_j^cal∣j∈{1,…,m}}、第一嵌入模型f_1:x→r^(d_1 )、作为目标版本模型的第二嵌入模型f_2:x→r^(d_2 )、第一向量空间至第二向量空间的转换函数t:r^(d_1 )→r^(d_2 )、固定中心集合c={c_a∈r^(d_2 )∣a∈{1,…,m}}、方向残差lipschitz证书以及向量残差lipschitz证书,其中,d_ready中的每一数据对象均已保存由所述第二嵌入模型生成的真实目标版本向量并已确定真实逻辑分区,n、m、d_1、d_2和m均为正整数,d_x满足三角不等式性质,即对于任意向量a,b,c,满足d_x(a,c)≤d_x (a,b)+d_x (b,c);

10、定义对象输入空间上的目标空间残差映射:e(x)=f_2 (x)-t(f_1 (x));

11、针对任一旧版本数据对象x_i,读取由所述第一嵌入模型生成的旧版本向量f_1(x_i ),并利用所述转换函数生成目标空间估计向量z ̂_i=t(f_1 (x_i ));

12、按照由目标向量与固定中心之间的欧氏距离以及中心编号构成的字典序,定义真实逻辑分区函数:a_c (z)=(arg min)┬(a∈{1,…,m}) (∥z-c_a ∥_2,a);

13、利用所述校准锚点、所述方向残差lipschitz证书、所述目标空间估计向量和所述固定中心,确定所述旧版本数据对象x_i的可能倒排分区编号集合p_i⊆{1,…,m},并使所述可能倒排分区编号集合满足:a_c (f_2 (x_i ))∈p_i;

14、利用所述校准锚点、所述向量残差lipschitz证书和所述目标空间估计向量,确定所述旧版本数据对象x_i的目标向量误差上界ε_i∈[0,+∞],并使所述目标向量误差上界满足:∥f_2 (x_i )-z ̂_i ∥_2≤ε_i;

15、针对查询q∈x,利用所述第二嵌入模型生成目标版本查询向量q_2=f_2 (q),按照二元组(∥q_2-c_a ∥_2,a)的字典序对中心编号a∈{1,…,m}进行排序,并将排序在前n_probe位的中心编号构成查询探测分区编号集合v(q),其中n_probe∈{1,…,m}为预设的查询探测分区数;

16、针对已取得真实目标版本向量且真实逻辑分区属于所述查询探测分区编号集合v(q)的数据对象x,引入数据对象x的确定性唯一标识id(x)定义候选排序元组:θ(x,q)=(∥q_2-f_2 (x) ∥_2,id(x)),并按照距离分量优先、对象唯一标识次优先的字典序比较候选排序元组,记≼为所述字典序下的不劣于关系,记≻为所述字典序下的严格劣于关系;

17、在全部候选排序元组之外设置最大哨兵排序元素⊤,并规定任一由非负距离分量和对象唯一标识构成的排序元组均严格优于⊤;

18、利用当前查询探测分区内的目标版本就绪对象形成初始候选排序元组集合t^((0) ) (q);

19、将可能倒排分区编号集合与所述查询探测分区编号集合非空相交的旧版本数据对象的下标构成待处理下标集合:i(q)={i∈{1,…,n} │ p_i∩v(q)≠⌀}。令n_q=|i(q)|,按照预设的确定性顺序将所述待处理下标集合中的元素排列为(i_1,i_2,…,i_(n_q ) ),并将t∈{0,1,…,n_q}定义为所述排列中已经完成处理的旧版本数据对象数量,使得当t

20、针对下标i∉i(q)的旧版本数据对象x_i,在不调用所述第二嵌入模型生成f_2 (x_i )的情况下排除所述旧版本数据对象;

21、对于任一t∈{0,1,…,n_q-1},基于当前候选排序元组集合t^((t) ) (q)形成当前第k项候选排序阈值θ_k^((t) ) (q),并在处理所述第t+1个待处理旧版本数据对象x_(i_(t+1) )后形成更新后的候选排序元组集合t^((t+1) ) (q)和更新后的第k项候选排序阈值θ_k^((t+1) ) (q),其中k为预设的待输出的数据对象数量;具体地,针对第t+1个待处理旧版本数据对象x_(i_(t+1) ),计算严格距离下界l_(i_(t+1) ) (q)并构造严格下界候选排序元组λ_(i_(t+1) ) (q),将所述严格下界候选排序元组λ_(i_(t+1) ) (q)与所述当前第k项候选排序阈值θ_k^((t) ) (q)进行比较,根据比较结果控制是否调用所述第二嵌入模型,并根据调用结果和所述第t+1个待处理旧版本数据对象的候选归属确定所述更新后的候选排序元组集合t^((t+1) ) (q);

22、在n_q个待处理旧版本数据对象均完成处理后,将最终候选排序元组集合t^((n_q) ) (q)按照所述候选排序元组的字典序进行排序,并将排序在前min{k,|t^((n_q ) )(q)|}位的候选排序元组所对应的数据对象确定为检索结果s(q,k)。

23、在一个实施例中,所述获取方向残差lipschitz证书的步骤,具体包括:

24、设置方向认证域索引集合l,并针对任一认证域编号l∈l设置对象输入认证域d_l⊆x;

25、针对任意两个不同的固定中心c_a和c_b,其中a,b∈{1,…,m}且a≠b,定义方向残差函数:h_(a,b) (x)=(c_a-c_b )^t e(x);

26、通过形式化验证获得非负数l_(l,a,b);当所述形式化验证证明对于任意x,x'∈d_l均满足|h_(a,b) (x)-h_(a,b) (x')|≤l_(l,a,b) d_x (x,x')时,将l_(l,a,b)确定为所述方向残差函数h_(a,b)在所述对象输入认证域d_l上的有效的经形式化验证的方向残差lipschitz上界。

27、在一个实施例中,所述利用校准锚点、方向残差lipschitz证书、目标空间估计向量和固定中心确定所述可能倒排分区编号集合p_i的步骤,具体包括:

28、针对第j个校准锚点x_j^cal,定义真实目标空间残差:e_j^cal=f_2 (x_j^cal )-t(f_1 (x_j^cal ));

29、针对所述校准锚点x_j^cal和固定中心对(a,b),定义中心方向真实残差:r_(j,a,b)=|(c_a-c_b )^t e_j^cal |;

30、针对所述旧版本数据对象x_i和所述固定中心对(a,b),定义可用方向认证组合集合:q_(i,a,b)={(l,j) │ x_i∈d_l, x_j^cal∈d_l, l_(l,a,b) "为上述有效的经形式化验证的方向残差lipschitz上界" };

31、当q_(i,a,b)≠⌀时,定义对象级方向残差上界:ρ_(i,a,b)=min┬((l,j)∈q_(i,a,b) ) [r_(j,a,b)+l_(l,a,b) d_x (x_i,x_j^cal )],

32、并在q_(i,a,b)=⌀时定义ρ_(i,a,b)=+∞;

33、定义估计中心比较裕量:m ̂_(i,a,b)=∥z ̂_i-c_b ∥_2^2-∥z ̂_i-c_a ∥_2^2,以及所述估计中心比较裕量对应的真实中心比较裕量上界:¯m_(i,a,b)=m ̂_(i,a,b)+2ρ_(i,a,b),将所述可能倒排分区编号集合确定为:p_i={a∈{1,…,m} │ ¯m_(i,a,b)>0, ∀ba},其中ρ_(i,a,b)=+∞对应的中心比较不用于排除中心编号a。

34、在一个实施例中,所述获取向量残差lipschitz证书的步骤,具体包括:

35、设置向量认证域索引集合l_e,并针对任一认证域编号l∈l_e设置对象输入认证域d_l^e⊆x;

36、通过形式化验证获得非负数l_l^e;当所述形式化验证证明对于任意x,x'∈d_l^e均满足∥e(x)-e(x')∥_2≤l_l^e d_x (x,x')时,将l_l^e确定为所述目标空间残差映射e在所述对象输入认证域d_l^e上的有效的经形式化验证的向量残差lipschitz上界。

37、在一个实施例中,所述利用校准锚点、向量残差lipschitz证书和目标空间估计向量确定所述目标向量误差上界ε_i的步骤,具体包括:

38、针对第j个校准锚点x_j^cal,定义真实目标空间残差:e_j^cal=f_2 (x_j^cal )-t(f_1 (x_j^cal ));

39、针对所述旧版本数据对象x_i,定义可用向量残差认证组合集合:q_i^e={(l,j) │x_i∈d_l^e, x_j^cal∈d_l^e, l_l^e "为上述有效的经形式化验证的向量残差lipschitz上界" };

40、当q_i^e≠⌀时,定义所述目标向量误差上界:ε_i=min┬((l,j)∈q_i^e ) [∥e_j^cal ∥_2+l_l^e d_x (x_i,x_j^cal )],

41、并在q_i^e=⌀时定义:ε_i=+∞。

42、在一个实施例中,所述针对第t+1个待处理旧版本数据对象x_(i_(t+1) ),计算严格距离下界l_(i_(t+1) ) (q)并构造严格下界候选排序元组λ_(i_(t+1) ) (q)的步骤,具体包括:

43、将所述严格距离下界定义为:l_(i_(t+1) ) (q)={■(max{0,∥q_2-z ̂_(i_(t+1)) ∥_2-ε_(i_(t+1) ) },&ε_(i_(t+1) )<+∞,@0,&ε_(i_(t+1) )=+∞;)┤

44、将所述严格下界候选排序元组定义为:λ_(i_(t+1) ) (q)=(l_(i_(t+1) ) (q),id(x_(i_(t+1) ) )).

45、在一个实施例中,所述利用当前查询探测分区内的目标版本就绪对象形成初始候选排序元组集合t^((0) ) (q),以及对于任一t∈{0,1,…,n_q-1},基于当前候选排序元组集合t^((t) ) (q)形成当前第k项候选排序阈值θ_k^((t) ) (q),并在处理所述第t+1个待处理旧版本数据对象x_(i_(t+1) )后形成更新后的候选排序元组集合t^((t+1) ) (q)和更新后的第k项候选排序阈值θ_k^((t+1) ) (q)的步骤,具体包括:

46、将所述初始候选排序元组集合定义为:

47、t^((0) ) (q)={θ(x,q) │ x∈d_ready, a_c (f_2 (x))∈v(q) };

48、针对任一t∈{0,1,…,n_q},将所述当前第k项候选排序阈值定义为:

49、θ_k^((t) ) (q)={■(kth_≼ (t^((t) ) (q),k),&|t^((t) ) (q)|≥k,@⊤,&|t^((t) ) (q)|

50、其中,kth_≼ (t,k)表示将候选排序元组集合t按照上述距离分量优先、对象唯一标识次优先的字典序排序后得到的第k个候选排序元组;

51、针对任一t∈{0,1,…,n_q-1},根据对所述第t+1个待处理旧版本数据对象x_(i_(t+1) )的处理结果确定增量候选排序元组集合δt_(t+1) (q),并利用所述增量候选排序元组集合更新所述当前候选排序元组集合和所述当前第k项候选排序阈值;其中,将所述更新后的候选排序元组集合确定为:t^((t+1) ) (q)=t^((t) ) (q)∪δt_(t+1) (q),并将所述更新后的第k项候选排序阈值确定为:

52、θ_k^((t+1) ) (q)={■(kth_≼ (t^((t+1) ) (q),k),&|t^((t+1) ) (q)|≥k,@⊤,&|t^((t+1) ) (q)|

53、在一个实施例中,所述针对任一t∈{0,1,…,n_q-1},根据对所述第t+1个待处理旧版本数据对象x_(i_(t+1) )的处理结果确定增量候选排序元组集合δt_(t+1) (q),并利用所述增量候选排序元组集合更新所述当前候选排序元组集合和所述当前第k项候选排序阈值的步骤,具体包括:

54、当λ_(i_(t+1) ) (q)≻θ_k^((t) ) (q)时,免除针对第t+1个待处理旧版本数据对象x_(i_(t+1) )的第二嵌入模型调用,并将所述增量候选排序元组集合确定为:δt_(t+1) (q)=⌀;

55、当λ_(i_(t+1) ) (q)≼θ_k^((t) ) (q)时,调用所述第二嵌入模型生成所述第t+1个待处理旧版本数据对象x_(i_(t+1) )的真实目标版本向量:z_(i_(t+1) )=f_2 (x_(i_(t+1) ) );

56、当p_(i_(t+1) )⊆v(q)时,将所述第t+1个待处理旧版本数据对象确定为候选对象;当p_(i_(t+1) )∩v(q)≠⌀且p_(i_(t+1) )⊈v(q)时,利用所述真实逻辑分区函数计算a_c (z_(i_(t+1) ) ),并仅在a_c (z_(i_(t+1) ) )∈v(q)时将所述第t+1个待处理旧版本数据对象确定为候选对象;

57、当所述第t+1个待处理旧版本数据对象被确定为候选对象时,计算其候选排序元组:θ(x_(i_(t+1) ),q)=(∥q_2-z_(i_(t+1) ) ∥_2,id(x_(i_(t+1) ) )),并将所述增量候选排序元组集合确定为:δt_(t+1) (q)={θ(x_(i_(t+1) ),q)};

58、当所述第t+1个待处理旧版本数据对象未被确定为候选对象时,将所述增量候选排序元组集合确定为:δt_(t+1) (q)=⌀;

59、按照上述更新关系,利用所述增量候选排序元组集合δt_(t+1) (q)形成所述更新后的候选排序元组集合t^((t+1) ) (q)和更新后的第k项候选排序阈值θ_k^((t+1) )(q)。

60、上述技术方案至少具有如下有益效果:

61、通过以校准锚点的真实目标空间残差为基准,并利用经形式化验证的方向残差lipschitz证书和向量残差lipschitz证书向旧版本数据对象传播严格上界,可以在无需预先对全部旧版本数据对象调用第二嵌入模型f_2的情况下,为各旧版本数据对象生成具有严格覆盖性的可能倒排分区编号集合p_i及目标向量误差上界ε_i,从而降低目标版本向量全量预生成所需的模型推理、原始对象读取、数据传输和向量写入开销。

62、通过先利用p_i∩v(q)=⌀实施查询探测分区排除,再利用严格下界候选排序元组λ_i (q)与动态更新的第k项候选排序阈值θ_k^((t) ) (q)实施距离下界排除,可以仅对不能被严格证明不属于查询候选范围或者不能被严格证明不进入前k项的旧版本数据对象调用第二嵌入模型f_2,由此减少查询期间的目标模型调用数量和检索延迟,并使剪枝效率能够随真实候选阈值的收紧而提高。

63、通过对固定中心分配、查询探测中心、候选距离和并列情况分别采用确定性的字典序规则,并仅使用真实目标版本向量形成进入候选集合的候选排序元组,可以保证最终检索结果与全部数据对象均采用目标版本向量、且在相同数据快照、固定中心集合、查询探测分区数量及候选排序规则下执行的固定中心倒排文件索引参考结果严格一致。证书缺失或者不能形成有限上界时,通过令相应认证量退化为不能排除的安全状态,不会因不充分的经验误差估计而错误遗漏真实候选对象。

64、本技术还提供一种混合版本的向量数据检索装置,所述装置包括配置获取模块、旧版本对象认证量生成模块、查询探测分区确定模块、候选排序初始化模块、待处理对象确定模块、模型调用控制与候选更新模块以及检索结果生成模块,其中:

65、所述配置获取模块,被配置为获取对象输入空间x、定义于所述对象输入空间上的满足三角不等式性质的预设对象距离函数d_x、数据对象集合d、旧版本数据对象集合d_old、目标版本就绪对象集合d_ready、校准锚点集合c_cal、第一嵌入模型f_1、作为目标版本模型的第二嵌入模型f_2、第一向量空间至第二向量空间的转换函数t、固定中心集合c、方向残差lipschitz证书以及向量残差lipschitz证书;

66、所述旧版本对象认证量生成模块,被配置为定义目标空间残差映射e(x)=f_2(x)-t(f_1 (x)),针对任一旧版本数据对象x_i生成目标空间估计向量z ̂_i=t(f_1 (x_i)),利用所述校准锚点、所述方向残差lipschitz证书、所述目标空间估计向量和所述固定中心确定可能倒排分区编号集合p_i,并使a_c (f_2 (x_i ))∈p_i,以及利用所述校准锚点、所述向量残差lipschitz证书和所述目标空间估计向量确定目标向量误差上界ε_i,并使∥f_2 (x_i )-z ̂_i ∥_2≤ε_i;

67、所述查询探测分区确定模块,被配置为按照由目标向量与固定中心之间的欧氏距离以及中心编号构成的字典序确定真实逻辑分区函数a_c,针对查询q利用所述第二嵌入模型生成目标版本查询向量q_2=f_2 (q),按照二元组(∥q_2-c_a ∥_2,a)的字典序对固定中心进行排序,并将排序在前n_probe位的中心编号构成查询探测分区编号集合v(q);

68、所述候选排序初始化模块,被配置为针对已取得真实目标版本向量且真实逻辑分区属于所述查询探测分区编号集合v(q)的数据对象x,生成候选排序元组θ(x,q)=(∥q_2-f_2 (x) ∥_2,id(x)),按照距离分量优先、对象唯一标识次优先的字典序比较候选排序元组,在全部候选排序元组之外设置最大哨兵排序元素⊤,并利用当前查询探测分区内的目标版本就绪对象形成初始候选排序元组集合t^((0) ) (q);

69、所述待处理对象确定模块,被配置为将满足p_i∩v(q)≠⌀的旧版本数据对象下标构成待处理下标集合i(q),令n_q=|i(q)|,按照预设的确定性顺序将所述待处理下标集合中的元素排列为(i_1,i_2,…,i_(n_q ) ),将t∈{0,1,…,n_q}确定为已经完成处理的旧版本数据对象数量,并在t

70、所述模型调用控制与候选更新模块,被配置为对于任一t∈{0,1,…,n_q-1},在|t^((t) ) (q)|≥k时将当前候选排序元组集合t^((t) ) (q)按照所述字典序排序后的第k个候选排序元组确定为当前第k项候选排序阈值θ_k^((t) ) (q),并在|t^((t) ) (q)|

71、所述检索结果生成模块,被配置为在n_q个待处理旧版本数据对象均完成处理后,将最终候选排序元组集合t^((n_q ) ) (q)按照所述候选排序元组的字典序进行排序,并将排序在前min{k,|t^((n_q ) ) (q)|}位的候选排序元组所对应的数据对象确定为检索结果s(q,k)。

72、本技术还提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行第一方面所述方法的步骤。

73、本技术还提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述方法的步骤。

74、本技术还提供一种计算机程序产品,当该计算机程序产品在电子设备上运行时,使得该电子设备执行第一方面所述方法的步骤。

75、可以理解地,上述检索装置、计算机设备、计算机可读存储介质和计算机程序产品所能达到的有益效果,可参考第一方面方法的有益效果,此处不再赘述。