RAG可以用來做什么?——AIGC催生的產(chǎn)物
2020年,RAG的概念被提出;然后2022年ChatGPT之類的大模型開始興起,RAG在知道大模型的生成上起到了不小的作用。這篇文章,我們來了解下RAG的基本原理和使用場景。
AIGC爆火以后,應(yīng)運而生的RAG到底都是什么?為什么會有這些產(chǎn)物呢?
拿大語言模型舉例來說,自身的能力很強大,但也存在一定的弊端,比如輸出的內(nèi)容太空太泛、輸出的內(nèi)容格式不符合預期、數(shù)據(jù)過時、在專業(yè)領(lǐng)域問題胡編亂造等情況,為了克服以上問題,第一種方式是微調(diào),不過生成模型依賴內(nèi)在知識,即使做了微調(diào),還是無法解決幻覺問題。此外,實際場景中,信息、政策、數(shù)據(jù)實時都在更新,除非對模型進行高頻的微調(diào),否則模型的訓練速度永遠趕不上外部信息更新的速度,而高頻微調(diào)成本就太高了。
在2020年,檢索增強生成RAG(Retrieval-Augmented Generation)的方法被提出,其主要作用類似搜索引擎,利用外部知識庫,找到與用戶提問最相關(guān)的知識或歷史對話,結(jié)合原始問題,創(chuàng)造信息豐富的Prompt,指導大模型(LLM)生成更準確的輸出。
一、定義
是結(jié)合了檢索技術(shù)與生成式人工智能的技術(shù)框架,旨在利用外部知識增強模型的回答準確性和上下文相關(guān)性。適用于需要高準確性、領(lǐng)域知識和動態(tài)信息的場景。
二、解決的問題
1. 知識更新不及時
數(shù)據(jù)過時,對于大模型訓練完成之后發(fā)生的最新事情,大模型難以給出答案。
2. 容易產(chǎn)生幻覺
如捏造事實、不按用戶指令生成回答。
出現(xiàn)幻覺的原因:訓練知識的偏差(海量數(shù)據(jù)源中含錯誤信息)、過度泛化的推理(把普通的模式推理用到了某些特定場景,以偏概全)、理解存在局限性(問題太難,在一些需要深入理解與復雜推理的任務(wù)重可能出錯)、缺乏專業(yè)領(lǐng)域的知識(沒學過,瞎編一個答案 )。
3. 數(shù)據(jù)安全問題
大語言模型沒有企業(yè)內(nèi)部數(shù)據(jù)和用戶數(shù)據(jù),如內(nèi)部數(shù)據(jù)上傳至云端進行存儲和處理,就可能存在數(shù)據(jù)泄露的風險,RAG就不需要將自有數(shù)據(jù)上傳至云端。
三、RAG基本原理
1.RAG原理如下圖:
基本流程步驟:知識庫準備、嵌入模型、存入向量數(shù)據(jù)庫、查詢檢索、生成回答。
第一步:文檔分塊
知識庫可以是任意文本或集合,文檔內(nèi)容可能非常大,需要將長文本切分為多個小塊/段落進行存儲,以便高效處理和檢索信息(另外一個原因是在向量化階段,常見的文本編碼模型如Bert都有最長的文本輸入限制)。需注意分塊的尺寸,若分塊太小,雖然查詢更精準,但所需的召回時間更長;若分塊太大,則會影響查詢精準度。
第二步:嵌入模型
將分塊后的文本轉(zhuǎn)化為向量形式,就能通過簡單的計算向量之間的差異性,來識別語義上相近的句子。
第三步:存入向量數(shù)據(jù)庫
將嵌入模型生成的向量數(shù)據(jù)存儲至向量數(shù)據(jù)庫。其優(yōu)勢主要是能根據(jù)數(shù)據(jù)向量的相似度,快速定位、檢索數(shù)據(jù),實現(xiàn)很多傳統(tǒng)數(shù)據(jù)庫無法實現(xiàn)的功能,如在電影中搜索浪漫的片段。
第四步:用戶查詢、檢索
用戶輸入的問題會被輸入到嵌入模型中,進行向量化處理,然后系統(tǒng)會從向量數(shù)據(jù)庫中搜索與問題向量語義上相近的知識內(nèi)容或歷史對話記錄并返回,這就是檢索增強。
第五步:融合、生成回答
將上一步檢索到的相關(guān)內(nèi)容與用戶的提問相融合,構(gòu)建出一個Prompt(提示詞),將其輸入到大模型(LLM)中,由大模型(LLM)生成最終的結(jié)果并返回。
四、RAG應(yīng)用場景
1.問答系統(tǒng)
RAG根據(jù)檢索到的相關(guān)信息生成準確答案,幫助人員更快獲取所需信息。如搭建企業(yè)內(nèi)部知識庫,新員工培訓手冊查詢、公司規(guī)章制度查詢等。
2.智能客服系統(tǒng)
RAG可以結(jié)合產(chǎn)品資料知識庫、聊天記錄、用戶反饋等數(shù)據(jù),自動為用戶提供更精準的回答。
3.個性化系統(tǒng)推薦
RAG可以檢索用戶的購買記錄、瀏覽行為、個人偏好等數(shù)據(jù),生成個性化的產(chǎn)品和服務(wù)推薦,提高用戶滿意度和轉(zhuǎn)化率。
4.智能數(shù)據(jù)分析
RAG可以結(jié)合外部數(shù)據(jù)源,如數(shù)據(jù)庫、API、文件等,為用戶提供更便捷的數(shù)據(jù)分析服務(wù)。傳統(tǒng)企業(yè)的數(shù)據(jù)分析主要靠數(shù)據(jù)分析師,每天需寫大量的SQL語句進行查詢,而在RAG支持下,企業(yè)員工能以自然對話的方式快速獲取數(shù)據(jù)。如門店店長直接用語音對話,“請幫我找出上周銷量排名前10,但本周銷量下滑最快的品類”,系統(tǒng)即可直接給出結(jié)果。
5.自動化文檔處理
利用RAG自動化文檔處理流程,如自動生成合同、撰寫周報、總結(jié)會議紀要等,節(jié)省時間與人力成本。
五、一些拓展
1. RAG和知識圖譜的結(jié)合
以提升數(shù)據(jù)質(zhì)量為前提時:可建立知識圖譜,來解決。嵌入模型雖然簡單,但無法有效捕捉實體之間的復雜關(guān)系和層次結(jié)構(gòu),所以導致傳統(tǒng)RAG在面對復雜問題時,特別吃力。如用戶提問“《跨越鴻溝》這本書的主旨是什么”傳統(tǒng)RAG技術(shù)肯定是回答不出來的,但知識圖譜可以做到,因為利用知識圖譜對數(shù)據(jù)集建立索引時,會提取實體與實體之間的關(guān)系,這樣就構(gòu)建一種全局性的優(yōu)勢,從而提升RAG的精準度。
但知識圖譜雖然強大,可惜成本太高,會大幅提升Token的消耗。
2. RAG與AI Agent
AI Agent本身和Rag是相輔相成的關(guān)系。Rag系統(tǒng)為AI Agent提供長期記憶能力,而AI Agent的規(guī)劃與反思也會為Rag系統(tǒng)提供非常好的規(guī)劃管理和路由能力。
Prompt與RAG的分享就到這里了,希望對你有所幫助,歡迎一起交流學習。
本文由 @不知名產(chǎn)品露 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)作者許可,禁止轉(zhuǎn)載
題圖來自Unsplash,基于CC0協(xié)議
該文觀點僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺僅提供信息存儲空間服務(wù)
- 目前還沒評論,等你發(fā)揮!