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

詳解 SELF-RAG 框架

人工智能
自我反思檢索增強生成(Self-Reflective Retrieval-Augmented Generation,SELF-RAG)是一種通過檢索和自我反思提高 LLM 質量和事實準確性的框架,而不損害 LLM 的原始創造力和多功能性。本文將詳細介紹 SELF-RAG 框架。

當前先進的大語言模型在回答問題時依然會存在胡說八道的現象,而檢索增強生成(RAG)方法通過將相關的檢索段落與語言模型的輸入結合,可以減少在知識密集型任務中的事實錯誤。然而,這些方法可能會影響語言模型的通用性,引入不必要或離題的段落,導致生成的回答質量較低。此外,由于 RAG 檢索段落時不考慮事實基礎是否有幫助,生成的結果也不能保證與檢索到的相關段落一致。

自我反思檢索增強生成(Self-Reflective Retrieval-Augmented Generation,SELF-RAG)是一種通過檢索和自我反思提高 LLM 質量和事實準確性的框架,而不損害 LLM 的原始創造力和多功能性。本文將詳細介紹 SELF-RAG 框架。

概述

SELF-RAG 允許語言模型 根據檢索到的段落生成信息,并且通過自我批判生成的內容來生成特殊 token。這些特殊的 token 稱之為 reflection token(反思 token),表示是否需要檢索或確認輸出的相關性、或完整性。相比之下,常規的 RAG 方法會無差別地檢索段落,且不確保引用來源的是否完全支持輸入。

圖片圖片

具體而言,SELF-RAG 首先確定是否通過在繼續生成時使用檢索到的段落來幫助生成,如果是,它會輸出一個檢索標記,調用一個檢索模型(第一步)。接下來,SELF-RAG 同時處理多個檢索到的段落,評估它們的相關性,然后生成相應的任務輸出(第二步)。然后生成評論標記,對自己的輸出進行批評并選擇最佳輸出(第三步),評價標準是事實準確性和整體質量。接下來將進一步介紹 SELF-RAG 的幾個重要概念與算法。

反思 token

給定輸入 x,SELF-RAG 會訓練語言模型 M 順序生成文本 y,且 y 由多個段落組成,記為 y=[y_1,...,y_t],其中,y_t 表示第 t 個段落的 token 序列,y_t 中的生成 token 包括原始文本和反思 token。

而反思 token 主要有 4 種,分別為 Retrieve,IsRel,IsSup,IsUse,其含義分別如下:

圖片圖片

按需檢索(Retrieve)

表示對于給定輸入,判斷是否需要額外檢索信息。

比如:

  • 問題 x :提供保持健康的三個秘訣
  • 輸出:yes
  • 原因:因為可能有一些可靠的資源來解釋不同行為對健康的影響。因此檢索文檔有助于提高對此查詢的響應。

再比如:

  • 問題 x :描述一次你不得不做出艱難決定的經歷
  • 輸出:no
  • 原因:因為這個問題詢問的是一些個人經驗,因此不需要尋找一些外部文檔。

相關性(IsRel)

表示對于給定輸入,檢索出的信息是否提供了有用信息來解決輸入問題。

比如:

  • 問題 x :競選美國眾議院的年齡
  • 檢索信息 d :憲法規定了在美國參議院任職的三項資格:年齡(至少三十歲);美國公民身份(至少九年);以及參議員在選舉時所代表的州的居住權。
  • 輸出:Irrelevant
  • 原因:這些檢索信息僅討論了競選美國參議院議員的年齡,而不是討論眾議院議員的年齡。

支撐性(IsSup)

評估檢索信息中提供的信息是否完全支持輸出,輸出為 “Fully supported, partially supported, no support”。

比如:

  • 問題 x :解釋 embedding 在自然語言處理中的使用
  • 檢索信息 d :embedding 是自然語言處理 (NLP) 中一組語言建模和特征學習技術的統稱,其中詞匯表中的單詞或短語被映射到實數向量。單詞和短語嵌入用作底層輸入表示時,已被證明可以提高 NLP 任務的性能,例如句法解析、情感分析、下一個標記預測以及類比檢測。
  • 回答 y :詞嵌入對于情感分析、文本分類、預測序列中的下一個詞以及理解同義詞和類比等任務非常有用。
  • 輸出:Fully supported
  • 原因:輸出句子討論了詞嵌入的應用,證據提到了所有應用句法解析、情感分析、下一個標記預測以及類比檢測作為應用。因此,評分應為 “Fully supported”。

