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

DeepMind | 在生成的過程中進行檢索:一種有潛力完全替代RAG的思路"RICHES"

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

大家好,我是HxShine

今天分享一篇 Google DeepMind 公司的一篇文章,Title: From RAG to RICHES: Retrieval Interlaced with Sequence Generation:從 RAG 到 RICHES:在生成過程中完成檢索。

這篇文章提出了一種新的方法 RICHES,它將檢索RAG與生成完全結合在一塊。RICHES 消除了對單獨構建RAG系統再結合LLM進行生成的模式,為傳統的 RAG 系統提供了一種替代方案。它通過直接解碼其內容來檢索文檔,并受到語料庫的約束。RICHES允許我們僅通過提示即可適應各種新任務。RICHES 可以與任何指令微調模型一起使用,而無需額外的訓練。它提供屬性證據,支持多跳檢索,并在單個 LLM 解碼過程中交織思維以規劃下一步要檢索的內容。 實驗表明RICHES 在 ODQA 任務(包括屬性和多跳 QA)中都有非常好的性能。

RICHES是非常有潛力能替代RAG的一種方案,他能做到在生成的過程中完成檢索,并且能做到邊檢索,邊思考,邊糾錯,能解決復雜的多步推理問題。后續RICHES或許能成為LLM接入外部知識的一種新方案。同時其對檢索數據的構建方法也有了更高的要求,需要在decode上做額外的設計,也增加了其使用難度。

一、概述

? Title: From RAG to RICHES: Retrieval Interlaced with Sequence Generation

? URL:?? https://arxiv.org/pdf/2407.00361??

? Authors: Palak Jain, Livio Baldini Soares, Tom Kwiatkowski

? Institution: Google DeepMind

1 Motivation

? 當前的 RAG 系統需要將檢索和生成分開,導致多系統流水線復雜且難以訓練。

? LLMs 容易產生幻覺,無法及時引入新內容,無法解釋新鮮的、在訓練時無法獲得的知識。

2 Methods

RICHES 通過將檢索與生成統一到單一的解碼過程中,RICHES旨在通過提示(prompting)適應多樣化的新任務,從而減少對額外訓練的需求。其通過直接解碼文檔內容或與之相關的自然語言檢索鍵,提高了檢索效率,并允許在單個解碼過程中進行多跳檢索和思考規劃。

DeepMind | 在生成的過程中進行檢索:一種有潛力完全替代RAG的思路"RICHES"-AI.x社區


1)RICHES 的工作流程

  • 輸入問題:用戶輸入一個問題。
  • 生成檢索鍵:從 FM-Index 中生成指向相關文檔的檢索鍵。
  • 解碼過程:使用 LLM 進行解碼,生成包含檢索鍵和非約束文本的序列。
  • 選擇最優序列:從多個候選序列中選擇最優序列作為答案。
  • 輸出答案:輸出答案,并可以提供屬性證據,指明答案的來源。

2)詳細方法和步驟

  • 檢索鍵生成: 通過解碼文檔內容或相關的自然語言檢索鍵來檢索文檔,這些鍵指向它們生成的文檔。

FM-Index 索引:使用 FM-Index 索引檢索語料庫,將文本的所有后綴按照字典序排列并壓縮成更緊湊的形式。

檢索鍵:從 FM-Index 中生成指向文檔的檢索鍵,例如段落、句子或命題。檢索鍵可以是文本片段,也可以是經過命題化處理的文本片段。

  • 約束解碼: 使用 FM-index 對模型輸出進行約束,以確保它們存在于語料庫中。

約束條件:在解碼過程中添加約束條件,確保生成的序列與檢索語料庫中的序列一致。

約束解碼技術: 使用多種約束解碼技術,例如:

? 掩碼技術:將不在檢索語料庫中的詞匯的概率設置為 0,防止模型生成不存在的詞匯。

? 前綴匹配:確保生成的序列以檢索鍵開頭。

? 長度限制:限制生成序列的長度,避免生成過長的序列。

