曠野之間20 - Google 研究的推測 RAG

為什么選擇 RAG

新興能力

直到最近,人們發現 LLM 具有新興能力,即在與用戶或任務交互過程中出現的意外功能。

這些功能的示例包括:

解決問題:?LLM 可以利用其語言理解和推理能力,為未經過明確培訓的任務提供富有洞察力的解決方案。
適應用戶輸入:?LLM 可以根據特定用戶輸入或上下文定制其響應,從而在交互中展現一定程度的個性化。

曠野之間20 - Google 研究的推測 RAG

通過對上下文的理解,?LLM 可以生成與給定上下文相關且適當的響應,即使提示中沒有明確說明。

新興能力現象促使組織探索未知的大語言模型功能。然而,最近的一項研究推翻了這一概念,揭示了看似新興的能力實際上是大語言模型對給定背景的強烈反應。

曠野之間20 - Google 研究的推測 RAG

指導和上下文參考

LLM 在推理時對指令反應良好,當提示包含上下文參考數據時,表現優異。大量研究已通過實證證明,LLM 優先考慮推理時提供的上下文知識,而不是經過微調的模型數據。

情境學習

上下文學習是模型根據用戶或任務提供的特定上下文調整和改進其響應的能力。

通過考慮模型的運行環境,該過程使模型能夠生成更相關、更一致的輸出。

幻覺

為大語言模型 (LLM) 提供推理時的上下文參考,從而實現上下文學習,可以減輕幻覺。

曠野之間20 - Google 研究的推測 RAG

檢索增強生成 (RAG) 將大型語言模型 (LLM) 的生成能力與外部知識源相結合,以提供更準確、最新的響應。

RAG 的最新進展重點是通過迭代 LLM 細化或通過對 LLM 進行額外指令調整獲得的自我批評能力來改善檢索結果。

推測性 RAG

下圖展示了 RAG 的不同方法,包括:

  1. 標準 RAG,
  2. 自我反思 RAG &
  3. 校正 RAG。

標準 RAG:據 Google 稱,?標準 RAG 將所有文檔合并到提示中,這會增加輸入長度并減慢推理速度。原則上這是正確的,但存在使用摘要、重新排序和請求用戶反饋的變體。

對于分塊策略以及如何優化相關塊內上下文的分割也進行了深入研究。

自我反思 RAG需要對通用語言模型 (LM) 進行專門的指令調整,以生成用于自我反思的特定標簽。

校正 RAG使用外部檢索評估器來改進文檔質量。該評估器僅關注上下文信息,而不增強推理能力。

推測性 RAG利用更大的通用 LM 來有效地驗證由較小的專業 LM 并行生成的多個 RAG 草稿。

每個草稿都是從檢索到的文檔的不同子集生成的,提供對證據的不同視角,同時最小化每個草稿的輸入標記數量。

曠野之間20 - Google 研究的推測 RAG

Speculative RAG 是一個框架,它使用更大的通用語言模型來有效地驗證由較小的、專門的提煉語言模型并行生成的多個 RAG 草稿。

每個草稿都基于檢索到的文檔的不同子集,提供不同的觀點并減少每個草稿的輸入標記數。

研究表明,這種方法可以增強理解力,并減輕長語境中的位置偏差。通過將起草工作委托給較小的模型,并讓較大的模型執行一次驗證,Speculative RAG 可以加速 RAG 過程。

實驗表明,Speculative RAG 在降低延遲的情況下實現了最先進的性能。

與傳統 RAG 系統相比,準確率提高 12.97%,延遲降低 51%。

如何

這個新的 RAG 框架使用較小的專業 RAG 起草器來生成高質量的草稿答案。

每個草稿均來自檢索到的文檔的不同子集,從而提供不同的觀點并減少每個草稿的輸入標記數。

通用 LM 可與 RAG 起草器配合使用,無需額外調整。

它驗證并將最有希望的草稿整合到最終答案中,增強對每個子集的理解,并減輕中間迷失現象。

谷歌認為,通過讓規模較小的專業 LM 處理起草,而規模較大的通用 LM 則并行對起草進行單次、公正的驗證,這種方法可以顯著加快 RAG 的速度。

在四個自由形式問答和閉集生成基準上進行的大量實驗證明了該方法的卓越有效性和效率。

主要考慮因素

  1. 這項研究很好地說明了小型語言模型如何在采用模型編排的更大框架中使用。
  2. SLM 因其推理能力而被充分利用,而這正是它們被專門創建的原因。
  3. SLM 是此場景的理想選擇,因為此實現本質上不需要知識密集型。相關和上下文知識在推理時注入。
  4. 該框架的目標是優化令牌數量,從而降低安全成本。
  5. 與傳統 RAG 系統相比,延遲減少了 51%。
  6. 準確率提高高達 12.97%。
  7. 避免對模型進行微調。
  8. 多個 RAG 草稿由較小的、專門的語言模型并行生成。
  9. 這種規模較小、專門化的 RAG 模型擅長對檢索到的文檔進行推理,并能快速生成準確的響應。這讓人想起經過訓練具有出色推理能力的 SLM Orca-2 和 Phi-3。
  10. 使用 Mistral 7B SLM 作為 RAG 牽引機取得了最佳效果。
  11. 以及驗證器 Mixtral 8x7B。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/44882.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/44882.shtml
英文地址,請注明出處:http://en.pswp.cn/web/44882.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

js的原型鏈

原型鏈: 1.如何構成原型鏈? 2.原型鏈上屬性的增刪改查。 3.絕大多數對象的最終都會繼承自Object.prototype (var obj Object.create(null或者undefined)沒有原型)。 4.Object.create(原型)。 構成原型鏈和操作原型鏈屬性: //最頂的原型是Object.pro…

性能優化篇:SQL數據庫查表速度優化

SQL數據庫查詢的性能優化是確保數據庫能夠快速響應和高效處理請求的關鍵。以下是一些常見的SQL數據庫查詢性能優化方法: 索引優化: 創建適當的索引:為經常在WHERE子句中使用的列、JOIN操作涉及的列以及排序操作涉及的列創建索引。避免過多的索引:雖然索引可以提高查詢速度,…

python的字符串

字符串 簡單操作 創建 利用 ‘ ’ 或 “ ” 將字符或數字包裹起來的都為字符串 a"你好" 格式化字符串 元組的字符格式化 字符串格式化函數 srt.format() f格式化 方法 split()//指定分割符經行分割 strip()//指定移除字符頭尾的字符 join()//指定序列中的字符連接成新…

【Perl】Perl 語言入門

1. Perl語言介紹 Perl 是一種高級、解釋型、動態編程語言,由Larry Wall在1987年發布。Perl 以其強大的文本處理能力而聞名,特別是在處理報告生成、文件轉換、系統管理任務等方面。它吸收了C、Shell腳本語言、AWK、sed等語言的特性,并加入了大…

Go:常量運算符流程控制

目錄 一、常量 1.1 常量基本定義 1.2 常量組的定義 1.3 常量枚舉 二、運算符 2.1 算數運算符 2.2 關系運算符 2.3 邏輯運算符 2.4 位運算符 2.5 賦值運算符 2.6 指針運算符 2.7 運算符優先級 三、流程控制 3.1 if-else 條件語句 3.2 switch-case語句 3.3 for 循…

5、 測試

這里寫目錄標題 1、自動化測試簡介(1)自動化測試是什么(2)為什么要寫測試測試節約你的時間發現錯誤,預防錯誤測試使得代碼更有吸引力 2、基礎測試策略3、開始寫第一個測試(1)首先得有個bug&…

Not Invented Here 不是在這里發明的 / Proudly found elsewhere 自豪地在其他地方找到

注: 機翻,未校對。 兩篇關于創新管理的小文章 Not Invented Here 不是在這里發明的 In the history of organizational success, the enterprises that dominate tend to flawlessly execute on ideas that were created elsewhere. Examine just abo…

智慧水利解決方案:從理論到實踐的全面跨越,展示其在水資源管理、水災害預警、水生態保護等方面的創新應用

目錄 一、引言:智慧水利的時代背景與意義 二、智慧水利的理論框架與技術體系 1、理論框架 2、技術體系 三、智慧水利在水資源管理中的應用 1、水資源優化配置 2、水量水質協同管理 四、智慧水利在水災害預警中的應用 1、洪水預警與應急響應 2、干旱監測與評…

git 創建分支--命令行

