RAG檢索增強生成
一種結合了檢索與生成能力的人工智能技術,主要用于增強大型語言模型在特定任務中的表現。
含義
RAG 將檢索系統與生成模型相結合,當接收到一個查詢或問題時,模型首先通過檢索模塊從大規模知識庫中尋找與查詢相關的信息片段,然后將檢索到的相關信息作為額外輸入傳遞給生成模型,使得生成模型在生成回答時不僅依賴于自身的內部知識,還能利用實時檢索到的外部知識資源,從而豐富其輸出內容,提高答案的準確性、全面性和時效性。
具體流程
檢索:RAG 流程的第一步,從預先建立的知識庫中檢索與問題相關的信息,為后續的生成過程提供有用的上下文信息和知識支撐。
增強:將檢索到的信息用作生成模型,即大語言模型的上下文輸入,以增強模型對特定問題的理解和回答能力,將外部知識融入生成過程中,使生成的文本內容更加豐富、準確和符合用戶需求。
生成:RAG 流程的最后一步,生成器會利用檢索到的信息作為上下文輸入,并結合大語言模型來生成符合用戶需求的回答。
優勢
RAG 模型能夠利用大規模知識庫,解決了 LLMs 存儲容量有限、知識更新滯后、領域知識不足等問題,增強了模型的泛化能力、知識新鮮度和領域適應性。在開放式問答、專業領域問答、對話系統等場景中展現出顯著優勢。
架構階段
索引:通過內容分塊、向量化等方式,生成索引并存入向量數據庫。分塊能有效提升檢索效率和緩解上下文長度限制,向量化有助于大模型建立語義理解。
檢索:從知識庫中召回相關內容塊,檢索方式不局限于關鍵詞檢索和向量檢索,最終是多種檢索方式的結合和互補,混合檢索結束后,通過 Rerank 機制對檢索結果做整合和排序,生成最終前 n 個匹配度最高的內容塊。
出現與發展
RAG 由 Facebook AI Research(FAIR)團隊于 2020 年首次提出,在 ChatGPT 發布后(2022 年 12 月)逐漸火起來,成為大模型應用中的熱門方案。