有用性(IsUse)

表示回答是否對問題有用,輸出為 “5,4,3,2,1”,5 為非常有用,1 為幾乎不切題或完全不相關。

比如:

  • 問題 x :“2023 年英國現任首相是誰?”
  • 回答 y :“鮑里斯·約翰遜 (Boris Johnson) 于 2019 年至 2022 年擔任英國首相。”
  • 輸出:2
  • 原因:雖然輸出提供了關于 2019 年至 2022 年英國首相的事實正確的陳述,但該指令詢問 2023 年的首相是誰,因此它沒有回答該指令。因此,評分為2。

SELF-RAG 訓練

圖片圖片

給定一組輸入輸出數據 D={X, Y},Generator 模型 M,Critic 模型 C。

  1. 用預訓練的語言模型 LM 對 C 進行初始化;
  2. 對 {X, Y} 進行采樣得到訓練數據
  3. 對采樣數據中每一對 (x, y):

通過 GPT-4 收集 reflection token r;

將 {(x, y, r)} 添加到 D{critic} 中;

  1. 用下一個 token 預測損失更新 C;
  2. 用預訓練的語言模型 LM 對 M 進行初始化;
  3. 對 (X, Y) 中的每一對 (x, y):
  4. 運行 C 得到 reflection token r;

  5. 將 (x, y, r) 添加到 D{gen} 中;

  6. 基于 D_{gen} 用下一個 token 預測損失更新 M;

訓練評論者模型

評論者模型數據生成

手動標記每個段落的反思 token 是不現實的,而我們可以使用像 GPT-4 這樣的最先進的大語言模型來生成反思 token。通過引導 GPT-4 生成反思 token,可以將其知識提煉到內部的評論者模型 C 中,從而創建了監督數據。如下圖所示:

圖片圖片

對每組反思 token,從原始訓練數據中隨機采樣。由于每組反思 token 有自己的定義和輸入,我們會針對性使用不同的 prompt。

這里以 Retrieve 為例,通過使用類型特定的指令來引導 GPT-4,比如給定一條指令,在原始任務輸入 x 和輸出 y 上進行少量示范,判斷從網絡中找到一些外部文檔是否有助于生成更好的響應,以生成適當的反思 token:p(r|I,x,y) 。

評論者模型訓練

生成數據 D{critic} 后,使用預訓練語言模型 LM 初始化評論者模型 C,并用 D{critic} 對其進行訓練。其目標函數為(對每對 reflection token 來說):

圖片圖片

初始模型可以是任意的預訓練語言模型 LM,評論者模型在大多數 reflection token 類別上都與基于 GPT-4 的預測達成了超過 90% 的一致性。

訓練生成器模型

生成器模型的數據生成

給定一個輸入輸出對 (x,y),使用檢索和評論者模型來擴充原始輸出 y,從而創建監督數據,精確地模擬 SELF-RAG 推理時的過程。整個過程如下:

圖片圖片

對 y_t,運行批評者模型 C 來評估需要額外的檢索信息來幫助增強生成。如果需要,則加上 Retrieve=Yes token,并且使用 R 來獲取前 K 個信息段落 D。對每個段落來說,C 會進一步評估相關性并預測 IsRel。如果某個段落是相關的,則 C 會進一步評估該段落是否支持模型的輸出,并預測 IsSup。評論 token IsRel 和 IsSup 會被附加到檢索的段落或輸出后面。在最后的輸出 y 中,C 會預測整體效用 token IsUSE,并將帶有反思 token 和原始輸入對的擴充輸出添加到 D_{gen}。

生成器模型訓練

通過使用精選的增強語料庫,以及 reflection token D{gen} 來訓練生成器模型 M。目標函數為:

圖片圖片

與評判模型 C 訓練不同,生成器 M 學習預測目標輸出以及 reflection tokens。訓練期間,將檢索到的文本塊(由 <p> 和 </p> 標記)進行遮擋以進行損失計算,這意味著模型在計算損失時不考慮這些檢索到的文本塊。原始詞匯 V 通過一組 reflection tokens(如 <Critique> 和 <Retrieve>)進行擴展,這表示這些 tokens 被加入到詞匯中,使模型能夠使用這些特定的 tokens 來生成輸出。

SELF-RAG 推理

最后再來介紹一下 SELF-RAG 的推理過程。如下圖所示:

圖片圖片