在Git中創建分支是一個相對簡單且重要的操作,它允許開發者在不影響主代碼庫的情況下進行開發或修復工作。以下是創建Git分支的步驟: 一、基本步驟 打開命令行終端: 首先,需要打開命令行終端(在Windows上可以是CMD、Po…

Mediapipe-姿態估計實例

Mediapipe簡介 Mediapipe 是由 Google Research 開發的一款開源框架,旨在幫助開發者輕松地構建、測試和部署復雜的多模態、多任務的機器學習模型。它特別擅長于實時處理和分析音頻、視頻等多媒體數據。以下是 Mediapipe 的一些關鍵特點和組件: 關鍵特點…

基于微信小程序的音樂播放平臺

基于微信小程序的音樂播放平臺 音樂播放小程序項目簡介技術棧功能模塊項目流程系統E-R圖項目頁面 音樂播放小程序 項目簡介 微信音樂小程序旨在提供一個簡潔高效的音樂播放平臺,用戶可以方便地搜索、播放和收藏自己喜歡的音樂。整個項目采用前后端分離的架構&…

WIN10開機突然,過一會就自動重啟藍屏DRIVER_IRQL_NOT_LESS_OR_EQUAL

環境: Win10 專業版 DELL7080 問題描述: WIN10開機突然,過一會就自動重啟藍屏DRIVER_IRQL_NOT_LESS_OR_EQUAL 事件日志 解決方案: 1.找到MEMORY.DMP文件內容,分析一下 Microsoft (R) Windows Debugger Version 10…

主機安全-開源HIDS字節跳動Elkeid安裝使用

目錄 概述什么是HIDSHIDS與NIDS的區別EDR、XDR是啥? Elkeid架構Elkeid Agent && Agent centerElkeid DriverElkeid RASPElkeid HUBService DiscoveryManager安裝數據采集規則&告警 參考 概述 什么是HIDS HIDS( host-based intrusion detec…

使用Gitee倉庫鏡像管理功能實現Gitee與Github 雙向同步

進入你所需要同步的倉庫,點擊「管理」->「鏡像倉庫管理」,點擊「添加鏡像」選項; 如果你的Gitee賬號還沒有綁定過 GitHub 帳號,先根據彈窗的提示綁定 GitHub 帳號; 添加鏡像時候,在「鏡像方向」中選擇…

二次開發源碼 借貸系統uniapp/借貸認證系統/小額信貸系統/工薪貸APP/資金貸系統h5

前端:UNIAPP 后端:ThinkPHP 數據庫: Mysql 前端使用的uniapp 可以打包APP H5 小程序 系統提供了完善的網絡借貸體系,為金融中介平臺提供從獲客到貸后管理全流程服務,解決了借貸手續繁瑣、流程緩慢等問題 此源碼為運營…

ES6操作符使用總結

最近做新項目時候用到了ES6 添加的一些運算符,使用起來很方便,簡化了代碼,增強了代碼容錯性。使用感不錯,下面做了總結,本文也會持續維護。 1. !!props.useDefaultColor 這個技巧的作用是將任何 JavaScript 值轉換為…

管理Linux本地用戶和組

什么是用戶 用戶賬戶在可以運行命令的不同人員和程序之間提供安全界限。 在Linux系統中,系統通過分配唯一的標識號(用戶ID或UID)來區分不同的用戶帳戶。 在Linux系統中,用戶帳戶有以下三種主要類型: 超級用戶 負責…

分布式一致性算法:Raft學習

分布式一致性算法:Raft學習 1 什么是分布式系統? 分布式系統是由一組通過網絡進行通信、為了完成共同的任務而協調工作的計算機節點組成的系統。這些節點可能位于不同的物理位置,但它們協同工作以提供一個統一的計算平臺或服務。分布式系統…

對于復雜的數學模型,怎樣利用 MATLAB 的優化工具箱進行準確的參數估計和模型擬合?

要利用MATLAB的優化工具箱進行準確的參數估計和模型擬合,可以按照以下步驟進行: 定義模型:根據問題的需求和數學模型的形式,定義好模型的數學表達式。 收集數據:收集實際觀測數據,這些數據將用于擬合模型和…

Ubuntu linux安裝新版本go

加速網站:GOPROXY.IO - A Global Proxy for Go Modules 下載地址:All releases - The Go Programming Language Ubuntu jammy版本里面自帶的go版本較低,build ollama的時候報錯,于是升級go 升級操作 從上面下載地址找到自己需…