CN116431837A - 基于大型语言模型和图网络模型的文档检索方法和装置 - Google Patents
基于大型语言模型和图网络模型的文档检索方法和装置 Download PDFInfo
- Publication number
- CN116431837A CN116431837A CN202310693598.6A CN202310693598A CN116431837A CN 116431837 A CN116431837 A CN 116431837A CN 202310693598 A CN202310693598 A CN 202310693598A CN 116431837 A CN116431837 A CN 116431837A
- Authority
- CN
- China
- Prior art keywords
- document
- vector
- network model
- graph network
- text
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 77
- 239000013598 vector Substances 0.000 claims abstract description 117
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000000638 solvent extraction Methods 0.000 claims 1
- 230000000694 effects Effects 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 20
- 238000003860 storage Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 5
- 241000475481 Nebula Species 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 241000282414 Homo sapiens Species 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 3
- 238000000605 extraction Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/38—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Library & Information Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了一种基于大型语言模型和图网络模型的文档检索方法和装置。该基于大型语言模型和图网络模型的文档检索方法包括:接收文档检索请求;通过大型语言模型将文档检索请求转换为待查询向量;通过图网络模型计算待查询向量与预存文本向量的相似度;依据相似度获取文档检索请求对应的目标文档。本发明提供的方案能够用文档间的关联关系来提高检索准确性和效率的技术效果。
Description
技术领域
本发明涉及计算机技术应用领域,尤其涉及一种基于大型语言模型和图网络模型的文档检索方法和装置。
背景技术
传统的基于关键词的检索方法(如Elasticsearch),受限于关键词的准确度,如果关键词提取不正确,会导致文档检索效率低,准确率也随着检索效率降低;
此外,在相关技术中提供的文档检索方式还包括大型语言模型技术和矢量数据库结合的方式。
在大型语言模型技术和矢量数据库结合的方式中,检索效果在很大程度上依赖于嵌入向量的质量,对于大型技术手册,其段落语义对于人类来说可能是复杂的,由于大型技术手册中的段落语义包含大量的中英文说明、专业名词和操作命令,使用嵌入技术后,虽然可以得到机器意义上的语义相似度,但该语义相似度缺乏人类意义上的可解释性;
其次,嵌入向量可能无法充分捕获文档间的关联关系,特别是在需要理解大量背景信息的检索场景下。
针对由于现有技术无法有效地捕获上下文信息,关键词误匹配高的问题,目前尚未提出有效的解决方案。
发明内容
为解决上述技术问题,本发明实施例期望提供一种基于大型语言模型和图网络模型的文档检索方法和装置,以至少解决由于现有技术无法有效地捕获上下文信息,关键词误匹配高的问题。
本发明的技术方案是这样实现的:
本发明实施例提供一种基于大型语言模型和图网络模型的文档检索方法,包括:接收文档检索请求;通过大型语言模型将文档检索请求转换为待查询向量;通过图网络模型计算待查询向量与预存文本向量的相似度;依据相似度获取文档检索请求对应的目标文档。
可选的,在接收文档检索请求之前,该方法还包括:通过大型语言模型对待整理文档进行文本嵌入,得到文本向量;通过文本向量构建图网络模型。
进一步地,可选的,通过大型语言模型对待整理文档进行文本嵌入,得到文本向量包括:将待整理文档进行分页和分块,得到待整理文档的文本块;对文本块分配对应的标识,其中,标识,用于构建图关系时的节点标识;通过大型语言模型对携带标识的文本块进行文本嵌入,得到文本向量。
可选的,待整理文档包括:目标文档。
可选的,通过文本向量构建图网络模型包括:根据待整理文档中的位置信息,建立文本块之间的关联关系;根据关联关系,建立文本块之间的连接;根据待整理文档中的引用关系和文本块之间的连接,构建图网络模型。
进一步地,可选的,该方法还包括:计算图网络模型中节点间最短路径;依据最短路径对图网络模型进行优化,得到优化后的图网络模型,其中,优化后的图网络模型,用于处理同构图。
可选的,通过大型语言模型将文档检索请求转换为待查询向量包括:通过大型语言模型依据文档检索请求获取预设个数的待查询向量,其中,待查询向量包括:图向量和文本向量。
进一步地,可选的,通过图网络模型计算待查询向量与预存文本向量的相似度包括:通过图网络模型计算待查询向量与预存文本向量的相似度,得到第一向量集合;通过优化后的图网络模型计算待查询向量之间距离小于或等于预设值的点集合,得到第二向量集合。
可选的,该方法还包括:当第一向量集合中所有点之间距离大于阈值时,确定被召回的语料在文档中的引用关系不符合预设要求;当第一向量集合中所有点之间距离小于或等于阈值时,确定被召回的语料在文档中的引用关系符合预设要求。
可选的,该方法还包括:将目标文档返回客户端和/或返回大型语言模型。
本发明实施例提供一种基于大型语言模型和图网络模型的文档检索装置,包括:接收模块,用于接收文档检索请求;转换模块,用于通过大型语言模型将文档检索请求转换为待查询向量;计算模块,用于通过图网络模型计算待查询向量与预存文本向量的相似度;检索模块,用于依据相似度获取文档检索请求对应的目标文档。
本发明实施例提供了一种基于大型语言模型和图网络模型的文档检索方法和装置,通过接收文档检索请求;通过大型语言模型将文档检索请求转换为待查询向量;通过图网络模型计算待查询向量与预存文本向量的相似度;依据相似度获取文档检索请求对应的目标文档,从而能够用文档间的关联关系来提高检索准确性和效率的技术效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例提供的一种基于大型语言模型和图网络模型的文档检索方法的流程示意图;
图2为本发明实施例提供的一种基于大型语言模型和图网络模型的文档检索方法中目录文件的示意图;
图3为本发明实施例提供的一种基于大型语言模型和图网络模型的文档检索方法中Storage 服务的示意图;
图4为本发明实施例提供的一种基于大型语言模型和图网络模型的文档检索方法中markdown格式撰写的示意图;
图5为本发明实施例提供的一种基于大型语言模型和图网络模型的文档检索方法中文本构建成一个图网络的示意图;
图6为本发明实施例提供的一种基于大型语言模型和图网络模型的文档检索方法中优化后的图网络模型的示意图;
图7为本发明实施例提供的一种基于大型语言模型和图网络模型的文档检索装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于限定特定顺序。
还需要说明是,本发明下述各个实施例可以单独执行,各个实施例之间也可以相互结合执行,本发明实施例对此不作具体限制。
本申请实施例涉及的技术名词:
LLM:Large Language Models,大型语言模型,是一种利用深度学习技术,特别是神经网络,来理解和生成人类语言的模型,其中,该模型通常会在大量的文本数据上进行训练,以学习语言的统计规律。嵌入:Embedding,在机器学习和自然语言处理中是一个重要的概念,是一种将离散型变量(如单词、句子或者文档)映射到连续的向量空间中的技术,其中,连续的向量可以捕捉到原始数据的一些重要特性,如语义相似性。
图网络模型:可以使用图数据库来进行处理;其中,数据被表示为节点(也称为顶点)和边,其中节点代表实体,边代表实体之间的关系。每个节点和边都可以拥有一组属性,该组属性提供了关于该实体或关系的更多信息。
本发明实施例提供一种基于大型语言模型和图网络模型的文档检索方法,图1为本发明实施例提供的一种基于大型语言模型和图网络模型的文档检索方法的流程示意图;如图1所示,本申请实施例提供的基于大型语言模型和图网络模型的文档检索方法包括:
步骤S102,接收文档检索请求;
可选的,在步骤S102中接收文档检索请求之前,本申请实施例提供的基于大型语言模型和图网络模型的文档检索方法还包括:通过大型语言模型对待整理文档进行文本嵌入,得到文本向量;通过文本向量构建图网络模型。
进一步地,可选的,通过大型语言模型对待整理文档进行文本嵌入,得到文本向量包括:将待整理文档进行分页和分块,得到待整理文档的文本块;对文本块分配对应的标识,其中,标识,用于构建图关系时的节点标识;通过大型语言模型对携带标识的文本块进行文本嵌入,得到文本向量。
其中,待整理文档包括:目标文档。
需要说明的是,本申请实施例中作为图网络模型中存储的文档会包含多个文档,本申请实施例提供的基于大型语言模型和图网络模型的文档检索方法在文档录入阶段和构建图网络模型的过程中,每个文档都需要进行分页和分块,进而获取每个文档的文本块和文本块对应的标识,以使得在图网络模型中形成对应文本块的节点和节点标识。
具体的,本申请实施例提供的基于大型语言模型和图网络模型的文档检索方法以处理大型技术文档为例,选取开源图数据库NebulaGraph的中文手册(即,本申请实施例提供的待整理文档),并优化其检索查询结果。
手册结构说明如下:
由一个目录文件mkdocs.yml,指明文档的目录结构,其中,图2为本发明实施例提供的一种基于大型语言模型和图网络模型的文档检索方法中目录文件的示意图;如图2所示,
例如,Storage 服务:
1.introduction/3.nebula-graph-architecture/4.storage-service.md的意思是:
文档的一级目录是“简介”, 二级目录是“服务架构”,三级目录是“ Storage 服务”,对应的内容在路径`1.introduction`下的路径`3.nebula-graph-architecture`下的4.storage-service.md文件。此外,如图2所示,开源图数据库NebulaGraph的中文手册中其他二级目录包括:“图”、“图数据库”、“相关技术”、“什么是悦数图数据库”、“数据模型”、“路径”和“VID”;三级目录中除了“Storage 服务”还包括:“架构总览”、“Meta服务”和“Graph服务”。
本申请实施例提供的基于大型语言模型和图网络模型的文档检索方法仅以“Storage 服务”为优选示例进行说明,以实现本申请实施例提供的基于大型语言模型和图网络模型的文档检索方法为准,具体不做限定。图3为本发明实施例提供的一种基于大型语言模型和图网络模型的文档检索方法中Storage 服务的示意图。如图3所示, 基于图2,展示Storage 服务。
基于图3,以markdown格式撰写的内容, markdown语法中,`[全文索引](../../4.deployment-and-installation/6.deploy-text-based-index/2.deploy-es.md)` 是引用关系。通过正则表达式可以解析出被引用的文件的地址和文件名。如图4所示,图4为本发明实施例提供的一种基于大型语言模型和图网络模型的文档检索方法中markdown格式撰写的示意图。
将待整理文档进行分页和分块,可以通过Python程序遍历文档的结构,将每个章节、节、段落等划分为独立的文本块,并为每个文本块分配一个ID(即,本申请实施例中的文本块的标识),其中,该ID用于后续构建图关系时,作为节点的ID(即,本申请实施例中的节点标识)。
利用大型语言模型(例如, OPENAI的嵌入模型text-embedding-ada-002)对每个文本块进行嵌入。该步骤的产出是一系列的向量(即,本申请实施例中的文本向量),将该部分向量称为文本嵌入(text embedding)。
在一种优选示例中,文本嵌入(text embedding)具体如下:
输入是一段文本 {{{ Your text string goes here }}},
输出是"embedding"所对应的矢量。这个示例使用的是OPENAI的text-embedding-ada-002模型。由于不同手册可能需要的embedding模型不同,取决于具体场景时的测试效果。
测试代码如下:
curl https://api.openai.com/v1/embeddings \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"input": "{{{ Your text string goes here }}}",
"model": "text-embedding-ada-002"
}'
{
"data": [
{
"embedding": [
-0.006929283495992422,
-0.005336422007530928,
...
-4.547132266452536e-05,
-0.024047505110502243
],
"index": 0,
"object": "embedding"
}
],
"model": "text-embedding-ada-002",
"object": "list",
"usage": {
"prompt_tokens": 5,
"total_tokens": 5
}
}
可选的,通过文本向量构建图网络模型包括:根据待整理文档中的位置信息,建立文本块之间的关联关系;根据关联关系,建立文本块之间的连接;根据待整理文档中的引用关系和文本块之间的连接,构建图网络模型。
具体的,在获取到每个文本块的文本向量后,开始构建一个图网络模型。
首先,根据文档结构中的位置信息(即,本申请实施例中的待整理文档中的位置信息),建立文本块之间的关联关系。例如,确定每个分块所属的章节、节和段落。
然后,根据每个文本块与上一个文本块和下一个文本块之间的行文连续关系,建立它们之间的连接(即,本申请实施例中的根据关联关系,建立文本块之间的连接)。例如,A段落的下一个段落是B段落。
最后,识别文档中的引用关系,并在图网络模型中表示出这些跳转关系;即,文本块与其他分块之间的跳转关系(例如,第3页的A段落引用了第8页的B段落)。
将文本块的章节段落关系、行文连续关系和引用关系构建成一个图关系。并对该图关系进行加工,得到一个图来表征距离关系。对图网络模型进行嵌入,或者对其中的每个节点进行嵌入。将嵌入生成的向量存入向量数据库中,得到图向量(graph vector)。
其中,图5为本发明实施例提供的一种基于大型语言模型和图网络模型的文档检索方法中文本构建成一个图网络的示意图,如图5所示,图网络模型中包含了多层的目录结构关系、前后文关系、段落引用关系:对于每个段落,其属性还包括了 “文本”(本段落的原始文本)和embedding (text embedding);
在图网络模型1(即,本申请实施例中的图网络模型)中,可以实时查询某个给定点附近最近的K2个类型为“段落”的点。
在图网络模型1的构建过程中,使用NebulaGraph的语句将这个图网络存储到图数据NebulaGraph库中。
图网络模型1创建过程的示例代码如下:
CREATE (:`一级目录` {id: 001})-[:包含]->(`服务架构`:`二级目录` {id:002})-[:包含]->(:`文章` {id: 003})-[:包含]->(:`段落` {`文本`: "“NebulaGraph的r...”", embeding: " [ -0.00692, -0.0053, ... ],", id: 024})-[:下一段]->(:`段落` {`文本`: "高性能...", embeding: " [ 0.092, 0.013, ... ],", id:005})-[:下一段]->(:`段落` {id: 014})<-[:引用]-(n7:`段落` {`文本`: "查询引擎...", embeding: " [ 0.01, 0.3 ... ],", id: 007}),
(`服务架构`)-[:包含]->(`graph服务.md`:`文章` {id: 004})-[:包含]->(n7),
(`graph服务.md`)-[:包含]->(:`段落` {`文本`: "计算...", embeding: " [0.101, 0.33 ... ],", id: 009})
其中,对于图网络模型1,仅抽取出其中的类型为“段落”的点,并将上述最短距离作为“段落”点之间的边的权重。
进一步地,可选的,本申请实施例提供的基于大型语言模型和图网络模型的文档检索方法还包括:计算图网络模型中节点间最短路径;依据最短路径对图网络模型进行优化,得到优化后的图网络模型,其中,优化后的图网络模型,用于处理同构图。
具体的,本申请实施例提供的基于大型语言模型和图网络模型的文档检索方法还需要对图网络模型1(即,本申请实施例中的图网络模型)进行一些加工,以得到更易于处理的同构图,称为图网络模型2(即,本申请实施例中的优化后的图网络模型)。
对于图网络模型1,计算图网络模型1中两两节点间最短路径。由于图计算只能处理同构图,在处理时忽略图中点和边的类型。
其中,图6为本发明实施例提供的一种基于大型语言模型和图网络模型的文档检索方法中优化后的图网络模型的示意图,对图网络模型1进行一些加工,以得到更易于处理的同构图,称为图网络模型2的过程,如图6所示,再完成两两最短路径和抽取后,可以得到图网络模型2,边上的权重weight表征了两个段落之间的相互(引用)距离;
图网络模型2创建过程的示例代码如下:
CREATE (n1:`段落` {id: 005})-[:_RELATED {weight: 2}]->(n3:`段落` {id:007})-[:_RELATED {weight: 1}]->(n2:`段落` {id: 014})-[:_RELATED {weight: 2}]->(n0:`段落` {id: 024})-[:_RELATED {weight: 2}]->(n1)-[:_RELATED {weight: 2}]->(n2)-[:_RELATED {weight: 3}]->(n4:`段落` {id: 009})<-[:_RELATED {weight:2}]-(n3)-[:_RELATED {weight: 3}]->(n0),
(n0)<-[:_RELATED {weight: 4}]-(n4)-[:_RELATED {weight: 3}]->(n1)
综上,本申请实施例提供的基于大型语言模型和图网络模型的文档检索方法通过构建图网络模型,可以更好地利用文档间的关联关系,从而提高检索的准确性和效率。不仅能够捕捉到文档内部的结构信息,还能够捕捉到跨文档的关联关系,从而提供更丰富的上下文信息。
并且本申请实施例提供的基于大型语言模型和图网络模型的文档检索方法适用于大规模文档集合,通过构建图网络模型,无论是对于单个大型文档,还是对于包含多个文档的文档库,都可以构建一个统一的图网络模型,从而实现高效的检索。
步骤S104,通过大型语言模型将文档检索请求转换为待查询向量;
可选的,步骤S104中通过大型语言模型将文档检索请求转换为待查询向量包括:通过大型语言模型依据文档检索请求获取预设个数的待查询向量,其中,待查询向量包括:图向量和文本向量。
其中,本申请实施例中预设个数的待查询向量取TOP K个;
具体的,当接收到新的搜索查询(即,本申请实施例中的文档检索请求)时,首先将查询文本(即,本申请实施例中的文档检索请求)使用大型语言模型转换为向量,例如,按偏好检索最近的TOP K个待查询向量(包括:图向量graph vector和文本向量text vector)。
步骤S106,通过图网络模型计算待查询向量与预存文本向量的相似度;
可选的,步骤S106中通过图网络模型计算待查询向量与预存文本向量的相似度包括:通过图网络模型计算待查询向量与预存文本向量的相似度,得到第一向量集合;通过优化后的图网络模型计算待;查询向量之间距离小于或等于预设值的点集合,得到第二向量集合。
具体的,计算查询向量与数据库中文本向量的相似度(即,本申请实施例中的计算待查询向量与预存文本向量的相似度),可以通过计算它们之间的余弦距离来实现,一次召回TOP向量集合K1(即,本申请实施例中的第一向量集合)。
向量集合K1,在图网络模型2中同时代表着一些点的集合,找到与这些点之间距离小于等于N(即,本申请实施例中的预设值)的点集合K2(即,本申请实施例中的第二向量集合),作为二次召回。
例如,假设K1={id 009, id014}, N=2,则K2={id007}。即,二次召回代表了,在技术文档的行文上,与K1代表的语料有强相关性,但又未被余弦距离计算得到的语料。
进一步地,可选的,本申请实施例提供的基于大型语言模型和图网络模型的文档检索方法还包括:当第一向量集合中所有点之间距离大于阈值时,确定被召回的语料在文档中的引用关系不符合预设要求;当第一向量集合中所有点之间距离小于或等于阈值时,确定被召回的语料在文档中的引用关系符合预设要求。
具体的,基于图网络模型2,判断图网络模型1的召回的好坏: 当K1中所有点之间距离较远(weight的总和比较大)(即,本申请实施例中的第一向量集合中所有点之间距离大于阈值)时,意味着这些被召回的语料在手册中的引用关系较弱; 当K1中所有点之间距离较近(即,本申请实施例中的第一向量集合中所有点之间距离小于或等于阈值)时,意味着这些被召回的语料在手册中的引用关系较强。
通过上述观察该嵌入算法是否适用于该类型文档的,提供了良好的可解释性度量。基于该可解释性度量帮助用户理解和评估嵌入模型的效果,从而为模型的优化提供指导。
需要说明的是,本申请实施例中,图网络模型的召回可以为:"召回"是指在接收到检索请求时,从大量的文档块中找出可能与查询相关的文档块。这个过程可以通过计算查询向量与文档向量的相似度来实现,也可以通过利用图网络模型中的关联关系来增强。步骤S108,依据相似度获取文档检索请求对应的目标文档。
可选的,本申请实施例提供的基于大型语言模型和图网络模型的文档检索方法还包括:将目标文档返回客户端和/或返回大型语言模型。
具体的,将步骤S106中得到的{K1,K2}语料所对应的文档,可以返回给LLM进行后续加工,也可以返回给客户端。
本申请实施例提供的基于大型语言模型和图网络模型的文档检索方法中将目标文档返回大语言模型可以为:通过目标文档对大型语言模型进行进一步地训练,和/或,通过大语言模型将目标文档作进一步地解释,翻译为更容易用户理解的语言或描述。在撰写大规模技术文档时,技术文档工程师会将相关的信息通过相互引用、目录、索引等方式组织起来,这些组织方式可以构成一个图网络结构。本申请实施例提供的基于大型语言模型和图网络模型的文档检索方法利用了图网络结构,当使用LLM+嵌入的方案进行召回时,可以查找这些召回在图网络上的距离,从而定量分析“AI认为相关的信息”和“技术文档工程师认为相关的信息”。
本申请实施例提供的基于大型语言模型和图网络模型的文档检索方法通过结合图网络模型和大型语言模型,可以在检索过程中充分利用文档间的关联关系,从而获取更多有价值的上下文信息。相比于现有技术中仅依赖语义接近度的方法,能够更准确地找到与查询相关的文档和内容,从而进一步提升文档检索的效果。
本发明实施例提供了一种基于大型语言模型和图网络模型的文档检索方法,通过接收文档检索请求;通过大型语言模型将文档检索请求转换为待查询向量;通过图网络模型计算待查询向量与预存文本向量的相似度;依据相似度获取文档检索请求对应的目标文档,从而能够用文档间的关联关系来提高检索准确性和效率的技术效果。
本发明实施例提供一种基于大型语言模型和图网络模型的文档检索装置,图7为本发明实施例提供的一种基于大型语言模型和图网络模型的文档检索装置的示意图;如图7所示,本申请实施例提供的基于大型语言模型和图网络模型的文档检索装置包括:接收模块72,用于接收文档检索请求;转换模块74,用于通过大型语言模型将文档检索请求转换为待查询向量;计算模块76,用于通过图网络模型计算待查询向量与预存文本向量的相似度;检索模块78,用于依据相似度获取文档检索请求对应的目标文档。
本发明实施例提供了一种基于大型语言模型和图网络模型的文档检索装置,通过接收文档检索请求;通过大型语言模型将文档检索请求转换为待查询向量;通过图网络模型计算待查询向量与预存文本向量的相似度;依据相似度获取文档检索请求对应的目标文档,从而能够用文档间的关联关系来提高检索准确性和效率的技术效果。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (11)
1.一种基于大型语言模型和图网络模型的文档检索方法,其特征在于,包括:
接收文档检索请求;
通过大型语言模型将所述文档检索请求转换为待查询向量;
通过图网络模型计算所述待查询向量与预存文本向量的相似度;
依据所述相似度获取所述文档检索请求对应的目标文档。
2.根据权利要求1所述的方法,其特征在于,在所述接收文档检索请求之前,所述方法还包括:
通过所述大型语言模型对待整理文档进行文本嵌入,得到文本向量;
通过所述文本向量构建所述图网络模型。
3.根据权利要求2所述的方法,其特征在于,所述通过所述大型语言模型对待整理文档进行文本嵌入,得到文本向量包括:
将所述待整理文档进行分页和分块,得到所述待整理文档的文本块;
对所述文本块分配对应的标识,其中,所述标识,用于构建图关系时的节点标识;
通过所述大型语言模型对携带所述标识的所述文本块进行文本嵌入,得到所述文本向量。
4.根据权利要求3所述的方法,其特征在于,所述待整理文档包括:所述目标文档。
5.根据权利要求2所述的方法,其特征在于,所述通过所述文本向量构建所述图网络模型包括:
根据所述待整理文档中的位置信息,建立文本块之间的关联关系;
根据所述关联关系,建立所述文本块之间的连接;
根据所述待整理文档中的引用关系和所述文本块之间的连接,构建所述图网络模型。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
计算所述图网络模型中节点间最短路径;
依据所述最短路径对所述图网络模型进行优化,得到优化后的所述图网络模型,其中,优化后的所述图网络模型,用于处理同构图。
7.根据权利要求1所述的方法,其特征在于,所述通过大型语言模型将所述文档检索请求转换为待查询向量包括:
通过所述大型语言模型依据所述文档检索请求获取预设个数的所述待查询向量,其中,所述待查询向量包括:图向量和文本向量。
8.根据权利要求7所述的方法,其特征在于,所述通过图网络模型计算所述待查询向量与预存文本向量的相似度包括:
通过所述图网络模型计算所述待查询向量与所述预存文本向量的相似度,得到第一向量集合;
通过优化后的所述图网络模型计算所述待查询向量之间距离小于或等于预设值的点集合,得到第二向量集合。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
当所述第一向量集合中所有点之间距离大于阈值时,确定被召回的语料在文档中的引用关系不符合预设要求;
当所述第一向量集合中所有点之间距离小于或等于所述阈值时,确定被召回的语料在文档中的引用关系符合预设要求。
10.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述目标文档返回客户端和/或返回所述大型语言模型。
11.一种基于大型语言模型和图网络模型的文档检索装置,其特征在于,包括:
接收模块,用于接收文档检索请求;
转换模块,用于通过大型语言模型将所述文档检索请求转换为待查询向量;
计算模块,用于通过图网络模型计算所述待查询向量与预存文本向量的相似度;
检索模块,用于依据所述相似度获取所述文档检索请求对应的目标文档。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310693598.6A CN116431837B (zh) | 2023-06-13 | 2023-06-13 | 基于大型语言模型和图网络模型的文档检索方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310693598.6A CN116431837B (zh) | 2023-06-13 | 2023-06-13 | 基于大型语言模型和图网络模型的文档检索方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116431837A true CN116431837A (zh) | 2023-07-14 |
CN116431837B CN116431837B (zh) | 2023-08-22 |
Family
ID=87080139
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310693598.6A Active CN116431837B (zh) | 2023-06-13 | 2023-06-13 | 基于大型语言模型和图网络模型的文档检索方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116431837B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117032722A (zh) * | 2023-08-18 | 2023-11-10 | 上海澜码科技有限公司 | 基于api文档的代码生成方法 |
CN117151052A (zh) * | 2023-11-01 | 2023-12-01 | 北京知呱呱科技有限公司 | 一种基于大语言模型和图算法的专利查询报告生成方法 |
CN118035320A (zh) * | 2024-04-10 | 2024-05-14 | 北京枫清科技有限公司 | 融合数据库的数据查询方法、装置、设备和介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1072982A2 (en) * | 1999-07-30 | 2001-01-31 | Matsushita Electric Industrial Co., Ltd. | Method and system for similar word extraction and document retrieval |
CN112732864A (zh) * | 2020-12-25 | 2021-04-30 | 中国科学院软件研究所 | 一种基于稠密伪查询向量表示的文档检索方法 |
CN113377927A (zh) * | 2021-06-28 | 2021-09-10 | 成都卫士通信息产业股份有限公司 | 一种相似文档检测方法、装置、电子设备及存储介质 |
CN114780746A (zh) * | 2022-04-22 | 2022-07-22 | 润联软件系统(深圳)有限公司 | 基于知识图谱的文档检索方法及其相关设备 |
KR102458457B1 (ko) * | 2021-12-21 | 2022-10-26 | 주식회사 티맥스에이아이 | 문서 데이터 검색 기법 |
CN115577678A (zh) * | 2022-09-21 | 2023-01-06 | 中国人民解放军海军工程大学 | 文档级事件因果关系识别方法、系统、介质、设备及终端 |
-
2023
- 2023-06-13 CN CN202310693598.6A patent/CN116431837B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1072982A2 (en) * | 1999-07-30 | 2001-01-31 | Matsushita Electric Industrial Co., Ltd. | Method and system for similar word extraction and document retrieval |
CN112732864A (zh) * | 2020-12-25 | 2021-04-30 | 中国科学院软件研究所 | 一种基于稠密伪查询向量表示的文档检索方法 |
CN113377927A (zh) * | 2021-06-28 | 2021-09-10 | 成都卫士通信息产业股份有限公司 | 一种相似文档检测方法、装置、电子设备及存储介质 |
KR102458457B1 (ko) * | 2021-12-21 | 2022-10-26 | 주식회사 티맥스에이아이 | 문서 데이터 검색 기법 |
CN114780746A (zh) * | 2022-04-22 | 2022-07-22 | 润联软件系统(深圳)有限公司 | 基于知识图谱的文档检索方法及其相关设备 |
CN115577678A (zh) * | 2022-09-21 | 2023-01-06 | 中国人民解放军海军工程大学 | 文档级事件因果关系识别方法、系统、介质、设备及终端 |
Non-Patent Citations (2)
Title |
---|
"OpenAI体验3--embedding和向量数据库(pinecone)", HTTPS://ZHUANLAN.ZHIHU.COM/P/634429713, pages 1 - 7 * |
JINGFENG YANG: "Harnessing the Power of LLMs in Pratice:A Survey on ChatGPT and Beyond", ARXIV, pages 1 - 24 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117032722A (zh) * | 2023-08-18 | 2023-11-10 | 上海澜码科技有限公司 | 基于api文档的代码生成方法 |
CN117032722B (zh) * | 2023-08-18 | 2024-04-26 | 上海澜码科技有限公司 | 基于api文档的代码生成方法 |
CN117151052A (zh) * | 2023-11-01 | 2023-12-01 | 北京知呱呱科技有限公司 | 一种基于大语言模型和图算法的专利查询报告生成方法 |
CN117151052B (zh) * | 2023-11-01 | 2024-01-23 | 北京知呱呱科技有限公司 | 一种基于大语言模型和图算法的专利查询报告生成方法 |
CN118035320A (zh) * | 2024-04-10 | 2024-05-14 | 北京枫清科技有限公司 | 融合数据库的数据查询方法、装置、设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116431837B (zh) | 2023-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116431837B (zh) | 基于大型语言模型和图网络模型的文档检索方法和装置 | |
US9104979B2 (en) | Entity recognition using probabilities for out-of-collection data | |
US10289717B2 (en) | Semantic search apparatus and method using mobile terminal | |
CN108710662B (zh) | 语言转换方法和装置、存储介质、数据查询系统和方法 | |
CN113254630B (zh) | 一种面向全球综合观测成果的领域知识图谱推荐方法 | |
CN109471889B (zh) | 报表加速方法、系统、计算机设备和存储介质 | |
CN112307182B (zh) | 一种基于问答系统的伪相关反馈的扩展查询方法 | |
CN111506719A (zh) | 一种关联问句推荐方法、装置、设备及可读存储介质 | |
CN115563313A (zh) | 基于知识图谱的文献书籍语义检索系统 | |
CN112883030A (zh) | 数据收集方法、装置、计算机设备和存储介质 | |
CN112613321A (zh) | 一种抽取文本中实体属性信息的方法及系统 | |
CN111259126A (zh) | 基于词语特征的相似度计算方法、装置、设备及存储介质 | |
CN118113837A (zh) | 一种使用句向量的语义匹配检索知识产权文档的对话模型 | |
CN111813916B (zh) | 一种智能问答方法、装置、计算机设备和介质 | |
CN117708270A (zh) | 企业数据查询方法、装置、设备及存储介质 | |
JP2013029891A (ja) | 抽出プログラム、抽出方法及び抽出装置 | |
CN117076590A (zh) | 地址标准化方法、装置、计算机设备及可读存储介质 | |
CN114443783B (zh) | 一种供应链数据分析和增强处理方法及装置 | |
JP2001188678A (ja) | 言語事例推論装置,言語事例推論方法及び言語事例推論プログラムが記述された記憶媒体 | |
CN114780700A (zh) | 基于机器阅读理解的智能问答方法、装置、设备及介质 | |
WO2019230465A1 (ja) | 類似性評価装置、その方法、及びプログラム | |
Li | Discovering Web service operations by index tables and bipartite graphs | |
CN118013020B (zh) | 一种基于检索生成联合式训练的专利查询方法及系统 | |
CN110083679B (zh) | 搜索请求的处理方法、装置、电子设备和存储介质 | |
RU2266560C1 (ru) | Способ поиска информации в политематических массивах неструктурированных текстов |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |