RAG(Risk Assessment Grid)是一種透過外部知識來源增強現有大型語言模型(LLM)的方法,以提供和上下文更相關的答案。在RAG中,檢索組件獲取額外的信息,響應基於特定來源,然後將這些信息輸入到LLM提示中,以使LLM的響應基於這些信息(增強階段)。與其他技術(例如微調)相比,RAG更經濟。它也有減少幻覺的優勢,透過基於這些資訊(增強階段)提供額外的脈絡──你RAG成為今天LLM任務的(如推薦、文字擷取、情緒分析等)的流程方法。
如果我們進一步分解這個想法,根據使用者意圖,我們通常會查詢一個向量資料庫。向量資料庫使用連續的向量空間來捕捉兩個概念之間的關係,使用基於接近度的搜尋。
在向量空間中,無論是文字、圖像、音訊或任何其他類型的信息,都被轉換為向量。向量是資料在高維空間的數值表示。每個維度對應資料的一個特徵,每個維度中的值反映了該特徵的強度或存在。 透過向量表示,我們可以對資料進行數學運算、距離計算和相似度比較等操作。不同維度對應的值反映了該特徵的強度或存在與否。 以文字資料為例,可以將每個文件表示為向量,其中每個維度表示一個單字在文件中的出現頻率。這樣,兩個文件可以透過計算它們的向量之間的距離來
在資料庫中進行基於接近度的搜索,涉及並使用另一個向量查詢這些資料庫,並蒐索在向量空間中「接近」它的向量。向量之間的接近度通常由距離測量來決定,例如歐幾里德距離、餘弦相似度或曼哈頓距離。向量之間的接近度通常由距離測量來決定,例如歐幾里德距離、餘弦相似度或曼哈頓距離。
當您在向資料庫中執行搜尋時,您提供了一個系統將其轉換為向量的查詢。然後資料庫計算該查詢向量與資料庫中已儲存的向量之間的距離或相似性。接近查詢向量的向量(根據所選量測量)被認為是最相關的結果。這些最接近查詢向量的向量(根據所選度量)被認為是最相關的結果。
基於接近度的搜尋在向量資料庫中特別強大,適用於推薦系統、資訊檢索和異常檢測等任務。
這種方法使系統能夠更直觀地運行,並透過理解資料中的上下文和深層意義,更有效地回應使用者查詢,而不僅僅依賴於表面匹配。
然而,在應用程式連接到資料庫進行進階搜尋方面存在一些限制,例如資料品質、處理動態知識的能力以及透明度。
根據文檔的大小,RAG大致分為三類:如果文檔很小,可以上下文存取;如果文檔很大(或有多個文件),在查詢時產生較小的區塊,這些區塊被索引並用於回應查詢。
儘管取得了成功,RAG也有一些缺點。
衡量RAG表現的兩個主要指標是困惑度和幻覺,困惑度代表在文本生成過程中同等可能的下一個詞的選擇數量。即語言模型在其選擇上的「困惑」程度。幻覺是AI做出的不真實或想像的陳述。
雖然RAG有助於減少幻覺,但它並沒有消除它。如果您有一個小而簡潔的文檔,您可以減少困惑度(因為LLM的選擇很少),並減少幻覺(如果您只詢問文檔中的內容)。當然,另一方面是,一個單一的小文檔會導致一個微不足道的應用。對於更複雜的應用,您需要一種提供更多上下文的方法。
例如,考慮單字「bark」-我們至少有兩個不同的上下文:
樹的上下文:「橡樹粗糙的樹皮保護它免受寒冷。 ##提供更多上下文的一種方法是將RAG與知識圖譜結合(一個GRAPHRAG)。
在知識圖譜中,這些單字將與它們相關的上下文和意義連接起來。例如,「bark」將與代表「樹」和「狗」的節點連接。其他連接可以指示常見動作(例如,樹的「保護」、狗的「製造噪音」)或屬性(例如,樹的「粗糙」、狗的「響亮」)。這種結構化資訊允許語言模型根據句子中的其他單字或對話的整體主題選擇適當的意義。
在接下來的部分中,我們將看到RAG的限制以及GRAPHRAG如何解決這些限制。
原文標題:Understanding GraphRAG – 1: The challenges of RAG
##原文作者:ajitjaokar
以上是理解GraphRAG(一):RAG的挑戰的詳細內容。更多資訊請關注PHP中文網其他相關文章!