成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

RAPTOR 檢索樹再次進一步提升RAG性能的設計思路 原創

發布于 2024-7-11 13:29
瀏覽
0收藏

大多數現有方法僅從檢索語料庫中檢索短的連續塊,限制了對整個文檔上下文的整體理解。RAPTOR(Recursive Abstractive Processing for Tree-Organized Retrieval)引入了一種新方法,即遞歸嵌入、聚類和總結文本塊,從下往上構建具有不同總結級別的樹。在推理時,RAPTOR 模型從這棵樹中檢索,整合不同抽象級別的長文檔中的信息。RAPTOR(Recursive Abstractive Processing for Tree-Organized Retrieval)比傳統的檢索增強型 LM 性能與絕對準確度上提高 20%。

開源地址:??https://github.com/parthsarthi03/raptor??

論文地址:??https://arxiv.org/abs/2401.18059??

一、RAPTOR 檢索樹的構建過程

RAPTOR模型的精髓在于其樹狀結構的構建,這一過程通過精心設計的遞歸算法實現,形成了一個層次分明的多層級樹形架構。這種結構不僅顯著提升了模型對長文本信息的處理能力,更使得對復雜文本內容的理解和檢索變得高效而精準。通過遞歸的方式,RAPTOR能夠逐步細化文本信息的粒度,從而確保在多個層次上都能捕捉到關鍵信息,為后續的文本分析和應用奠定了堅實的基礎。

下面我將對具體步驟進行詳細的說明:

RAPTOR 檢索樹再次進一步提升RAG性能的設計思路-AI.x社區

  1. 首先,需要對文本進行合理的切片處理。這里需要注意選擇合適的切片算法很重要,建議參考主流框架的實現方案。
  2. 然后,RAPTOR 根據其語義embedding遞歸地對文本塊chunk進行聚類,并生成這些聚類的文本摘要。
  3. RAPTOR采用軟聚類方法,允許文本塊跨多個聚類,基于高斯混合模型(GMMs)和UMAP技術進行降維,以捕捉文本數據的復雜結構和關系,從而優化文本聚類效果。
  4. RAPTOR通過遞歸的向量分析,精準地對文本塊進行聚類,并提煉出這些聚類的核心摘要,自下而上地構建出一個結構化的樹形模型。在此樹中,相近的節點自然聚集形成兄弟關系,而它們的父節點則承載著整個集群的概要性文本信息。這種設計確保了文本信息的層次化和結構化表達,便于理解和檢索。

二、RAPTOR 的檢索過程

RAPTOR 檢索樹再次進一步提升RAG性能的設計思路-AI.x社區

這里有兩種方式實現,基于深度檢索樹(樹遍歷)廣度檢索樹(折疊樹)

  1. 深度檢索樹從樹的根級別開始,根據與查詢向量的余弦相似度檢索頂層的 top-k (這里為 top-1) 節點。在每一層,它根據與查詢向量的余弦相似度從上一層的 top-k 節點的子節點中檢索 top-k 節點。這個過程一直重復,直到達到葉節點。最后,將所有選定節點的文本連接起來形成檢索到的上下文。
  2. 廣度檢索樹方法將整個樹壓縮成單一層,然后根據與查詢向量的余弦相似度評估所有層的節點,直到達到設定閾值。

三、開源項目案例應用示例

# 安裝,在使用 RAPTOR 之前,請確保已安裝 Python 3.8+。克隆 RAPTOR 存儲庫并安裝必要的依賴項:
git clone https://github.com/parthsarthi03/raptor.git
cd raptor
pip install -r requirements.txt


# 開始使用 RAPTOR,請按照以下步驟操作:
# 首先,設置您的 OpenAI API 密鑰并初始化 RAPTOR 配置:
import os
os.environ["OPENAI_API_KEY"] = "your-openai-api-key"


from raptor import RetrievalAugmentation


# Initialize with default configuration. For advanced configurations, check the documentation. [WIP]
RA = RetrievalAugmentation()


# 將您的文本文檔添加到 RAPTOR 進行索引:
with open('sample.txt', 'r') as file:
    text = file.read()
RA.add_documents(text)


# 現在可以使用 RAPTOR 根據索引文檔回答問題:
question = "How did Cinderella reach her happy ending?"
answer = RA.answer_question(question=question)
print("Answer: ", answer)


# 將構造好的樹保存到指定路徑:
SAVE_PATH = "demo/cinderella"
RA.save(SAVE_PATH)


# 將保存的樹重新加載到 RAPTOR 中:
RA = RetrievalAugmentation(tree=SAVE_PATH)
answer = RA.answer_question(question=question)

總結

RAPTOR在RAG中的優化為我們提供了一個全新的視角和工具,使我們能夠更高效地利用海量信息,更精準地檢索和生成高質量的內容。隨著技術的不斷進步和完善,相信RAPTOR將在未來為我們帶來更多驚喜和可能性。注意以上是我個人的理解,如果想深入了解可以閱讀論文。


本文轉載自公眾號頂層架構領域

原文鏈接:??https://mp.weixin.qq.com/s/8kt5qbHeTP1_ELY_YKwonA??



?著作權歸作者所有,如需轉載,請注明出處,否則將追究法律責任
收藏
回復
舉報
回復
相關推薦
主站蜘蛛池模板: 日批av| 欧美综合一区 | 国产1区 | 天天操综合网站 | av色噜噜| 在线午夜电影 | 亚洲第一视频网站 | 成人性视频免费网站 | 国产精品高潮呻吟久久av野狼 | 天堂视频一区 | 欧美综合一区二区 | 国产精品美女久久久av超清 | 国产资源视频 | 91精品国产欧美一区二区成人 | 成人片网址 | 中文字幕在线视频观看 | 欧美日韩一卡 | 日本三级做a全过程在线观看 | 青青久草 | 久久国产欧美日韩精品 | 国产在线www | 97色在线观看免费视频 | 日韩免费福利视频 | 国产美女精品视频免费观看 | 亚洲一区二区三区在线 | 亚洲免费福利视频 | 粉嫩av在线 | 精品91视频 | 久久亚洲一区二区三区四区 | www.久草 | 欧美视频在线免费 | 亚洲视频一区在线观看 | 免费一级黄色电影 | 国产精品自拍av | 成人在线亚洲 | 久久99精品久久久久婷婷 | 久草新在线| 欧美一区二区另类 | 国产高清视频一区二区 | 精品国产99 | 一二三四av |