自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

RAG 檢索增強之 Reranker 重排序模型詳解!

人工智能
具體來說,ReRanker模型在RAG Pipeline中扮演著第二階段的角色,即在初始檢索步驟之后,對檢索出的文檔塊chunks進行重新排序,以確保相關(guān)的文檔塊優(yōu)先被傳遞給LLM進行處理。

什么是Reranker模型?

ReRanker模型是對RAG檢索返回的結(jié)果進行重新排序的模型。也就是下圖所示中2nd Retrieval的模型。具體來說,ReRanker模型在RAG Pipeline中扮演著第二階段的角色,即在初始檢索步驟之后,對檢索出的文檔塊chunks進行重新排序,以確保相關(guān)的文檔塊優(yōu)先被傳遞給LLM進行處理。

為什么需要Reranker模型?

在回答這個問題之前,我們先深入了解一下背后的問題。

RAG通過在大量文本文檔中進行語義搜索來工作,這些文檔數(shù)量可能達到數(shù)十億。為了實現(xiàn)大規(guī)模搜索的快速響應(yīng),我們一般采用向量搜索技術(shù),即將文本轉(zhuǎn)化為向量后,放入一個向量空間內(nèi),通過余弦相似度等度量標準來比較它們與查詢向量之間的相似度。

向量搜索的前提是需要向量。這些向量基本上是將文本背后的意義壓縮成固定維度的向量(如768或1536維),這一過程不可避免地會導(dǎo)致信息丟失。因此,常常會發(fā)現(xiàn),即便是排名靠前的文檔,也可能會遺漏一些關(guān)鍵信息。

如果較低位置的文檔包含了有助于LLM更好地形成回答的相關(guān)信息,這些信息就很容易被忽略。這該怎么辦?一個簡單的方法就是增加返回的文檔數(shù)量,即增加top_k值,并將它們?nèi)總鬟f給LLM。

我們此處關(guān)注的指標是召回率,即“我們檢索到了多少相關(guān)文檔”。值得注意的是,召回率衡量的是系統(tǒng)能夠找到的相關(guān)文檔的比例,而不考慮檢索到的文檔總數(shù)。因此,理論上通過返回所有文檔可以實現(xiàn)完美的召回率。

然而,這在實際操作中是不可行的,一是因為大語言模型(LLM)對輸入文本量有一定的限制,我們稱之為「上下文窗口」。即使像Anthropic 的 Claude這樣的模型擁有高達100K Token的巨大上下文窗口,也不能無限制地增加輸入文本量。二是當上下文窗口被過多的Token填滿時,大語言模型的回憶能力和執(zhí)行指令的效果都會受到影響。研究表明,過度填充上下文窗口會降低模型在該窗口中檢索信息的能力,從而影響生成回答的質(zhì)量。

為了解決召回率和LLM上下文窗口之間的矛盾,Reranker模型提供了一種有效的解決方案。具體步驟如下:

(1) 最大化檢索召回率

在初始檢索階段,通過增加向量數(shù)據(jù)庫返回的文檔數(shù)量(即增加 top_k 值),可以提高檢索的召回率。這意味著盡可能多地檢索相關(guān)文檔,確保不會遺漏任何可能有助于 LLM 形成高質(zhì)量回答的信息。

(2) 重新排序并篩選最相關(guān)的文檔

在第二階段,使用 Reranker 模型對檢索到的大量文檔進行> 重新排序。Reranker 模型能夠更精確地評估查詢與文檔的相> 關(guān)性,篩選出最相關(guān)的文檔,并減少最終傳遞給 LLM 的文檔> 數(shù)量。這一步驟的關(guān)鍵在于:

  • 重新排序:根據(jù)查詢和文檔的相關(guān)性分數(shù)對文檔進行重新排序。
  • 篩選:只保留最相關(guān)的文檔,確保這些文檔在 LLM 的上下文窗口內(nèi)。

(3) 確保 LLM 處理高質(zhì)量信息

通過上述兩步,Reranker 模型不僅提高了檢索的召回率,還確保了傳遞給 LLM 的文檔是最相關(guān)的。這使得 LLM 能夠基于高質(zhì)量的信息生成更準確、更有價值的回答,同時避免了上下文窗口過載的問題。

Reranker模型的原理

重排序模型(也被稱為Cross-Encoder)是一種模型,能夠針對一個查詢和文檔對,輸出它們的相似度分數(shù)。我們利用這個分數(shù)對文檔按照與查詢的相關(guān)性進行重新排序。

其本質(zhì)是一個包含兩階段的檢索系統(tǒng):

  • 第一階段:快速檢索(Vector DB或Bi-Encoder檢索):使用雙編碼器(Bi-Encoder)或稀疏嵌入模型從大數(shù)據(jù)集中快速提取一組相關(guān)文檔。這一階段的核心目標是高效地縮小搜索范圍,確保能夠在短時間內(nèi)處理大規(guī)模數(shù)據(jù)集。雙編碼器將查詢和文檔分別編碼為向量,并通過余弦相似度等度量標準計算它們的相似性。
  • 第二階段:精確重排序(Reranker / Cross-Encoder):使用重排序模型(Reranker)對第一階段提取的文檔進行重新排序。Reranker模型能夠更精確地評估查詢與文檔的相關(guān)性,輸出它們的相似度分數(shù),并根據(jù)相似度分數(shù)對文檔進行重新排序,返回最相關(guān)的前K個文檔。這一階段的目標是提高檢索結(jié)果的相關(guān)性,確保最相關(guān)的文檔優(yōu)先傳遞給大語言模型(LLM)。

為什么采用兩階段策略?

是因為從大數(shù)據(jù)集中檢索少量文檔的速度遠快于對大量文檔進行重排序。簡而言之,重排序器處理較慢,而檢索器速度快。

盡管重排序器的處理速度較慢,但我們?nèi)匀贿x擇使用它們,關(guān)鍵在于其精確度遠超過嵌入模型。

雙編碼器(Bi-Encoder)精度較低的根本原因在于:

  • 雙編碼器將文檔和查詢分別編碼為固定維度的向量(如768或1536維),這一過程不可避免地會導(dǎo)致信息丟失。文本的豐富語義被壓縮成一個低維向量,無法完全保留原始文本的所有潛在含義。
  • 雙編碼器在用戶提出查詢之前就已經(jīng)創(chuàng)建了嵌入,因此它對查詢的具體內(nèi)容一無所知。這意味著它只能生成一個泛化的、平均化的含義,而無法針對具體查詢進行優(yōu)化。這種靜態(tài)的嵌入方式限制了其在處理復(fù)雜查詢時的表現(xiàn)。

而重排序器(Reranker / Cross-Encoder)能夠在大型Transformer中直接處理原始文本信息,避免了信息壓縮帶來的損失。它可以直接分析查詢和文檔的原始文本,確保所有相關(guān)信息都能被充分考慮。

然而,盡管重排序器具有更高的精度,但它也有代價,就是需要更多的時間來生成相似度分數(shù)。

因此在實際應(yīng)用中,通常會結(jié)合兩者優(yōu)勢,采用兩階段檢索策略:

  • 第一階段:使用雙編碼器快速檢索出一批候選文檔。
  • 第二階段:使用重排序器對這批候選文檔進行重新排序,確保最終返回的文檔是最相關(guān)的。

這種組合方式既能保證檢索的速度,又能提高結(jié)果的準確性。例如,在處理4000萬條記錄的情況下,如果僅使用重排序器,可能會需要超過50小時來返回一個查詢結(jié)果;而使用雙編碼器和向量搜索,則可以在不到100毫秒內(nèi)完成初步篩選。隨后,再用重排序器對篩選出的少量文檔進行精排,既提高了效率又保證了質(zhì)量。

責任編輯:趙寧寧 來源: 小喵學AI
相關(guān)推薦

2025-04-29 09:15:49

AI數(shù)據(jù)模型

2025-03-04 09:10:00

RAG大模型AI

2023-10-14 17:46:17

RAG提示工程GPT-3

2025-03-28 08:00:00

RAG文本檢索大模型

2025-04-01 09:25:09

2024-05-20 08:31:33

檢索增強生成LLM大型語言模型

2024-11-19 13:05:40

2025-02-11 08:00:00

大語言模型檢索增強生成CAG

2025-04-29 08:20:51

2024-05-28 09:24:32

2024-04-19 14:27:26

檢索增強生成大型語言模型

2025-03-25 10:41:06

RAG大語言模型AI

2024-02-18 09:00:00

RAG工具LlamaIndexChatGPT

2025-04-28 09:39:40

2024-12-23 11:31:05

大模型檢索人工智能

2024-10-31 14:46:31

2024-11-04 10:40:00

AI模型

2024-10-29 11:54:25

2025-02-27 10:55:44

2024-03-08 09:24:54

技巧RAG檢索
點贊
收藏

51CTO技術(shù)棧公眾號