def constrain(input_prefix):
    # Fetch continuations for prefix 
    allowed_tokens = fm_index.get_continuations(input_prefix)
    # Get next token probabilities
    logprobs = LLM.logprobs(input_prefix)
    # Disallowed tokens are set to -inf
    for i in logprobs:
        token = vocab[i]
        if token not in allowed_tokens:
                logprobs[i] -= np.inf 
    return logprobs

3)自適應beamsearch大小: 使用自適應beamsearch大小來平衡約束和非約束生成。

? 束搜索:使用束搜索技術來生成多個候選序列,從中選擇最優序列作為答案。

? 自適應束大小:根據是受限序列還是非受限序列自適應調整beamsearch窗口大小。

約束序列:對于約束序列,使用較小的束大小,因為約束序列的搜索空間較小。

非約束序列:對于非約束序列,使用較大的束大小,因為非約束序列的搜索空間較大。

3 Few-shot prompt(QA的提示詞)

1)single-hop QA

DeepMind | 在生成的過程中進行檢索:一種有潛力完全替代RAG的思路"RICHES"-AI.x社區


特點:

? keyword引入思考過程,輔助檢索相關內容,同時keyword生成為非受限解碼,給足充分的思考空間。

? passage生成《》內部用限制解碼,精確解碼檢索相關知識,同時可以設置大的Beam size,充分發揮其能力。

? 迭代生成多個keyword,可以用于檢索多個知識,以及修復檢索錯誤的結果。

2)multi-hop QA

DeepMind | 在生成的過程中進行檢索:一種有潛力完全替代RAG的思路"RICHES"-AI.x社區


特點:

? keyword引入思考過程,輔助檢索相關內容,同時keyword生成為非受限解碼,給足充分的思考空間。

? passage生成《》內部用限制解碼,精確解碼檢索相關知識,同時可以設置大的Beam size,充分發揮其能力。

? 迭代生成多個keyword,解決多跳問答需要搜索多個知識問題,同時迭代生成還能對其進行糾錯,修復檢索錯誤的結果。

3)特點總結

  • 統一檢索與生成:將檢索操作與文本生成過程統一到一個單一的解碼過程中,消除了對單獨檢索器和生成器的需求。
  • 受限解碼(Constrained Decoding):通過標記特殊的開始和結束符號來識別檢索鍵,確保生成的文本是存在于預定義的語料庫中的序列。
  • 自適應束搜索(Adaptive Beam Search):為了處理交替出現的受限和非受限文本生成任務,引入了自適應束搜索策略,在受限序列生成時使用全束搜索,而在非受限生成時則使用貪心解碼。
  • 高效的約束實現:利用FM-index數據結構來支持快速的子字符串搜索操作,從而在解碼過程中對模型輸出進行語料庫約束,確保生成的文本符合要求。
  • 多種檢索鍵選擇:提供了多種檢索鍵的選擇,包括文檔標題、段落子字符串、句子子字符串和命題索引,以適應不同的檢索需求。
  • 無需額外訓練:可以與任何指令調整(Instruction-tuned)模型一起工作,無需額外的訓練,這得益于統一檢索與生成的方法可以直接通過提示適應新任務。
  • 多跳檢索和思考規劃:支持多跳檢索任務,允許模型在生成過程中穿插“思考”步驟,以幫助指導搜索過程,避免重復檢索,并在必要時糾正錯誤的檢索。

DeepMind | 在生成的過程中進行檢索:一種有潛力完全替代RAG的思路"RICHES"-AI.x社區


4)索引構建策略對比

DeepMind | 在生成的過程中進行檢索:一種有潛力完全替代RAG的思路"RICHES"-AI.x社區


多種索引策略優缺點分析:

? 文檔標題和章節標題:

優點:這種策略利用了檢索語料庫的結構化信息,例如 Wikipedia 中的標題和章節標題,可以有效地組織文檔并提供層次化的檢索。

缺點:這種策略依賴于檢索語料庫的結構,對于結構不規范的語料庫可能不適用。

? 段落子字符串:

? 優點:這種策略將段落作為檢索單元,可以有效地檢索段落級別的信息,例如開放式問答中的證據段落。

? 缺點:這種策略可能導致檢索結果過多,因為每個段落都可能對應多個檢索鍵。

? 句子子字符串:

? 優點:這種策略將句子作為檢索單元,可以檢索句子級別的信息,例如翻譯任務中的翻譯示例。

? 缺點:句子可能不夠完整,無法提供足夠的信息來回答問題。

? 命題索引(需要額外對文本進行分析拆解):

? 優點:這種策略將文檔分解為原子命題,每個命題包含一個事實性信息。命題索引可以有效地檢索事實性信息,例如開放式問答中的答案。

? 缺點:命題化過程需要額外的計算成本,并且可能無法涵蓋所有類型的知識。

4 QA

Q1:如何選擇合適的索引策略?:

? 任務類型:根據任務類型選擇合適的索引策略。例如,對于開放式問答任務,可以選擇段落子字符串或命題索引。

? 語料庫結構:根據檢索語料庫的結構選擇合適的索引策略。例如,**對于結構化的語料庫,可以選擇文檔標題和章節標題。

實驗結論:RICHES 論文中的實驗結果表明,命題索引在開放式問答任務中表現最好,因為它可以有效地檢索事實性信息,并且與 RICHES 的解碼搜索策略更匹配。

Q2:基于命題索引究竟是什么,怎么來的?

  • ? Proposition定義:其需要對原始passage做原子處理,為文本中的原子表達式,每個Proposition命題都封裝了獨特的特征,并以簡潔、自成一體的自然語言格式呈現一個知識點。

DeepMind | 在生成的過程中進行檢索:一種有潛力完全替代RAG的思路"RICHES"-AI.x社區


? Proposition命題構建步驟一:利用GPT4將passage轉化成propositions(構建Flan-T5-large模型的訓練語料)


? Proposition命題構建步驟二:訓練Flan-T5-large model生成大量Proposition

DeepMind | 在生成的過程中進行檢索:一種有潛力完全替代RAG的思路"RICHES"-AI.x社區


5 Conclusion

? RICHES 可以將檢索與序列生成統一在一起,不用去構建復雜的pipeline。

? RICHES可以解決各種 ODQA 任務,同時其復雜任務推理能力中表現出色,并可以與任何指令微調模型一起使用,而無需額外的訓練。

? RICHES能在推理的過程中,一邊檢索知識,一邊進行思考,還能對生成的結果進行校驗,是比較有潛力替代RAG的一種方法。

本文轉載自 ??NLP PaperWeekly??,作者: NLP PaperWeekly

已于2024-7-29 10:24:32修改
收藏
回復
舉報
回復
相關推薦
主站蜘蛛池模板: 日本特黄a级高清免费大片 国产精品久久性 | 九九热re| 欧美欧美欧美 | 欧美一区二区三区在线视频 | 国产在线高清 | 亚洲国产视频一区二区 | 岛国在线免费观看 | 成人在线h | 国产精品精品视频一区二区三区 | av资源中文在线 | 伊人91在线 | 视频一二区 | 国产成人免费视频网站高清观看视频 | 亚洲区一区二 | 日本手机在线 | 中文字幕一区二区三区日韩精品 | 色av一区二区 | 欧美xxxx做受欧美 | 成人av大全| 中文字幕亚洲视频 | 国产探花在线精品一区二区 | 国产精品成人一区二区三区夜夜夜 | 亚洲一区二区三区在线 | 国产精品亚洲综合 | 天天射中文 | 黄色播放 | 中文字幕久久精品 | 亚洲免费大片 | 亚洲一区精品视频 | 中文字幕在线观看一区 | 国产精品国产a级 | 国产毛片毛片 | 久久乐国产精品 | 亚洲欧美国产精品一区二区 | 天天综合日日夜夜 | 日韩精品一区二区在线 | 黑人性hd| 成人av网站在线观看 | 成人一区二区三区在线 | 天天干天天爱天天爽 | 久久精品亚洲成在人线av网址 |