System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及自然语言处理,具体涉及一种基于非对称局部敏感哈希的检索增强方法及系统。
技术介绍
1、在互联网时代,传统搜索引擎能够根据关键字在海量信息中搜索,快速地将相关内容呈现给用户,而不必翻阅大量不必要的资料,提高了信息接收与处理的效率。但是传统搜索引擎仍存在不足。
2、一方面,传统的搜索引擎通常使用关键词进行搜索,由于分析语义存在一定困难,且尤其缺乏对情报的整合能力,当用户完全不了解某一领域时,会出现不知道输入什么关键词的情况。另外,由于大语言模型的生成式特性,面对越专业的生成要求,大语言模型越容易向用户提供似是而非甚至完全错误的文本。对于上述情况,利用大语言模型训练中获得的知识,rag检索增强生成算法可以向大语言模型提供外部知识,利用带有知识的输入文本限制大语言模型的输出文本,利用提示工程进一步优化输入文本。但rag的流程仅优化了输入和输出结果,而并未对结果的处理结构进行优化,使得准确性、安全性都不高。
3、另一方面,由于当前系统内存储的信息量显著提高,搜索整个向量数据库的时间代价显著增加。现有的局部敏感哈希算法lsh基于分桶的思想对向量空间进行划分,能降低搜索比对的次数,但是现实工程中向量的分布并不均匀,不满足算法前提,处理效率并不高。
技术实现思路
1、专利技术目的:本专利技术目的是提供一种高效、准确的基于非对称局部敏感哈希的检索增强方法及系统。
2、技术方案:本专利技术所述的基于非对称局部敏感哈希的检索增强方法,包括以下步骤:建立知
3、进一步的,创设事实检查方法判断相关性,通过计算两个待检测文本的二范数进而判断相关性;当所述事实检查方法判断第一待检测文本和第二待检测文本的相关性时,具体包括如下过程:
4、依次匹配第一待检测文本中的名词和第二待检测文本中的名词,形成多个名词对,将名词对内两个名词的距离作为分量,组成二维张量;
5、计算所述二维张量中每个分量的欧几里得距离;
6、计算所述二维张量的二范数,当所述二范数小于预设的相关阈值时,所述第一待检测文本和第二待检测文本相关。
7、进一步的,所述第一待检测文本包括目标知识文本、回答文本;所述第二待检测文本包括查询文本;
8、并且,通过所述事实检查方法判断所述目标知识文本与查询文本的相关性;通过所述事实检查方法判断所述回答文本与查询文本的相关性。
9、进一步的,所述知识文本数据库建立及更新过程如下:
10、获取原始文本,选定策略分割并重构后嵌入向量空间,得到原始向量,所述原始向量包括多个维度的子向量;
11、迭代所述原始向量与子向量的最大长度进而更新分区的最大范围;
12、通过迭代,将所述最大范围分为多个区域,每个区域设置一个空间桶用以容纳所述原始向量,并为所述空间桶计算序号,当所述空间桶的序号改变时,将所述空间桶对应的原始向量删除并分配至对应序号的空间桶内;
13、重复上述过程,并将更新过程记录于哈希表中,直至空间桶的数量满足要求,将保留的所述原始向量、原始文本作为知识文本存储于知识文本数据库。
14、进一步的,所述策略包括前文相关性推理策略、段首句相关策略、上下文无关策略、上下文有关策略;其中,所述前文相关性推理策略基于所述事实检查方法决定当前语句与前一语句是否可以组合。
15、进一步的,基于非对称局部敏感哈希算法在所述知识文本数据库中提取与所述查询文本相关的目标知识文本,具体包括如下步骤:
16、根据查询文本在所述哈希表中的位置,在所述知识文本数据库中查询所述查询文本对应的目标空间桶;
17、计算所述目标空间桶内的知识文本与查询文本的相似真值,将相似真值最大的前k个知识文本组合为优先队列,整合后作为目标知识文本输出。
18、进一步的,基于非对称局部敏感哈希算法在所述知识文本数据库中提取与所述查询文本相关的目标知识文本,具体包括如下步骤:
19、根据查询文本在所述哈希表中的位置,在所述知识文本数据库中查询所述查询文本对应的目标空间桶;
20、定位与所述目标空间桶相邻的邻接桶,计算所述目标空间桶、邻接桶内的知识文本与查询文本的相似真值,将相似真值最大的前k个知识文本组合为优先队列,整合后作为目标知识文本输出。
21、进一步的,基于非对称局部敏感哈希算法计算所述相似真值时,对所述目标空间桶和\或邻接桶内知识文本对应的原始向量填充得到知识向量,将所述查询文本嵌入向量空间并填充得到查询向量,通过查询向量和知识向量计算所述相似真值;其中,归一化并填充后的所述知识向量的公式如下:
22、
23、填充后的所述查询向量的公式如下:
24、
25、式中,p表示知识向量;p0表示原始向量归一化后得到的向量;m表示向量扩展维数,默认为3;1/2为数值0.5;表示计算·二范数的2m次幂;y由查询文本嵌入向量空间得到;q为查询向量,共有d+2m个分量。
26、进一步的,所述空间桶的序号更新公式如下;
27、n=n*maxi+min{pi′//di,maxi-1}
28、式中,n表示第个n区域;pi′表示第i个原始向量;di表示空间桶的直径;maxi表示空间桶的最大数量。
29、本专利技术所述的基于非对称局部敏感哈希的检索增强系统,包括:
30、阅读记忆模块,用以建立知识文本数据库,包括多个知识文本;
31、初始输入与检查模块,用以获取查询文本,并基于非对称局部敏感哈希算法在所述知识文本数据库中提取与所述查询文本相关的目标知识文本;
32、背景化输入模块,用以建立背景公式,所述背景公式包括与所述目标知识文本、查询文本唯一对应的占位符,之后将所述目标知识文本、查询文本替换背景公式中对应的占位符后得到输入文本;
33、输出模块,用以将所述输入文本输入大语言模型,输出回答文本。
34、有益效果:本专利技术具有如下显著效果:1、高效:本专利技术基于非对称局部敏感哈希算法alsh实现,首先,非对称的局部哈希算法,每次查询需要匹配的向量数量降低,响应速度快,对处理器的负载更低,在milvus数据库的基础上利用分区更可以显著降低对内存的需求;其次,传统的rag在外部知识库中寻找相似向量即处理最大内积搜索问题(mips)时,由于mips问题的定义,模数值大的被搜索向量会获得优势,且余弦相似度算法、内积搜索均不能处理共线向量,为弥补大语言模型输出准确性和稳定性的不足、传统最大内积搜索本文档来自技高网...
【技术保护点】
1.一种基于非对称局部敏感哈希的检索增强方法,其特征在于,所述方法包括以下步骤:
2.根据权利要求1所述的基于非对称局部敏感哈希的检索增强方法,其特征在于,创设事实检查方法判断相关性,通过计算两个待检测文本的二范数进而判断相关性;当所述事实检查方法判断第一待检测文本和第二待检测文本的相关性时,具体包括如下过程:
3.根据权利要求2所述的基于非对称局部敏感哈希的检索增强方法,其特征在于,所述第一待检测文本包括目标知识文本、回答文本;所述第二待检测文本包括查询文本;
4.根据权利要求1所述的基于非对称局部敏感哈希的检索增强方法,其特征在于,所述知识文本数据库建立及更新过程如下:
5.根据权利要求4所述的基于非对称局部敏感哈希的检索增强方法,其特征在于,所述策略包括前文相关性推理策略、段首句相关策略、上下文无关策略、上下文有关策略;其中,所述前文相关性推理策略基于所述事实检查方法决定当前语句与前一语句是否可以组合。
6.根据权利要求4所述的基于非对称局部敏感哈希的检索增强方法,其特征在于,基于非对称局部敏感哈希算法在所述知识文
7.根据权利要求4所述的基于非对称局部敏感哈希的检索增强方法,其特征在于,基于非对称局部敏感哈希算法在所述知识文本数据库中提取与所述查询文本相关的目标知识文本,具体包括如下步骤:
8.根据权利要求7所述的基于非对称局部敏感哈希的检索增强方法,其特征在于,基于非对称局部敏感哈希算法计算所述相似真值时,对所述目标空间桶和\或邻接桶内知识文本对应的原始向量填充得到知识向量,将所述查询文本嵌入向量空间并填充得到查询向量,通过查询向量和知识向量计算所述相似真值;其中,归一化并填充后的所述知识向量的公式如下:
9.根据权利要求4所述的基于非对称局部敏感哈希的检索增强方法,其特征在于,所述空间桶的序号更新公式如下;
10.一种基于非对称局部敏感哈希的检索增强系统,其特征在于,包括:
...【技术特征摘要】
1.一种基于非对称局部敏感哈希的检索增强方法,其特征在于,所述方法包括以下步骤:
2.根据权利要求1所述的基于非对称局部敏感哈希的检索增强方法,其特征在于,创设事实检查方法判断相关性,通过计算两个待检测文本的二范数进而判断相关性;当所述事实检查方法判断第一待检测文本和第二待检测文本的相关性时,具体包括如下过程:
3.根据权利要求2所述的基于非对称局部敏感哈希的检索增强方法,其特征在于,所述第一待检测文本包括目标知识文本、回答文本;所述第二待检测文本包括查询文本;
4.根据权利要求1所述的基于非对称局部敏感哈希的检索增强方法,其特征在于,所述知识文本数据库建立及更新过程如下:
5.根据权利要求4所述的基于非对称局部敏感哈希的检索增强方法,其特征在于,所述策略包括前文相关性推理策略、段首句相关策略、上下文无关策略、上下文有关策略;其中,所述前文相关性推理策略基于所述事实检查方法决定当前语句与前一语句是否可以组合。
6.根据权利...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。