對于每個輸入 x 和前一代生成的 y{<t},模型解碼檢索 token 以評估檢索的效用。如果不需要檢索,模型將直接預測下一段輸出,這與標準的語言模型行為一致。如果需要檢索,模型會生成:一個評估檢索段落的相關性的反思 token、下一個回答段落、以及評估回答段落是否被檢索信息支持的反思 token。最后,一個評估整體效用的新的反思 token。每生成一個回答,SELF-RAG 都會并行處理多個段落,并且使用其自動生成的反思 token 來控制生成的輸出。

生成反思 token 以自我評估輸出使得在推理階段 SELF-RAG 更加可控,能夠調整其行為以滿足多樣的任務要求。對于要求事實準確性的任務,目標是使模型更頻繁地檢索段落,以確保輸出與現有證據緊密對齊。相反,在更為開放的任務中,例如撰寫個人經歷文章,重點轉向更少的檢索,優先考慮整體創造力或效用。接下來,將介紹在推理過程中如何實施控制以滿足這些不同目標的方法。

基于閾值的自適應檢索

SELF-RAG 可以動態決定何時檢索文本段落,這是通過預測 Retrieve token 來完成的。此外,框架還允許設定一個閾值。具體而言,如果生成的 token 是 Retrieve=Yes,且在所有輸出 token 中的標準化值超過了指定的閾值,則觸發檢索。

基于評判 tokens 的樹解碼

在每個段落步驟 t 中,當需要檢索時,基于硬性或軟性條件,R 檢索 K 個段落,并且生成器模型 M 并行處理每個段落并輸出 K 個不同的候選值。我們進行段落級的 Beam Search(使用 Beam 大小為 B)以獲取每個時間戳 t 的前 B 個段落,并在生成結束時返回最佳序列。

每個段落 y_t 相對于段落 d 的分數通過評論者模型的評分 S 進行更新,該評分是每個評論 token 類型的標準化概率的線性加權和。對于每個評論 token 組 G(例如 IsREL),我們將其在時間戳 t 的分數表示為 s^G_t,然后按以下方式計算段落分數:

圖片圖片

其中,

圖片圖片

代表最理想的反射 token 的生成概率

圖片圖片

其中 N_G 個不同的令牌表示 G 的不同可能值。

權重 wG 為可以調整的超參,以自定義模型在推理期間的行為。另外,通過調整這些權重,可以強調某些期望的行為并降低其他行為。

責任編輯:武曉燕 來源: CS實驗室
相關推薦

2025-04-01 09:25:09

2025-01-02 11:54:01

2011-07-08 18:44:09

Objective-C Self Super

2025-02-06 13:50:06

2025-02-17 03:00:00

RAG開源DeepSeek

2025-02-06 11:20:00

開發工具AI

2025-03-04 11:01:00

2025-03-19 08:43:17

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

2024-10-09 11:14:37

2025-05-23 06:00:00

RAGAI人工智能

2025-02-27 09:00:00

RAG檢索增強生成RAG框架

2025-05-06 10:05:23

2025-03-10 08:00:00

RAG檢索Reranker

2009-08-11 17:29:53

.NET遠程處理框架

2010-08-30 13:46:09

MeeGoMeeGo Touch

2011-10-10 09:11:09

Java

2024-06-24 14:32:33

2024-10-31 14:46:31

2024-11-19 13:05:40

2025-03-21 14:34:17

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 狠狠的操| 在线观看欧美一区 | 日韩中文一区二区 | 综合一区二区三区 | 中文字幕1区2区3区 亚洲国产成人精品女人久久久 | 天天操伊人 | 国产在线一区二区三区 | 国产精品一区二区三区四区五区 | 国产成人免费视频网站高清观看视频 | 色在线免费视频 | 精品在线一区 | 香蕉久久久 | 久久久久一区 | 亚洲午夜精品视频 | 精品视频在线播放 | 毛片电影 | 国产精品视频观看 | av香港经典三级级 在线 | 国产精品久久久久久久久久免费看 | 午夜av毛片 | 精精国产xxxx视频在线播放7 | 日韩在线播放一区 | 欧美中文字幕一区二区 | 欧美精品国产一区二区 | 国产一二三视频在线观看 | 国产精品一区二区三 | 91新视频| 久久精品成人一区 | 国产精品夜色一区二区三区 | 亚洲一区二区久久 | 精品一区二区三区入口 | 天天操夜夜操 | 91视频一区 | 91色视频在线观看 | 免费三级网站 | 国产午夜精品一区二区三区四区 | 一区二区三区在线播放 | 久久久视频在线 | 欧美色999| 99久久国产综合精品麻豆 | 久久一二区 |