GITBOOK-35: change request with no subject merged in GitBook

pull/28/head
vincehe 2023-11-18 15:18:30 +00:00 committed by gitbook-bot
parent 503162197e
commit 9335632464
No known key found for this signature in database
GPG Key ID: 07D2180C7B12D0FF
1 changed files with 6 additions and 13 deletions

View File

@ -2,11 +2,9 @@
### 为什么需要混合检索?
RAG 检索环节中的主流方法是向量检索即语义相关度匹配的方式。技术原理是通过将外部知识库的文档先拆分为语义完整的段落或句子并将其转换Embedding为计算机能够理解的一串数字表达多维向量同时对用户问题进行同样的转换操作。\
计算机能够发现用户问题与句子之间细微的语义相关性,比如 “猫追逐老鼠” 和 “小猫捕猎老鼠” 的语义相关度会高于 “猫追逐老鼠” 和 “我喜欢吃火腿” 之间的相关度。在将相关度最高的文本内容查找到后RAG 系统会将其作为用户问题的上下文一起提供给大模型,帮助大模型回答问题。\
RAG 检索环节中的主流方法是向量检索即语义相关度匹配的方式。技术原理是通过将外部知识库的文档先拆分为语义完整的段落或句子并将其转换Embedding为计算机能够理解的一串数字表达多维向量同时对用户问题进行同样的转换操作。
计算机能够发现用户问题与句子之间细微的语义相关性,比如 “猫追逐老鼠” 和 “小猫捕猎老鼠” 的语义相关度会高于 “猫追逐老鼠” 和 “我喜欢吃火腿” 之间的相关度。在将相关度最高的文本内容查找到后RAG 系统会将其作为用户问题的上下文一起提供给大模型,帮助大模型回答问题。
除了能够实现复杂语义的文本查找,向量检索还有其他的优势:
@ -15,30 +13,25 @@ RAG 检索环节中的主流方法是向量检索,即语义相关度匹配的
* 多模态理解(支持文本、图像、音视频等的相似匹配)
* 容错性(处理拼写错误、模糊的描述)
\
虽然向量检索在以上情景中具有明显优势,但有某些情况效果不佳。比如:
* 搜索一个人或物体的名字例如伊隆·马斯克iPhone 15
* 搜索缩写词或短语例如RAGRLHF
* 搜索 ID例如 `gpt-3.5-turbo` `titan-xlarge-v1.01`
\
而上面这些的缺点恰恰都是传统关键词搜索的优势所在,传统关键词搜索擅长:
* 精确匹配(如产品名称、姓名、产品编号)
* 少量字符的匹配(通过少量字符进行向量检索时效果非常不好,但很多用户恰恰习惯只输入几个关键词)
* 倾向低频词汇的匹配(低频词汇往往承载了语言中的重要意义,比如“你想跟我去喝咖啡吗?”这句话中的分词,“喝”“咖啡”会比“你”“想”“吗”在句子中承载更重要的含义)
\
对于大多数文本搜索的情景,首要的是确保潜在最相关结果能够出现在候选结果中。向量检索和关键词检索在检索领域各有其优势。混合搜索正是结合了这两种搜索技术的优点,同时弥补了两方的缺点。\
对于大多数文本搜索的情景,首要的是确保潜在最相关结果能够出现在候选结果中。向量检索和关键词检索在检索领域各有其优势。混合搜索正是结合了这两种搜索技术的优点,同时弥补了两方的缺点。
在混合检索中,你需要在数据库中提前建立向量索引和关键词索引,在用户问题输入时,分别通过两种检索器在文档中检索出最相关的文本。
<figure><img src="https://langgenius.feishu.cn/space/api/box/stream/download/asynccode/?code=OTYwNzBlZGZhYzk0OGY1NGE5NGY4YTlmNjY5Yjk3NzZfZDJuUXBZWkJhMnZxN05yRUNOR0YydFpza3RFa09HUGhfVG9rZW46VjVTUWJmY2E2b0s3U014N0s5RGNyUE5SbjFkXzE3MDAzMTcxMzc6MTcwMDMyMDczN19WNA" alt=""><figcaption><p>混合检索</p></figcaption></figure>
“混合检索”实际上并没有明确的定义,本文以向量检索和关键词检索的组合为示例。如果我们使用其他搜索算法的组合,也可以被称为“混合检索”。比如,我们可以将用于检索实体关系的知识图谱技术与向量检索技术结合。\
“混合检索”实际上并没有明确的定义,本文以向量检索和关键词检索的组合为示例。如果我们使用其他搜索算法的组合,也可以被称为“混合检索”。比如,我们可以将用于检索实体关系的知识图谱技术与向量检索技术结合。
不同的检索系统各自擅长寻找文本(段落、语句、词汇)之间不同的细微联系,这包括了精确关系、语义关系、主题关系、结构关系、实体关系、时间关系、事件关系等。可以说没有任何一种检索模式能够适用全部的情景。**混合检索通过多个检索系统的组合,实现了多个检索技术之间的互补。**\
@ -82,13 +75,13 @@ RAG 检索环节中的主流方法是向量检索,即语义相关度匹配的
通过进入“数据集->创建数据集”页面并在检索设置中设置不同的检索模式:
<figure><img src="../../.gitbook/assets/image (119).png" alt=""><figcaption><p>创建数据集时设置检索模式</p></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (119).png" alt="" width="563"><figcaption><p>创建数据集时设置检索模式</p></figcaption></figure>
### 数据集设置中修改检索模式
通过进入“数据集->选择数据集->设置”页面中可以对已创建的数据集修改不同的检索模式。
<figure><img src="../../.gitbook/assets/image (120).png" alt=""><figcaption><p>数据集设置中修改检索模式</p></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (120).png" alt="" width="563"><figcaption><p>数据集设置中修改检索模式</p></figcaption></figure>